Hallo,
allgemein bekannt sind ja Programme für Linux und Windows, die einen
virtuellen Computer vorspiegeln, auf dem man dann wiederum ein System
installieren kann.
Nachteil ist, dass das virtuelle System nur ein Bruchteil der Leistung
des echten Computeres hat.
Meine Frage: Muss es nicht theoretisch möglich sein eine Art
Mini-Betriebssystem (das nur sehr wenig Prozessor-Leistung benötigt) zu
entwickeln, dass nach dem Start sofort ein anderes System, z.B. Windows
startet?
Christian
Christian wrote:
> Nachteil ist, dass das virtuelle System nur ein Bruchteil der Leistung> des echten Computeres hat.
Wenn du 80-90% als Bruchteil ansiehst...
> Meine Frage: Muss es nicht theoretisch möglich sein eine Art> Mini-Betriebssystem (das nur sehr wenig Prozessor-Leistung benötigt) zu> entwickeln, dass nach dem Start sofort ein anderes System, z.B. Windows> startet?
Ja, beispielsweise VMware ESXi (das kleine "i" ist kein Schreibfehler).
Der Trend geht m.E. ohnehin in diese Richtung. Ich nehme an, dass in
einigen Jahren viele PC-Server routinemässig Virtualisierung als
Grundbestandteil enthalten, d.h. den Hypervisor davon. Das Geld wird
dann vorrangig mit der Verwaltung der Hosts und VMs gemacht.
Für meine Begriffe beschreibt deine Idee ziemlich genau das, was das
L4-Projekt realisiert: Ein hocheffizienter Mikrokernel mit minimalstem
Funktionsumfang (Tasks, Threads, IPC, Speicher- und Hardwareverwaltung),
auf dem mehrere unterschiedliche Betriebssysteme mit unterschiedlichen
Eigenschaften parallel laufen.
mehr dazu hier: http://os.inf.tu-dresden.de/L4/
Gruß
Dr.Seltsam
Es gibt einen Ansatz für VMware (kommerziell), dass man eine virtuelle
Maschine erstellt, die direkt Java-Programmcode ausführen kann, ohne
dass man ein Betriebssytem in die virtuelle Maschine installieren muss.
Was ist denn aus dem Ansatz Paravirtualisierung geworden, damals hieß
das Projekt XEN, wenn ich mich net irre. Effizienter wirds wohl nicht
gehen, allerdings muss das Original-OS modifiziert werden.
OS muss nicht modifiziert werden, wenn Intel VT oder AMD Pazifika zum
Einsatz kommt. Die Virtualisierung wird hierbei von der CPU (genauer die
CPU Ringe) übernohmen und es ist keine Modifikation des Orginal OS
Notwendig.
XEN ist meines erachtens momentan die beste Möglichkeit Systeme zu
Virtualisieren.
Eine weitere Lösung für Linux ist KVM (Kernel Virtual Machine).
Benötigt wird dazu ein Prozessor mit Intel VT oder AMD Pazifika.
Die Funktionalität von KVM steckt in einem Kernel-Modul.
Im User-Space läuft ein modifiziertes QEMU, welches für die
Emulation der Peripherie zuständig ist.
Ich verwende KVM auf einem 64-bit-Linux (Debian Etch) zur
Ausführung von Windwos 2000 und Windows XP 64-bit als auch
verschiedener Linux-Distributionen.
Sven Pauli wrote:
> Was ist denn aus dem Ansatz Paravirtualisierung geworden, damals hieß> das Projekt XEN, wenn ich mich net irre. Effizienter wirds wohl nicht> gehen, allerdings muss das Original-OS modifiziert werden.
Xen kann beides: Echte und Paravirtualisierung.
Paravirtualisierung benutzt man, wenn der Prozessor keine
Virtualisierungs- unterstützung hat. Die Schnittstellen dafür müssen vom
Hostsystem bereitgestellt werden. Wenn die nicht vorhanden sind, dann
müssen sie entweder nachgerüstet werden - bei Linux & C. ist das kein
Problem -, oder eingepatcht werden. Letzteres macht VMWare teilweise, um
die Effizienz zu verbessern; zusätzlich muß mindestens ein Treiber im
Hostsystem laufen.
Bei echter Virtualisierung - nur möglich, wenn vom Prozessor unterstützt
- läuft auf der Hardware nur ein Hypervisor, der die Peripherie
synchronisiert und virtuelle Maschinen verwaltet, in denen die
Gastsysteme laufen. Eine VM ist den übrigen gegenüber privilegiert und
muß immer laufen. Das OS in dieser VM ist für das Filesystem u.ä.
verantwortlich.
Eine eigene Frage?
Dieser Thread ist über 18 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.