Virtualisierung – Vor- und Nachteile

Unter Mac OS sind Virtualisierungslösungen, so kommt es mir vor, erheblich bekannter, da es hier viele Leute gibt, die ihre Windows-Anwendungen gerne unter Mac OS laufen lassen könnten. Und so gibt es sehr viele Möglichkeiten, ein fremdes System zu installieren. Einige davon kosten sogar Geld.

Mein Lieblings-Virtualisierer ist wohl immernoch VirtualBox. Kostenlos für den Privatgebrauch, und leistet gute Dienste. Inzwischen habe ich aber auch Parallels Workstation und VMWare Fusion ausprobiert. Mir sagt VMWare Fusion ein wenig mehr zu (zumal dort ein Spiel funktioniert, das unter Parallels nicht so gut funktioniert), aber … hm … bezahlen würde ich eigentlich für beides nichts, denn die Unterschiede betreffen ein paar Schmankerl wie Dock-Icons für Windows-Anwendungen, und eben die Tatsache dass man unter Parallels und VMWare momentan ganz passabel Spiele spielen kann, was unter VirtualBox noch nicht ganz so gut geht (aber sicher auch bald kommen wird, sie arbeiten ja schon daran).

Weiterhin kann man schön seine Linuxe und Solarise zum Laufen bringen, alles schön integriert auf einem Desktop. Klingt eigentlich ganz nett. Man muss sich nicht mehr für ein Betriebssystem entscheiden, und wenn man das Glück hat gerade Student zu sein und Software nachgeschmissen zu bekommen, kann man fast jedes Programm ausführen, ohne auf Kompatibilität zu achten. Das Ganze geht sogar soweit, dass Consumer-PCs jetzt schon Erweiterungen bekommen, sodass man auf ihnen besser virtualisieren kann.

Nun, ich habe ja bereits im Serverbereich die Virtualisierung kritisch gesehen. Klar, es klingt schön, einen großen Server in kleine Server aufzuteilen, für verschiedenste Nutzer. Aber letztendlich hat für soetwas Linux (und allgemein Unixoide Systeme) ein komplexes Berechtigungensystem, mit dem man Vergleichbares erreichen könnte. Das Problem hierbei ist nur, dass die Software nicht mehr darauf ausgelegt ist. Ein Webserver will eben nunmal irgendwie ein eigener Process mit eigenen Berechtigungen sein. Und er will natürlich auf Port 80 lauschen, was man als non-root nicht kann.

Aber immerhin, im Serverbereich teilt man einen Server in sinnvolle Einheiten ein, und Virtualisierung kann auch sehr praktisch sein, Backuptechnisch zum Beispiel, oder wenn man Experimente machen will.

Für Letztere eignet sich Virtualisierung natürlich auch im Desktop-Bereich. Ich will etwas ausprobieren, zum Beispiel ein Kernelmodul das ich gerade geschrieben habe, was eignet sich besser dazu, als eine virtualisierte Umgebung?

Bleibt die Frage, wozu der normale Mensch, der keine Kernelmodule oder Portierungen schreibt, und nicht ein spezielles Interesse um der Betriebssysteme Willen hat, sondern einfach nur seine Programme nutzen will, Virtualisierung braucht. Virtualisierung produziert Overhead, und ist nichttrivial. Die ganzen „Einbettungen“ von VirtualBox, VMWare und Parallels funktionieren – solange bis irgendetwas nicht perfekt läuft. Und das kann schnell mal vorkommen. Denn Windows ist nicht dafür gedacht, virtualisiert zu werden. Es ist darauf ausgelegt, auf einem Computer zu laufen. Es ist ein Betriebssystem. Virtualisierung degradiert es zu einer Laufzeitumgebung, eher sogar zu einer Programmbibliothek.

Klar, letztendlich ist ein Betriebssystem auch im normalen Umfeld soetwas wie eine Programmbibliothek. Es abstrahiert Hardwarezugriffe. Diese Aufgabe ist aber erheblich unterschiedlich von der Aufgabe normaler Programmbibliotheken, die z.B. zur Unterstützung irgendwelcher Protokolle oder Dateiformate programmiert wurden.

Wenn man schon soetwas will, ist dann ein Projekt wie Wine am Sinnvollsten. Es passt die bereits verfügbare Laufzeitumgebung an. Im Grunde ist es das, was man will. Es setzt nur bei einer etwas höheren Abstraktionsebene an. Eine Laufzeitumgebung für Windows-Programme zu erzeugen, ohne gleich einen ganzen virtuellen PC zu haben, ist sicherlich aufwendig aber möglich. Und wäre wohl – mal abgesehen davon, die Programme gleich sauber und plattformunabhängig zu schreiben – die sinnvollste Möglichkeit.

Aber gut, sinnvolle Möglichkeiten setzen sich selten durch. Und so hoffe ich, dass Sun Virtualbox weiterentwickeln wird, sodass es mehr Spiele unterstützt. Sollte das irgendwann gehen, hoffe ich, dass ReactOS sich um DirectX-Kompatibilität bemüht, sodass man vielleicht irgendwann ohne Windows auskommt, und trotzdem sehr viele Spiele spielen kann, die momentan noch nicht Wine-Kompatibel sind.

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: