Der Autor dieser Arbeit ist langjähriger Angestellter bei einem Münchener IT-Dienstleister, der Afontis IT+Services GmbH. Im Rahmen seiner Tätigkeit als IT Business Manager konzeptioniert, implementiert und administriert er IT-Infrastrukturen auf Basis der Microsoft-, Citrix- und VMware-Produktpalette. Während seiner Arbeit mit den verschiedensten Kunden wurde er immer wieder mit der Frage konfrontiert, inwieweit eine IT-Investition für das jeweilige Unternehmen als wirtschaftlich sinnvoll erachtet werden kann. Das Studium der Wirtschaftsinformatik trug dazu bei, den Aspekt der Wirtschaftlichkeit einer IT-Investition bearbeiten und eine Antwort auf diese Fragestellung finden zu können. Vor allem beim Einsatz von Virtualisierungstechnologien wird häufig von den positiven Begleiterscheinungen in Form von Kostenersparnis, der verbesserten Wirtschaftlichkeit und des frühzeitigen Return On Investment (ROI) gesprochen. Diese Aussagen auf ihre Gültigkeit hin zu überprüfen und den Grad der Wirtschaftlichkeit konkret aufzuzeigen, ist die Motivation, die den Autor zu der Wahl des Themas dieser Arbeit veranlasste.
Inhaltsverzeichnis
Danksagung
Ehrenwörtliche Erklärung
Abbildungsverzeichnis
Tabellenverzeichnis
Abkürzungsverzeichnis
1. Einführung
1.1 Wahl der Thematik
1.2 Ziel und Aufbau der Diplomarbeit
1.3 Abgrenzung
2. Virtualisierung
2.1 Grundlagen der Virtualisierung
2.1.1 Was bedeutet Virtualisierung?
2.1.2 Historie der Virtualisierung
2.1.3 Zweck und Ziele der Virtualisierung
2.1.4 Herausforderungen bei der Virtualisierung der x86-Architektur
2.1.5 Emulation
2.2 Formen der Virtualisierung
2.2.1 Software-basierte Technologien
2.2.1.1 Betriebssystem-Virtualisierung
2.2.1.2 Paravirtualisierung
2.2.1.3 Native Virtualization
2.2.2 Hardware-unterstützte Technologien
2.3 Weitere Virtualisierungsformen
2.3.1 Applikationsvirtualisierung
2.3.2 Desktopvirtualisierung
3. Herausforderungen von Wirtschaftlichkeitsanalysen
3.1 Die IT-Investition
3.2 Kosten- und Nutzenaspekte von IT-Systemen
3.2.1 Der Kostenaspekt
3.2.2 Der Nutzenaspekt
3.3 Der Begriff der Wirtschaftlichkeit
3.4 Überblick der Methoden zur Wirtschaftlichkeitsanalyse von IT-Investitionen
4. Fallstudie: Virtualisierung in einem pharmazeutischen Unternehmen
4.1 Das Umfeld des zu untersuchenden Unternehmens
4.2 Analyse der Motivation
4.3 Analyse der Wirtschaftlichkeit
4.3.1 Attribute der IT-Investition
4.3.2 Wahl der Methode zur Wirtschaftlichkeitsanalyse
4.3.3 Total Cost of Ownership
4.3.3.1 Das TCO-Modell
4.3.3.2 Vorgehensweise für die Analyse
4.3.3.3 Rahmenbedingungen für die Analyse
4.3.3.4 Durchführung der Analyse
4.3.3.5 Ergebnisse der Analyse
4.3.4 Weitere Wirtschaftlichkeitskennzahlen
4.4 Analyse der Potentiale
4.4.1 Virtualisierung
4.4.2 Virtual Desktop Infrastructure
5. Summary
6. Glossar
7. Anhang
8. Literaturverzeichnis
Danksagung
An dieser Stelle möchte ich mich bei allen Personen bedanken, die in irgendeiner Form zur Entstehung dieser Diplomarbeit beigetragen haben.
An erster Stelle steht mein Arbeitgeber, die Afontis IT+Services GmbH, die es mir überhaupt erst ermöglichte, das Studium der Wirtschaftsinformatik anzutreten und auch abzuschließen. Spezieller Dank gilt dabei dem Geschäftsführer, Herrn Thomas Klimmer. Einen besseren Chef als ihn kann ich mir nicht vorstellen. Noch dazu wurde er in unserer langjährigen Zusammenarbeit zu einem guten Freund, der mir stets mit Rat und Tat zur Seite stand, mir meine Defizite aufzeigte, meine Fähigkeiten förderte und eine unermüdliche Geduld mit mir bewies. Ohne ihn wäre das alles nicht möglich gewesen. Ohne ihn würde ich meinen Job weniger gut erledigen. Danke Dir, Thomas!
Darüber hinaus gebührt auch all meinen Kollegen tiefster Dank, da sie mich während der ganzen Zeit auf jede erdenkliche Art und Weise unterstützten. Sie verziehen mir Flüchtigkeitsfehler und Konzentrationsschwäche, Konfusion und Gereiztheit. Vielen Dank Euch allen, ihr seid ein Spitzenteam und meine zweite Familie.
Des Weiteren möchte ich einem langjährigen Kunden, ein mittelständisches produzierendes Unternehmen, danken. Es ermöglichte mir, das Projekt der Virtualisierung umfassend zu analysieren und wirtschaftlich zu bewerten. Seine uneingeschränkte Kooperation verhalf mir zu diesem Werk. Ich hoffe, es entspricht seinen Vorstellungen und erfüllt seine Erwartungen. Vielen herzlichen Dank.
Fast zuletzt verdient mein engster Freundeskreis gebührenden Dank! Sie unterstützten und motivierten mich in guten wie in schlechten Zeiten. Die Motivation zum Studium fand seinen Ursprung in dieser Clique. Sie blieben mir bis zum beschwerlichen Ende und darüber hinaus treu. Ihr seid meine erste Familie! Ich darf mich glücklich schätzen, solche Freunde zu haben. Semper Fi!
Zu guter Letzt danke ich an dieser Stelle meiner langjährigen Freundin Barbara Schmidt, die mich stets begleitet, in meinen Ambitionen unterstützt, mich in schweren Zeiten motiviert und fast bis zum Ende an meiner Seite war. Leider kann ich den Moment des Triumphs nicht mehr mit ihr teilen. Unsere Beziehung hielt den Be-lastungen nicht stand.
Ehrenwörtliche Erklärung
Hiermit versichere ich, dass die vorliegende Arbeit von mir selbstständig und ohne unerlaubte Hilfe angefertigt worden ist, insbesondere dass ich alle Stellen, die wörtlich oder annähernd wörtlich aus Veröffentlichungen entnommen sind, durch Zitate als solche gekennzeichnet habe. Ich versichere auch, dass die von mir eingereichte schriftliche Version mit der digitalen Version übereinstimmt. Weiterhin erkläre ich, dass die Arbeit in gleicher oder ähnlicher Form noch keiner anderen Prüfungsbehörde vorgelegen hat. Ich erkläre mich damit einverstanden, dass die Arbeit der Öffentlichkeit zugänglich gemacht wird. Ich erkläre mich damit einverstanden, dass die Digitalversion dieser Arbeit zwecks Plagiatsüberprüfung auf die Server externer Anbieter hoch geladen werden darf. Die Plagiatsprüfung stellt keine Zurverfügungstellung für die Öffentlichkeit dar.
Abbildung in dieser Leseprobe nicht enthalten
Abbildungsverzeichnis
Abbildung 1 - Konzept der Virtualisierung mittels VMM und virtualisierter Hardware
Abbildung 2 - Prioritätsstufen der x86-Architektur im sog. Protected Mode
Abbildung 3 - x86-Befehlssatzarchitektur ohne Virtualisierung
Abbildung 4 - Type-2 VMM
Abbildung 5 - Hybrid-VMM
Abbildung 6 - Type-1 VMM
Abbildung 7 - Betriebssystem-Virtualisierung
Abbildung 8 - Der Paravirtualisierungsansatz für x86-Instruktionen
Abbildung 9 - Paravirtualisierung
Abbildung 10 - Hosted Architecture
Abbildung 11 - Bare-Metal (Hypervisor) Architecture
Abbildung 12 - Full Virtualization using
Abbildung 13 - Hardware-unterstützer Virtualisierungsansatz bei x86-Architekturen
Abbildung 14 - Applikationsvirtualisierung mit Citrix XenApp
Abbildung 15 - Wandel der IT-Strategie nach Galliers
Abbildung 16 - Kosten- und Nutzenaspekte der Wirtschaftlichkeit
Abbildung 17 - Überblick der VI bestehend aus Storage, VMs und Hosts
Abbildung 18 - Möglicher Wertbeitrag durch den Einsatz der
Abbildung 19 - Kostenkategorien des TCO-Modells
Abbildung 20 - TCO-Vergleich: VI zu physischer Infrastruktur
Abbildung 21 - kumulierter Kostenverlauf: VM zu physischen Servern
Abbildung 22 - Kostenverlauf des Stromverbrauchs
Abbildung 23 - TCO-Vergleich ERP-System: VI zu physischer Infrastruktur
Abbildung 24 - Vielfältige Einsatzmöglichkeiten durch Virtualisierung auf dem Desktop
Abbildung 25 - Zeitstrahl Virtualisierung
Abbildung 26 - Kosten von IT-Diensten und -Systemen
Abbildung 27 - Direkte und indirekte Kosten im TCO-Modell der Gartner-Group
Abbildung 28 - Nutzen von IT-Systemen und -Diensten
Abbildung 29 - Unternehmensinterne IT-Support Datenbank
Abbildung 30 - Kennzahlen und Faktoren zur Bewertung der TCO
Abbildung 31 - Kostenaufstellung anhand Belegdaten für die IT-Investition
Abbildung 32 - Anschlusswerte Hardwarekomponenten 2008, physische Serverlandschaft
Abbildung 33 - Anschlusswerte Hardwarekomponenten 2009, virtuelle Serverlandschaft
Abbildung 34 - Anschlusswerte Hardwarekomponenten 2010, virtuelle Serverlandschaft
Abbildung 35 - Abschreibungstabelle für VI
Abbildung 36 - Entscheidungsraster für Methodenwahl
Abbildung 37 - Virtual Infrastructure Client des untersuchten Unternehmens
Abbildung 38 - TCO Auswertung 2009, virtuelle Infrastruktur
Abbildung 39 - TCO Auswertung 2009, physische Infrastruktur
Abbildung 40 - TCO Auswertung 2010, virtuelles ERP
Abbildung 41 - TCO Auswertung 2010, physisches ERP
Abbildung 42 - Entwicklung der IT-Kosten seit
Abbildung 43 - Tätigkeitsbericht zum Projekt Virtualisierung per IT-Support Datenbank
Tabellenverzeichnis
Tabelle 1 - Supported Uses of Hardware Instruction Set Virtualization
Tabelle 2 - Änderung von Eigenschaften der IT-Investitionen im Lauf der Zeit
Tabelle 3 - Vergleich formaler und situationsabhängiger Methoden
Tabelle 4 - Kennzahlen des untersuchten Unternehmens
Tabelle 5 - VI Ressourcen
Tabelle 6 - Ziele des untersuchten Unternehmens nach Kategorien
Tabelle 7 - Gegenüberstellung TCO: VI zu physischer Infrastruktur
Tabelle 8 - kumulierter Kostenverlauf: VM zu physischen Servern
Tabelle 9 - Kostenverlauf des Stromverbrauchs
Tabelle 10 - Zielerreichung des untersuchten Unternehmens nach Kategorien
Tabelle 11 - TCO-Vergleich ERP-System: VI zu physischer Infrastruktur
Abkürzungsverzeichnis
Abbildung in dieser Leseprobe nicht enthalten
1. Einführung
“Die [IT-]Branche ist in ihre post-technologische Periode eingetreten, in der die Technologie an sich nicht mehr länger zentral ist, sondern der Wert, den sie für das Unternehmen erbringt.”[1]
Das Zitat spiegelt das Paradoxon kontemporärer IT-Technologien wider. Einerseits ermöglichen Sie den Unternehmen eine nie dagewesene Flexibilität, um auf sich ständig ändernde Wettbewerbsbedingungen zu reagieren und die Unternehmensstrategie mittels IT positiv zu unterstützen, andererseits fällt es zunehmend schwerer, deren tatsächlichen Wertbeitrag monetär zu beziffern und damit die Sinnhaftigkeit und Existenz-berechtigung der IT zu untermauern. IT-Investitionen haben für Unternehmen eine strategische Bedeutung, da die „Informationstechnologien (IT) .. die Erfolgspotenziale und die Kostenstruktur der Unternehmen für relativ lange Zeiträume [bestimmen]. Strategie und Investition sind .. im IT-Bereich untrennbar miteinander verbunden und stehen in einer wechselseitigen Beziehung.“[2] Die in der Praxis existierenden Wirtschaftlichkeitsanalyseverfahren sind bei direkter Anwendung auf IT-Investitions-projekte mit einem Defizit an erprobten methodischen Vorgehensweisen behaftet und weisen gravierende Quantifizierungsprobleme auf.[3] Unternehmen verlangen daher nach aussagekräftigen wirtschaftlichen Bewertungsverfahren für IT-Investitionsvorhaben, sowohl im Vorfeld (präaktiv) als auch im Anschluss einer Implementierung (postaktiv). Mit den Bewertungsinstrumenten des IT Controlling, welches sich primär auf die konkrete Erfassung von Kosten und Nutzen der IT bezieht, besteht ein Ansatz zur rationalitätssichernden Handhabung von IT Investitionsprojekten.[4] Dennoch weist die einschlägige Literatur darauf hin, „dass die Anforderungen der IT-Investitionen über die Leistungsfähigkeit der klassischen Investitionsrechnung hinausgehen.“[5]
Der IT-Anteil an den Gesamtkosten nimmt ebenso wie der Anteil am Investitionsbudget kontinuierlich zu. Diese Entwicklung bewirkt einen erhöhten Bedarf an „betriebswirtschaftlich fundierten Methoden zur Planung, Kontrolle und Steuerung des IT-Bereichs“[6], mit deren Hilfe ein Unternehmen den IT-spezifischen Wertbeitrag identifizieren und bewerten kann. Aktuell leiden viele Unternehmen unter defizitärem IT-Controlling, welches die Ressource IT in ökonomischer Hinsicht beurteilen und steuern soll. Durch die schnell fortschreitende technologische „Entwicklung sowie .. [die] damit verbundenen, scheinbar unerschöpflichen Möglichkeiten zur Rationalisierung bestehender bzw. zur Entwicklung neuer Geschäftsmodelle wird der IT-Einsatz vielfach relativ unkritisch gesehen und der damit verbundene Nutzen nicht weiter hinterfragt.“[7] Folge dessen sind Entscheidungen über die Höhe des IT-Budgets und die Implementierung innovativer IT-Technologien häufig von Intuition geprägt und maßgeblich von der IT-Affinität der IT-Verantwortlichen abhängig.
Die Diskussion um die Wirtschaftlichkeit von IT-Investitionen hat nach dem Platzen der New-Economy-Blase um die Jahrtausendwende und der damit einhergehenden Kapitalrestriktion einen hohen Bedeutungsgrad erlangt. Es stehen nicht mehr nur die technologischen, teils revolutionären und visionären Möglichkeiten der IT im Vordergrund, sondern muss auch deren Wirtschaftlichkeit hinterfragt und einer kritischen Bewertung unterzogen werden. Hinzu kommen zahlreichen Meldungen über gescheiterte oder kostensprengende IT-Projekte, v.a. im staatlichen Umfeld (z.B. Toll Collect, die elektronische Gesundheitskarte, LiMux, der Virtuelle Arbeitsmarkt (VAM) der Bundesagentur für Arbeit, Herkules, o.ä.), welche zunehmend zur Verunsicherung bei der Initiierung umfangreicher IT-Investitionen beitragen.[8] Erst mittels geeigneter Methoden können Kosteneinsparungs- und Nutzenpotenziale qualitativ und quantitativ messbar gemacht und IT-Investitionen beurteilt werden. „Wirtschaftlichkeitsanalysen schaffen Transparenz über den Wertbeitrag einer IT-Investition zum Unternehmen.“[9]
1.1 Wahl der Thematik
Der Autor[10] dieser Arbeit ist langjähriger Angestellter bei einem Münchener IT-Dienstleister, der Afontis IT+Services GmbH[11]. Im Rahmen seiner Tätigkeit als IT Business Manager konzeptioniert, implementiert und administriert er IT-Infrastrukturen auf Basis der Microsoft-, Citrix- und VMware-Produktpalette. Während seiner Arbeit mit den verschiedensten Kunden wurde er immer wieder mit der Frage konfrontiert, inwieweit eine IT-Investition für das jeweilige Unternehmen als wirtschaftlich sinnvoll erachtet werden kann. Das Studium der Wirtschaftsinformatik trug dazu bei, den Aspekt der Wirtschaftlichkeit einer IT-Investition bearbeiten und eine Antwort auf diese Fragestellung finden zu können. Vor allem beim Einsatz von Virtualisierungs-technologien wird häufig von den positiven Begleiterscheinungen in Form von Kostenersparnis, der verbesserten Wirtschaftlichkeit und des frühzeitigen Return On Investment (ROI) gesprochen. Diese Aussagen auf ihre Gültigkeit hin zu überprüfen und den Grad der Wirtschaftlichkeit konkret aufzuzeigen, ist die Motivation, die den Autor zu der Wahl des Themas dieser Arbeit veranlasste.
Ein langjähriger Kunde der Afontis, entschied sich Ende 2008 für die Konsolidierung seiner IT-Infrastruktur durch Virtualisierung auf Basis des VMware ESX 3.5, um die damit verbundenen Vorteile, u.a. die häufig genannte Optimierung der Wirtschaftlichkeit der eingesetzten Betriebsmittel, nutzen zu können. Um letztlich eine fundierte Aussage bzgl. der Wirtschaftlichkeit einer IT-Investition in Form einer virtualisierten Infrastruktur (kurz: VI) innerhalb eines KMU treffen zu können, sind geeignete quantitative Methoden und Analyseverfahren zu identifizieren, die fallspezifisch angewendet werden können und eine individuell-konkrete Aussage hinsichtlich der Wirtschaftlichkeit zulassen. Das Unternehmen zeigte sich bei Vorstellung des Themas dieser Arbeit sehr interessiert und unterstützte den Autor zu jeder Zeit uneingeschränkt. Über die konkrete Wirtschaftlichkeit einer IT-Investition wurde häufig sinniert, eine echte Überprüfung blieb aber bisher aus. Mit dieser Arbeit wird der Autor das ökonomische Potenzial einer VI an einem spezifischen Investitionsfall aufzeigen und mit konkreten Zahlen belegen.
1.2 Ziel und Aufbau der Diplomarbeit
Die Diplomarbeit verfolgt das Ziel, eine aus den unterschiedlichen zur Verfügung stehenden Methoden und Modellen zur Wirtschaftlichkeitsanalyse geeignete Maßnahme zu filtern und konkret auf den in der Fallstudie dargestellten Investitionsfall anzuwenden. Die Fallstudie beschreibt ein Projekt der Serverkonsolidierung durch Virtualisierung bei einem mittelständischen produzierenden Unternehmen und soll darlegen, inwieweit der Einsatz von Virtualisierungstechnologien dazu geeignet ist, die inhärenten ökonomischen Ziele des Unternehmens zu erreichen und diese durch eine kritische Bewertung in Form einer Wirtschaftlichkeitsanalyse erfüllt werden. Die Arbeit leitet mit der Darstellung des Themenkomplexes „Virtualisierung“ ein und umfasst neben der Historie die Erläuterung aktueller Virtualisierungstechnologien und -arten. Anschließend werden als weiterer Themenkomplex die aktuellen Herausforderungen der Wirtschaftlichkeitsanalyse von IT-Investitionen mithilfe der verfügbaren Wissen-schaftsliteratur identifiziert und beschrieben. Es werden die für eine Wirtschaftlich-keitsanalyse erforderlichen Begrifflichkeiten der IT-Investition, der Kosten, des Nutzens und der Wirtschaftlichkeit erarbeitet, gefolgt von einem schematischen Überblick verfügbarer Methoden und Modelle, die zur Wirtschaftlichkeitsanalyse einer IT-Investition herangezogen werden können. Anschließend werden die mit der Wissen-schaftsliteratur erarbeiteten Kenntnisse mittels Fallstudie angewendet und deren Ergebnis präsentiert. Die Fallstudie umfasst dabei die Darstellung des zu untersuchenden Unternehmens, einen kurzen Abriss des IT-Projekts „Virtualisierung“ und die Analyse der Motivation sowie der Ziele, die das Unternehmen mit der Implementierung der VI verfolgt. Die Arbeit setzt mit der Evaluierung der Wirtschaftlichkeit der VI fort, indem die Charakteristika der IT-Investition analysiert und eine für sie adäquate Methode zur Bewertung ihrer Wirtschaftlichkeit identifiziert und angewendet wird. Die gewählte Methode und die Rahmenbedingungen für ihre Anwendung werden dargelegt, um darauf aufbauend die Wirtschaftlichkeitsanalyse durchzuführen und deren Ergebnis zu präsentieren. Im Rahmen der Ergebnispräsentation wird überprüft, welche ökonomischen Ziele das Unternehmen erreichen konnte. Die Fallstudie wird mit der Darstellung von weitergehenden Potenzialen, die eine VI bieten kann, abgeschlossen. Die Arbeit endet mit einer Zusammenfassung.
1.3 Abgrenzung
Im Kontext dieser Diplomarbeit ist es von essentieller Bedeutung, eine Abgrenzung des zu behandelnden Themas vorzunehmen und dem Leser eine klare Vorstellung vom Inhalt dieser Diplomarbeit zu vermitteln. Wenn in dieser Arbeit von Virtualisierung gesprochen wird, so steht grundsätzlich die Virtualisierung des (Server)Betriebssystems im Vordergrund. Weitere Virtualisierungstechnologien, wie z.B. die Virtualisierung von Massenspeicher (engl. „Storage“) oder Netzwerken, sind nicht Bestandteil dieser Arbeit. Zusätzlich ist es notwendig eine Abgrenzung zur Emulation vorzunehmen. Darüber hinaus kann diese Arbeit keine allgemeingültigen Aussagen, Empfehlungen oder eine sogar vorgeblich alles lösende Formel hinsichtlich individuell geeigneter Virtualisierungslösungen geben. Die Entscheidung Pro oder Contra einer spezifischen Virtualisierungstechnologie ist von vielen Faktoren abhängig, die es im Einzelfall immer zu prüfen und zu bewerten gilt. Zudem liegen in jeder Infrastruktur spezielle Bedingungen und Anforderungen vor, die stets zu analysieren und zu berücksichtigten sind. Detaillierte Ausführungen zur Projektierung, Implementierung, und Administration einer virtuellen Infrastruktur sind nicht enthalten.
Bei der Anwendung geeigneter Methoden und Analyseverfahren zur Evaluierung der Wirtschaftlichkeit von IT-Investitionen liegt der Schwerpunkt ausschließlich bei (in dieser Fallstudie) direkt anwendbaren Methoden. Es findet keine Aufschlüsselung sämtlicher zur Verfügung stehender Methoden im Rahmen eines Analyse-Frameworks in Anlehnung an [Hir05] statt. Stattdessen wird die verwendete Literatur zur Identifikation geeigneter Methoden herangezogen, um die Vielfalt der Methoden sinn-voll einzugrenzen und situativ eine passende Methode auf die Fallstudie anzuwenden. Anschließend wird in Abhängigkeit der IT-Investition, ihrer Rahmenbedingungen und der Methodenwahl eine präaktive (ex-ante) oder postaktive (ex-post) Wirtschaft-lichkeitsanalyse durchgeführt. Dabei wird ausschließlich auf vorhandenes und belegbares Datenmaterial zur Auswertung zurückgegriffen.
2. Virtualisierung
2.1 Grundlagen der Virtualisierung
Im Folgenden werden die Grundlagen der Virtualisierung dargelegt, um ein ganzheitliches Verständnis für die in dieser Arbeit beschriebenen Technologien zu vermitteln. Neben einer Definition des Begriffs der Virtualisierung wird ein historischer Überblick der Virtualisierung, deren Ausprägungsformen, der derzeit verfügbaren Technologien und entsprechender Produkte gegeben.
2.1.1 Was bedeutet Virtualisierung?
Virtualisierung ist ein zeitgenössisches Schlagwort, welches einen großen Bekanntheitsgrad und eine hohe Popularität sowohl im Kreise von IT-Spezialisten als auch bei leitenden IT-Verantwortlichen genießt. Sie hat sich „im x86-Rechnerumfeld in den letzten zehn Jahren von einem Experiment im universitären Umfeld zu einer nicht mehr wegzudenkenden Technologie in der professionellen IT entwickelt.“[12] Virtualisierung ist keine neue Erfindung, keine konkrete Technologie, sondern ein Konzept, welches bereits in den 1960er Jahren entwickelt wurde und im Wesentlichen der Partitionierung[13] großer Mainframes zur effizienteren Nutzung der teuren Hardware diente. Die ursprüngliche „Idee wurde lediglich auf .. [die in dieser Zeit] populäre .. [x86-Architektur] portiert.“[14] Seit mittlerweile drei Dekaden in der Entwicklung, ist die Virtualisierung heute in vielen Ausprägungen präsent und deckt bereits mehrere Aspekte der modernen IT ab, vom einzelnen Desktop bis hin zur gesamten Organisation. Viele Hersteller und Anbieter haben den Begriff der Virtualisierung aufgegriffen, um ihre Produkte zu kategorisieren und ihren Kunden den Aufbau einer umfassenden virtuellen Infrastruktur zu ermöglichen. Dabei wurde schnell deutlich, „dass hinter dieser Technologie ein enormes Potenzial zur Optimierung der Rechnernutzung steckt“[15], denn „Virtualisierung scheint gleichzeitig Trend, Hype, Ver-heißung und Wundermittel in Sachen Kostenersparnis zu sein.“[16]
Um den Begriff „Virtualisierung“ und das dazugehörige Konzept ganzheitlich zu definieren, müssen die zahlreichen Aspekte der Virtualisierung identifiziert und dargestellt werden. Zahlreiche Definitionen sind in der Literatur und im Internet zu finden. Demzufolge ist die Definition stark vom verwendeten Kontext des Begriffs abhängig. Folgende Definitionsansätze verdeutlichen den Facettenreichtum des Virtualisierungskonzepts und lauten wie folgt:
- „Virtualisierung ist eine Methode, um Hardware innerhalb einer Software-Plattform zu emulieren.“[17]
- „Mit Hilfe der Virtualisierungstechnik lassen sich mehrere, gegeneinander abgeschottete Anwendungsumgebungen auf einer Plattform betreiben.“[18]
- Virtualisierung ist „ein Sammelbegriff für eine Vielzahl unterschiedlicher software- und hardware-basierter Methoden, die es erlauben, Ressourcen eines Computers aufzuteilen und mehrere, voneinander unabhängige Systeme der gleichen Prozessorarchitektur auf einem leistungsfähigen Host-System zu betreiben.“[19]
- „In der Informatik bezeichnet man mit dem Begriff Virtualisierung ein Verfahren, das eine Aufteilung oder Verteilung verfügbarer Ressourcen auf mehrere Systeme ermöglicht.“[20]
Bestimmte Konzepte wiederholen sich in allen aufgeführten Definitionen und kristallisieren sich heraus:[21]
- Abstraktion
- Simulation / Emulation
- Sharing
- Partitionierung
- Isolation / Kapselung
- Aggregation
Daraus abgeleitet bedeutet Virtualisierung die parallele Ausführung von mehreren virtuellen Maschinen (VM) mit heterogenen Eigenschaften, d.h. inklusive ihrer jeweiligen Betriebssysteme und ihrer Anwendungen, auf ein und derselben Hardware (dem sog. Host). Eine Virtualisierungsschicht (synonym: Virtualisierungslayer[22] ) realisiert diese Abstraktion, indem sie sich zwischen den virtuellen Maschinen und der physischen Hardware eingliedert und als Mittler zwischen beiden Welten fungiert. Die VMM täuscht dem Betriebssystem in der VM eine eigene Hardware mit eigenem BIOS vor, einen eigenen kompletten Rechner. Zudem sorgt die VMM für die erforderliche Isolation der VMs untereinander, um einen gegenseitige Beeinflussung auf Programmebene zu verhindern. „Virtualisierung kann … als eine logische Schicht zwischen Anwendung und Ressource definiert werden, die die physikalischen Gegebenheiten versteckt.“[23] Diesen Vorgang bezeichnet man als Abstraktion (siehe Abbildung 1).
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 1 - Konzept der Virtualisierung mittels VMM und virtualisierter Hardware[24]
Heute wird der Themenkomplex Virtualisierung vielfach mit den Produkten aus dem Bereich der Servervirtualisierung von VMware, Microsoft und Xen-basierten Lösungen in Verbindung gebracht. Abseits des ‚Klassikers‘ Servervirtualisierung erscheinen weitere, innovative Virtualisierungslösungen für viele Bereiche der IT, wie z.B. Storage-, Netzwerk-, Applikations- und Desktopvirtualisierung.
2.1.2 Historie der Virtualisierung
Dieses Kapitel gibt einen chronologischen Überblick der bedeutendsten Ereignisse in der Evolution der Virtualisierung. Die Auflistung umfasst lediglich die signifikantesten technologischen Errungenschaften und die wesentlichen Fortschritte in den letzten 50 Jahren, die im Zuge der Virtualisierung erzielt wurden. Im allgemeinen Bewusstsein ist die Virtualisierung noch ein junges Teilgebiet der IT. Ein Blick in die Literatur und auf den Zeitstrahl im Anhang verdeutlicht jedoch, dass das Konzept schon früh geboren und stets weiter entwickelt wurde. Jedoch konnte erst der technologische Fortschritt der jüngsten Vergangenheit dazu beitragen, das Virtualisierungskonzept voranzutreiben und die für ein breites Einsatzszenario erforderliche Akzeptanz zu fördern.
In ihrer konzeptionellen Form war die Virtualisierung in den 1960er Jahren eher bekannt unter dem Begriff des „Time Sharing“. Christopher Strachey, welcher als erster Professor im Bereich der Computerwissenschaft an der Universität von Oxford lehrte und mit seiner Abhandlung „Time Sharing in Large Fast Computers“ am 20. Juni 1959 den Start für die Virtualisierungstechnologie initiierte, ist als Namensgeber und Pionier zu betrachten. In seiner Publikation beschreibt er einen logischen Prozessor, auf welchem Programme wie auf einem realen Prozessor ausgeführt werden können. Ein ‚Scheduler‘ ordnet den logischen dem realen Prozessor zu. Damit führte er den Vorläufer des heute bekannten Konzepts der Multiprogrammierung ein und ermöglichte damit die maximale Ausnutzung von Rechnerressourcen. Auf diese Weise konnten die zu seiner Zeit kostbaren Rechenzeiten effizienter genutzt werden. Diese Art der Multiprogrammierung fungierte zugleich als Vorläufer des heute üblichen Multi-tasking.[25]
Im Dezember 1962 wurde in Manchester der zu dieser Zeit rechenstärkste Computer namens ATLAS der Weltöffentlichkeit präsentiert. Dieser bot eine Technologie, welche den Zugriff auf eine Speicherseite ermöglichte, die sich nicht im Hauptspeicher, sondern im Auslagerungsspeicher befand. Dieser einstufige virtuelle Speicher ermöglichte erstmals das sog. „Demand Paging“. Damit konnte der Hauptspeicher virtualisiert werden, was beim ATLAS zu einer Kosteneinsparung führte.[26] Im Jahr 1965 folgte das Experiment M44/44X, welches von IBM am Thomas J. Research Center durchgeführt wurde und der ATLAS-Architektur sehr ähnlich war. Es basierte auf dem IBM 7044 als Hauptrechner (alias M44), auf welchem mehrere virtuelle Maschinen simuliert wurden (alias 44X). Dieses Projekt kreierte den Begriff der „virtuellen Maschine“ und diente der Erforschung der Auslagerung von Arbeitsspeicher, dem Konzept der virtuellen Maschinen und der Messung der Rechenleistung. Es wurde IBM’s Beitrag zum aufstrebenden Time Sharing Konzept.[27]
IBM stellte weiterführende Forschungen auf dem Gebiet virtueller Maschinen an, indem sie das CP/CMS-System am Cambridge Scientific Center entwickelte. Es war ein weiteres Time Sharing System, welches aus zwei Komponenten bestand: dem „Control Program“ (CP) und dem „Cambridge Monitor System“ (CMS). Das Projekt sollte die Realisierbarkeit vollständiger Virtualisierung beweisen. In Anlehnung an ein Multi-User-System wurden beim CP/CMS-Konzept mehrere Kopien von Single-User-Systemen in virtuellen Maschinen (VM) ausgeführt. Dabei wurde die physikalische Hardware innerhalb der VMs abstrahiert. Das erste CP/CMS-Systeme namens CP-40 war die Geburtsstunde des Hypervisor und ermöglichte erstmals die vollständige Virtualisierung eines Betriebssystems. ATLAS und M44/44X von IBM stellen die evolutionären Generationen der Virtualisierung da.
Robert P. Goldberg stellte im Februar 1972 die erste theoretische Abhandlung zum Thema virtueller Maschinen vor. In seiner Promovation „Architectural Principles of Virtual Machines“ definierte er die grundsätzlichen Elemente einer virtuellen Maschine und beschreibt die VM als effiziente Kopie einer realen Maschine. Die wesentlichen Aspekte einer VM stellen der VMM, die Trennung der Befehlssätze in sensitive („privileged“) und nicht-sensitive („non-privileged“) Instruktionen sowie die Isolation der VMs dar. In den 1980er und 1990er Jahren sorgte der massive Anstieg der Rechnerleistung, günstige x86-Hardware und die damit einhergehende Zunahme von Client-Server-Applikationen dafür, das Modell des verteilten Rechnens zu begünstigen und folglich die Virtualisierung in den Hintergrund zu drängen. Der x86-Befehlssatz wurde zur dominanten Architektur und etablierte das Client-Server-Modell mit seinem Axiom des verteilten Rechnens. Dieses Modell offenbarte jedoch seine Schwächen, u.a. in Form niedriger Ressourcenauslastung sowie steigender Kosten für Aufbau, Erhalt und Management der Infrastruktur.[28]
Im Jahre 1988 wurde eine kleine Firma namens Connectix Corporation gegründet. Sie bot Lösungen für Apple Macintosh Systeme an und wurde für ihre Innovationskraft bekannt. Ein Beispiel hierfür ist deren Mode32, welches dazu beitrug, das Problem der 32bit-Speicheradressierung der Motorola 68020 und 68030 Prozessoren der früheren Macs zu lösen, da die verwendeten Betriebssysteme noch nicht 32bit-fähig waren. Weitere erfolgreiche Produkte stellten der SpeedDoubler, gefolgt vom RAM Doubler dar. Das entscheidende Produkt wurde mit dem „Virtual PC“ zur Marktreife gebracht. Es diente PowerPC-basierten Mac OS-Systemen als Virtualisierungslösung für Windows und ermöglichte die Emulation einer virtuellen Maschine für x86-basierte Betriebssysteme auf Basis einer ausgeklügelten „Binary Translation Engine“, die Anweisungen eines virtuellen x86-Prozessors auf eine physischen PowerPC-Prozessor eines Mac übersetzen konnte. Diese Art der Emulation ebnete den Weg für Connectix in die Virtualisierungstechnologie. Eine Weiterentwicklung dieses Produktes war „Virtual PC for Windows“ und gestattete es dem Intel®-Nutzer (IA32), auf einem Windows als Wirtssystem mehrere x86-Betriebssysteme als Gastsysteme einzusetzen.[29]
Sun Microsystems, Inc. entwickelte 1991 die sog. „Java Virtual Machine“ (kurz: JVM), die ähnlich einer P-Maschine agiert. Die JVM ist für die Ausführung des Java-Bytecode verantwortlich. Dabei wird i.d.R. jedes Java-Programm in seiner eigenen VM ausgeführt. Die JVM wird auf dem realen Rechner emuliert. Ebenfalls von Sun Microsystems, Inc. wurde 1993 die kommerzielle Software „Wabi“ (Windows Application Binary Interface) entwickelt. Sie implementierte die Win16-API-Spezifikationen in Solaris und war erstmalig in der Lage, Software unverändert auf einem nicht-proprietären Betriebssystem zu betreiben und Programme auf einer anderen als der ursprünglich geplanten Architektur auszuführen. Der konkrete Einsatzzweck zielte auf die Ausführung von Windows-Applikationen direkt unter dem Betriebssystem Solaris, sowohl auf der SPARC- als auch der x86-Plattform.
Das Wine-Projekt (Wine is not an Emulator) wurde im gleichen Jahr (1993) von Bob Amstadt und Eric Youngdale initiiert. Sie ließen sich vom Erfolg des Wabi-Projekts inspirieren. Das ursprüngliche Ziel war die volle Unterstützung von Win16-Applikationen. Der Fokus des nach wie vor in Entwicklung befindlichen Wine liegt nun bei Win32-Applikationen. Wie das Akronym ‚Wine‘ andeutet, handelt es sich bei Wine nicht um einen Emulator, sondern eine Portierung der Windows-API auf GNU/Linux und andere Unix-Derivate, wobei Systemaufrufe an den Unix- bzw. Linux-Kernel sowie das X Window System oder Cocoa (unter MacOS X) weitergereicht werden.
Mit einem modifizierten Linux-Kernel erzielte Jeff Dike 1999 einen weiteren Fortschritt. Der modifizierte Linux-Kernel konnte als unprivilegierter Prozess gestaltet und dadurch in mehreren Instanzen auf derselben Architektur ausgeführt werden. Er nannte diese Entwicklung “User Mode Linux” (kurz: UML). Die Einsatzmöglichkeiten von UML sind vielfältig:
Zehn Jahre nach Gründung der Firma Connectix, im Jahr 1998, wurde die Firma VMware, Inc. von Diane Greene, ihrem Ehemann Dr. Mendel Rosenblum, Zachary Palmmer, Joseph Gayzowski und Edouard Bugnion gegründet. Die Gründungs-mitglieder patentierten noch im selben Jahr eine neue Virtualisierungstechnologie basierend auf Untersuchungen, die sie an der Stanford Universität betrieben hatten. Dieses Patent mit der Nummer 6,397,242 und der Bezeichnung “Virtualization system including a virtual machine monitor for a Computer with segmented Architecture” wurde am 28.05.2002 ausgezeichnet.[30] Das erste kommerzielle x86-basierte Virtualisierungsprodukt namens „VMware Workstation“ wurde am 08.02.1999 mit der VMWare Virtual Platform eingeführt. Im Jahr 2000 veröffentlichte VMware das Produkt GSX Server 1.0 (Type-2 VMM), im Jahr darauf den ESX Server 1.0 (Type-1 VMM). Beide Produkte werden bis heute weiter entwickelt. Diesen Produkten ist gemein, dass sie alle in der Lage sind, die x86-Architektur umfassend zu virtualisieren. Neben einem eigenen BIOS können sie der VM auch ein komplettes Set an Hardware bereitstellen, z.B. eine Grafikkarte, Netzwerk-Adapter, Festplatten, etc.. Darüber hinaus kann der Host mittels entsprechender Treiber dem Gast auch Zugriff auf USB-, serielle und parallele Schnittstellen gewähren. Die Zugriffe auf die Hardware werden durch den VMM überwacht und gesteuert.
Mit der Übernahme von Connectix im Jahr 2003 steigt Microsoft in den Markt für Virtualisierungstechnologien ein. Dabei erwirbt Microsoft die Rechte an Virtual PC und der weit fortgeschrittenen Version Virtual Server. Letzteres wird als „Microsoft Virtual Server 2005“ im September 2004 veröffentlicht. Im April 2006 veröffentlichte Microsoft den „Virtual Server 2005 R2 Enterprise Edition“ als freien Download, um besser mit den freien Virtualisierungslösungen der Mitbewerber (VMware und Xen) konkurrieren zu können. Mit dem SP1 wurde dem Produkt nachträglich die Unterstützung für Intel® VT und AMD-V™ hinzugefügt. Diese Hardwareunterstützung wiederum ist zwingend erforderlich für den im Juni 2008 veröffentlichten Typ-1-Hypervisor namens „Hyper-V“ (hostless oder bare-metal), welcher Bestandteil der x64-basierten Windows Server 2008 Produktpalette ist.[31]
Um die Schwierigkeiten bei der vollständigen Virtualisierung von x86-Plattformen zu mindern[32], unternehmen Intel® und AMD seit dem Jahr 2005 Anstrengungen, hardwareseitige Unterstützung eine Befehlssatzerweiterung direkt in die CPUs zu implementiert. Diese Technologien namens Intel® VT und AMD-V™ profitieren gegenüber reinen Softwarelösungen von einer höheren Geschwindigkeit.
2.1.3 Zweck und Ziele der Virtualisierung
Wie der vorangegangene Abschnitt zeigt, haben die Ansätze zur Virtualisierung ihren Ursprung in der Mainframe-Technik. „Das primäre Ziel einer Virtualisierung besteht darin, dem Anwender eine Abstraktionsschicht zur Verfügung zu stellen, die von der eigentlichen Hardware … isoliert ist.“[33] Durch eine logische Schicht, welche zwischen Hardware und Anwender platziert wird, greifen Applikationen in der VM auf emulierte Hardware zu. Diese Emulation übernimmt der VMM.
Speziell die folgenden Argumente sind als Vorteile einer Virtualisierung zu betrachten und repräsentieren verfolgenswerte Ziele:[34]
- Vereinfachung und Optimierung der Infrastruktur
- Einheitliche Verwaltungsoberfläche für alle virtuellen Maschinen
- Reduzierung der Kosten für Hardwareanschaffung und -wartung
- Reduzierung der Betriebskosten
- Konsolidierung und Nutzung von bisher ungenutzten Systemressourcen
- Erhöhung der Effizienz der eingesetzten Systeme
- Kostengünstige und einheitliche Produktionsumgebungen
Der Markt der Virtualisierungstechnologien bietet derzeit drei Produktkategorien: die Server-, die Storage- und die Desktopvirtualisierung. Jede Produktkategorie verspricht Vorteile in der Nutzung, die sich in Effizienzsteigerung, Energieverbrauch und Managementbarkeit manifestieren.[35]
2.1.4 Herausforderungen bei der Virtualisierung der x86-Architektur
Wie im Abschnitt 2.1.2 angedeutet, war die erfolgreiche Virtualisierung der x86-Prozessor-Architektur, wie sie ursprünglich von Intel® entwickelt wurde, mit Herausforderungen behaftet, die es zu überwinden galt. Die Anforderungen einer solchen Architektur gemäß dem „Formal Requirements for Virtualizable Third Generation Architecture“[36] von Gerald J. Popek und Robert P. Goldberg aus dem Jahre 1974 wurden nicht erfüllt.
Betriebssysteme für die x86-Architektur wurden für die direkte Installation auf und den direkten Zugriff auf die darunterliegende physische Hardware entwickelt. x86-Betriebssysteme gehen von der Annahme aus, dass sie diese Hardware vollständig „besitzen“ sowie einen privilegierten und kontrollierenden Zugriff auf diese haben. Wie die Abbildung 2 veranschaulicht, verfügt die x86-Architektur über vier Prioritäts- oder Privileg-Stufen, welche dem Betriebssystem und den darauf installierten Applikationen als Ringe 0 bis 3 bekannt sind. Sie ermöglichen und steuern den Zugriff auf die physische Hardware.[37]
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 2 - Prioritätsstufen der x86-Architektur im sog. Protected Mode[38]
Während Applikationen im sog. User Mode, d.h. in Ring 3, ausgeführt werden und nur über Schnittstellen (APIs) auf darunter liegende Ringe und Hardware zugreifen können, verlangt das Betriebssystem direkten Zugriff auf die Hardware, um seine privilegierten Instruktionen in Ring 0 ausführen zu können. Die Anfrage von CPU-Zyklen sowie die Speicherverwaltung können aus Sicht des OS nur im am höchsten privilegierten Ring 0 erfolgreich ausgeführt werden. Das OS muss zu jeder Zeit die Hoheit über alle zur Verfügung stehenden Ressourcen und laufenden Applikationen besitzen, um die Kontrolle über den Systemzustand zu wahren. Diese Annahme erfordert, dass das OS in einer höheren Prioritätsstufe (Ring 0) als die Applikationen (Ring 3) ausgeführt wird und zugleich alle Schnittstellen zu Ring 0 kontrollieren kann (siehe Abbildung 3).
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3 - x86-Befehlssatzarchitektur ohne Virtualisierung
Abbildung in dieser Leseprobe nicht enthalten
Die Betriebssysteme Linux und Windows verwenden nur den Ring 0 (sog. Kernel Mode, in welchem das OS ausgeführt wird) und den Ring 3 (sog. User Mode, in welchem alle Applikationen ausgeführt werden).[39] Die Ringe 1 und 2 werden von diesen OS dagegen nicht genutzt.
Der VMM, mit der Kontrolle über die Ressourcen und der Gäste betraut, fängt die privilegierten Operationen der VMs ab, mit welchen diese versuchen, direkt die Hardware zu kontaktieren. Der VMM analysiert diese Anfragen und ändert sie in ungefährliche Anweisungen ab, um die angeforderte Ressource kontrolliert an den Gast zu übergeben, sowie den Status der VM aufrecht zu erhalten. Da die x86-Architektur nicht für die Virtualisierung entworfen wurde, lassen sich nicht alle privilegierten Operationen ohne Weiteres abfangen. Die meisten privilegierten Operationen erzeugen eine sog. Exception (engl., „Ausnahme“), welche vom VMM relativ einfach identifiziert und entsprechend behandelt werden kann. Jedoch erzeugen nicht alle privilegierten Operationen eine solche Exception. Zum Beispiel können bestimmte privilegierte Instruktionen prinzipiell auch im User Mode ausgeführt werden, obwohl sie dem Kernel Mode vorbehalten sind. Die Identifikation von privilegierten Operationen im User Mode und das Auslösen von Exceptions sind die Funktionen, die der x86-Architektur fehlen, aber zugleich für die erfolgreiche Virtualisierung essentiell sind. Um diesen Designmangel zu umgehen, muss der VMM den gesamten Code des Gasts zur Laufzeit aufwändig analysieren und überwachen. Dazu wechselt der VMM in den sog. Debug-Modus, in welchem die Operationen des Gasts in Einzelschritten durchlaufen, analysiert und Maschinesprachebefehle im User Mode durch Exceptions ersetzt werden. Dies ist eine sehr komplexe und zugleich ineffiziente Aufgabe.[40]
VMware hat sich dieser Herausforderung im Jahre 1998 angenommen und erfolgreich gelöst. Mittels einer weiter entwickelten BT, welche dem VMM die Ausführung im Ring 0 gestattet und dem Deprivilegieren des OS durch „Verschieben“ in einen User Level Ring, welcher mehr Rechte beinhaltet als Ring 3 und zugleich weniger Rechte als der VMM in Ring 0, entwickelte VMware den de facto Standard im Bereich der nativen Virtualisierung von x86-basierten Betriebssystemen.[41]
Die vier Prioritätsstufen der x86-Architektur wurden von den Herstellern Intel® und AMD in ihren Prozessor-Generationen seit 2006 um weitere Prioritätsschichten erweitert, die noch unterhalb von Ring 0 liegen und unterstützend zur Virtualisierung der x86-Architektur beitragen[42].
2.1.5 Emulation
In diesem Abschnitt wird eine Definition der Emulation und deren Abgrenzung zur Virtualisierung vorgenommen. Es wird aufgezeigt, an welcher Stelle die Virtualisierung auf die Emulation zurückgreift.
Im Kontext der Virtualisierung werden häufig auch Emulatoren genannt. Bei der Emulation (von lat. aemulare, „nachahmen“) „handelt es sich immer um die komplette Nachbildung einer Rechnerarchitektur durch eine entsprechende Software, inklusive Hardware, Prozessor, Chipsatz und sonstigem. Dies ermöglicht dann den Einsatz der jeweiligen Betriebssysteme und Anwendungen, was auf einer Hardware den Einsatz von Systemen zulässt, die dafür eigentlich nicht konzipiert sind.“[43]
Im Zusammenhang mit Informationstechnologien wird der Begriff Emulation häufig verwendet, wenn ein anderes – häufig älteres, nicht mehr verfügbares – System durch ein aktuelles System nachgebildet wird. Die dazu erforderliche Software wird als Emulator bezeichnet. Während die Virtualisierung der Schaffung mehrerer Aus-führungsumgebungen auf einer definierten Hardware dient, verfolgt man durch Emulation das Ziel, eine Ausführungsumgebung einer anderen, meist älteren Hardware zu simulieren.
Abbildung in dieser Leseprobe nicht enthalten
Richtige Emulatoren sind z.B. die OpenSource-Projekte Qemu[44] und Bochs[45], der DOS-Emulator DOSBox[46], der PowerPC Architecure Emulator PearPC[47], der Super Nintendo Emulator ZSNES[48], der Amiga 500 Emulator WinUAE[49] oder auch VirtualPC von Microsoft[50]. Diese Emulatoren bilden alle Komponenten einer Architektur, inkl. der CPU, komplett mit Software nach.
Der größte Nachteil von Emulationen manifestiert sich in der hohen Rechenlast auf dem emulierenden System. „Durch die vollständige Emulation der kompletten Hardware [des Zielsystems] sind solche Lösungen … sehr langsam, weil für jeden Befehl der nachgebildeten CPU mehrere Befehle des Emulationsprogramms auf der realen CPU ablaufen müssen.“[51] Im Umfeld der Virtualisierung wird nur in geringem Maße auf die Emulation zurückgegriffen. Hier dient sie v.a. der Bereitstellung von Teilen der Peripherie für die VMs, z.B. in Form von Netzwerkkarten, Grafikadaptern, Soundadaptern und/oder Controllerkarten. Der Zugriff auf alle weiteren Ressourcen des Hosts (z.B. CPU, Arbeitsspeicher) wird durch den VMM überwacht und gesteuert, so dass diese Komponenten nicht aufwändig emuliert werden müssen. Ein Großteil der Gast-Instruktionen läuft direkt auf der CPU des Hosts. Lediglich die in Abschnitt 2.1.4 erwähnten privilegierten Operationen und Exceptions erfordern besondere Aufmerksamkeit seitens des VMM.
Abbildung in dieser Leseprobe nicht enthalten
VMware emuliert in seinen Produkten auf sehr erfolgreiche Art und Weise einen LSI-Logic SCSI-Controller, der tatsächlich von der Firma LSI-Logic hergestellt wurde und mit aktuellen Treibern unterstützt wird. Die Emulation ist so perfekt, dass sogar der aktuelle Treiber des Herstellers für den physischen Controller in der VM mit dem emulierten Controller ohne Einschränkungen funktioniert.
„Der Geschwindigkeitsverlust … [über] den emulierten Controller beim Zugriff auf eine virtuelle Platte lässt sich verschmerzen. Bei der Virtualisierung von RAM und CPU wird es dagegen komplizierter. Würden die Befehle des Betriebssystems oder der Applikationen nicht direkt auf der CPU [des Hosts] laufen, sondern erst emuliert werden, dann wäre eine virtuelle Maschine viel zu langsam. Auch Hauptspeicher könnte mit einer Auslagerungsdatei emuliert werden, das System würde dadurch aber ebenfalls massiv ausgebremst. Auf beide Ressourcen, CPU und RAM, muss der Gast ohne große Umwege zugreifen, um eine akzeptable Geschwindigkeit zu erreichen. Das ist der Unterschied zwischen Emulation und Virtualisierung.“[52]
[...]
[1] Quelle: [Oku06], S.1
[2] Quelle: [Hir05], S.2
[3] Vgl. [Oku06], S.1
[4] Vgl. [Hir06], S.1
[5] Quelle: [Hir05], S.6
[6] Quelle: [Kes07], S.1
[7] Quelle: [Kes07], S.1
[8] Vgl. [Hir05], S.1
[9] Quelle: [Hir05], S.3
[10] Vgl. https://www.xing.com/profile/Alexander_Ollischer
[11] Vgl. http://www.afontis.de
[12] Quelle: [Run08], S.27
[13] d.h. der Aufteilung in mehrere kleine logische Einheiten
[14] Quelle: [Run08], S.27
[15] Quelle: [Run08], S.27
[16] Quelle: [Run08], S.34
[17] Quelle: [Men08], S.7
[18] Quelle: [Zim06], S.65
[19] Quelle: [Spr07], S.31
[20] Quelle: [Lar09], S.6
[21] Vgl. [Kir07], S.101
[22] Kurzform: VMM (Virtualization Machine Monitor)
[23] Quelle. [Run08], S.52
[24] Quelle: [Ahn07], S.37
[25] Vgl. [AnI04], [Mar06], [Wil07]
[26] Vgl. [Mar06], [Wil07]
[27] Vgl. [Mar06], [Wil07]
[28] Vgl. [Vir09], [Men08]
[29] Vgl. [Mar06]
[30] Vgl. [Mar06], [Fre02], [Dev02]
[31] Vgl. [Mar06]
[32] Siehe Abschnitt 2.1.4
[33] Quelle: [Lar09], S.6
[34] Vgl. [Lar09], S.16
[35] Vgl. [Run08], S.35
[36] Vgl. [Ger74]
[37] Vgl. [VMw07], S.3
[38] Quelle: [Ahn07], S.45
[39] Vgl. [Ahn07], S.44
[40] Vgl. [Ahn07], [Tho07]
[41] Vgl. [VMw07], [Mol07]
[42] Siehe Abschnitt 2.2.2
[43] Quelle: [Lar09], S.14
[44] Vgl. http://wiki.qemu.org/
[45] Vgl. http://bochs.sourceforge.net/
[46] Vgl. http://www.dosbox.com/
[47] Vgl. http://pearpc.sourceforge.net/
[48] Vgl. http://www.zsnes.com/
[49] Vgl. http://www.winuae.de/
[50] Vgl. http://www.microsoft.com/germany/mac/virtualpc/intro.mspx
[51] Quelle: [Ahn07], S.40
[52] Quelle: [Ahn07], S.44
-
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X.