The Cost of Virtualization

Virtualization can be implemented in many different ways. It can be done with and without hardware support. The virtualized operating system can be expected to be changed in preparation for virtualization, or it can be expected to work unchanged. Regardless, software developers must strive to meet t...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:ACM queue 2008-01, Vol.6 (1), p.28
1. Verfasser: Drepper, Ulrich
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Virtualization can be implemented in many different ways. It can be done with and without hardware support. The virtualized operating system can be expected to be changed in preparation for virtualization, or it can be expected to work unchanged. Regardless, software developers must strive to meet the three goals of virtualization spelled out by Gerald Popek and Robert Goldberg: fidelity, performance, and safety. People may make compromises for each of the goals. This article is about the compromises developers have to be aware of when dealing with various types of virtualization. Ignorance of these issues can mean that a program's execution speed is unnecessarily reduced. To avoid significant performance losses, certain optimizations, which always have been beneficial, become more urgent. Especially important is optimizing memory handling, which is little understood today. It is the responsibility of the developer to select an appropriate implementation or, failing that, choose a programming language that is better suited for high-performance programming.
ISSN:1542-7730
1557-7341
DOI:10.1145/1348583.1348591