| Virtualisierung | |||||
|
Virtualisierung ist eine Technologie zur Aufteilung von Hardware- und Softwareressourcen eines Rechners. Es wird eine abstrahierende, logische Schicht zwischen Hardware und Anwendung eingeführt. Dabei wird der Anwendung vorgegaukelt, dass sie einen kompletten Rechner bzw. ein komplettes System für sich allein zur Verfügung hat. Die Aufteilung der Ressourcen übernimmt das Wirtsystem, welches mehrere Gastsysteme beherbergen kann. I. Softwarevirtualisierung Die Softwarevirtualisierung kann mit verschiedenen Methoden arbeiten: 1. Betriebssystemvirtualisierung mittels OS-Container: Anwendungen werden Betriebssystemcontainer zur Verfügung gestellt, die Teilmengen des Wirtsystems sind. Die Gastanwendungen arbeiten also innerhalb der geschlossenen Container, ohne dass ein neues Betriebssystem gestartet werden oder ein weiterer Kernel geladen werden muss. Problematisch ist jedoch, dass aus den Containern keine ggf. benötigte weitere Treiber oder andere Kernel geladen werden können. 2. Virtualisierung durch Virtual Machine Monitor (VMM): Der Virtual Machine Monitor (VMM) gaukelt dem jeweiligen Gastsystem einen kompletten eigenen Rechner vor und verteilt die Hardwareressourcen intelligent durch Hardware Emulation, Hardware Virtualisierung oder durch Virtualisierung mittels eines Hypervisors. Dadurch können die Gastsysteme ihren eigenen Kernel laufen lassen und es sind keine grossen Änderungen an den Betriebssystemen notwendig. Der Hypervisor "überwacht" die Virtualisierung und ist oft ein Synonym für den Virtual Machine Monitor. Beispiele sind VMware Workstation und Microsoft Virtual PC. 3. Paravirtualisierung: Es wird ein Wirtsystem virtuell neu gestartet (z. B. ein Xen-Kernel), welches die Gastsysteme beherbergt und mittels Hypervisor die Ressourcen der Hardware kontrolliert. 4. Bei der Hardware Emulation wird einem Betriebssystem, welches auf einen anderen Prozessor ausgelegt ist, die komplette Hardware simuliert. Beispiel ist Bochs. II. Hardware Virtualisierung Bei der Hardware Virtualisierung wird einem Gastbetriebssystem ein Teil der Hardware als virtuelle Hardware geliehen, so dass es in isolierter Umgebung laufen kann. Dabei muss es aber auf denselben Prozessortyp ausgelegt sein. Beispiele sind VMware, Intel Virtualization Technology (Vanderpool) oder AMD Pacifica. Die Hardware Virtualisierung wird auch als Native Virtualization oder Full Virtualization bezeichnet. Ausserdem kann man noch eine Virtualisierung auf der physischen Hardware-Ebene betreiben: z. B. Partitioning (Splitten von Hardware-Ressourcen wie z. B. HDD-Speicher). |
|||||
| Siehe auch: Vanderpool Xen Kernel betriebssysteme linux Emulator WINE HAL Hypervisor Fedora-Core | |||||
| Xen | |||||
|
Xen ist eine freie Virtualisierungssoftware (lizenziert durch GNU/GPL), die auf dem Prinzip der Systemvirtualisierung durch einen Virtual Machine Monitor (VMM) basiert. Im Gegensatz zur Betriebssystemvirtualisierung, bei der mittels OS-Container eine Teilmenge des Wirtssystems hergestellt wird, gaukelt der VMM dem jeweiligen Gastsystem einen kompletten eigenen Rechner vor und verteilt die Hardwareressourcen intelligent durch Hardware Emulation, Hardware Virtualisierung oder, wie im Falle von Xen, durch Virtualisierung mittels eines Hypervisors. Dadurch können die Gastsysteme ihren eigenen Kernel laufen lassen und es sind keine grossen Änderungen an den Betriebssystemen notwendig. Der Hypervisor "überwacht" die Virtualisierung und wird oft als Synonym für den Virtual Machine Monitor verwendet. Xen läuft eine Ebene tiefer als die Kernels der Betriebssysteme und bildet eine abstrahierende Schicht zwischen der Hardware und den Gastsystemen. Der Hypervisor verteilt die Hardwareressourcen. Die Kernel der Gastsysteme werden auf die Xen Architektur angepasst. Daraus folgt, dass Open Source Systeme grundsätzlich durch Xen paravirtualisiert werden können. Durch Vanderpool von Intel oder Pacifica von AMD können auch nicht modifizierbare Betriebssysteme auf Xen laufen. Grundsätzlich ist bei Xen ein Xen-Kernel mit entsprechenden Treibern das Wirtsystem. Xen paravirtualisiert die Hardware also und emuliert sie nicht. Bei VMware beispielsweise ist ein Linux- oder Windows-Kernel der Gastgeber und die Hardware wird virtualisiert, d.h. ist für das Wirtsystem und das Gastsystem gleichermassen verfügbar. Xen differenziert zwischen privilegierten Domänen (Dom0) und unprivilegierten Domänen (virtuellen Systemen, DomU). Die Domäne-0 kontrolliert das System selber und die Gast-Domänen. Xen wird unter einer entsprechenden Distribution installiert und konfiguriert (Kernel und Userland-Tools). Nach dem Neustart wird der Xen-Kernel hochgefahren und die Domain-0 gestartet. Mit den Xen-Werkzeugen werden dann die Gastsysteme gestartet. Xen ist bereits in Fedora Core ab Version 4, SuSE Linux ab Version 9.3 und Novell/SuSE Linux Enterprise Server ab Version 10 integriert. Unterstützt wird Xen durch NetBSD, Sun Microsystems (OpenSolaris), IBM, Intel, Red Hat, HP, openSuSE, ReactOS und Microsoft. Das Xen Projekt wurde an der University of Cambridge gestartet und soll jetzt über die Firma XenSource zum Industriestandard ausgebaut werden. Das Projekt OpenSolaris wird von ORACLE eingestellt. |
|||||
| Siehe auch: Virtualisierung Kernel Open-Source GNU GPL Vanderpool openSuSE Fedora-Core Domain ORACLE | |||||