In seiner Nürnberger Wohnung schaltet Alexander Graf seinen Apple-Rechner an, um darauf - etwas komplizierter als im Normalfall - das Betriebssystem Mac OS zu starten:
"Ich habe mein Linux hochgefahren und sage dem Linux jetzt: oh, auf dieser Festplatte hast du ein Mac OS. Ich starte es und es öffnet sich ein Fenster und mein Mac OS fährt hoch. Dies ist das Original Mac OS, das ich auf meinem Rechner gerade eben noch betrieben habe. Das heißt, ich kann dasselbe Mac OS benutzen, um es nativ laufen zu lassen und in der virtuellen Maschine."
Die virtuelle Maschine, auf der Mac OS läuft, ist der verwirklichte Traum der Open-Source-Gemeinschaft. Dort entwickelte man im letzten Jahr diverse Hilfsprogramme, die der Apple Software vorgaukeln, das Linux-Betriebssystem mit der virtuellen Maschine XEN sei ein Apple Rechner. Zeitraubend sei die Entwicklung der vielen, für die Virtualisierungsumgebung notwendigen Hilfsprogramme, ohne die das Apple-Betriebssystem gar nicht erst starten würde, sagt Alexander Graf. Apple habe beispielsweise in seiner Hardware eine so genannte Binary-Protection fest eingebaut. Das sind Kodierungsschlüssel, nach denen das Apple-Betriebssystem bei jedem Neustart zunächst einmal sucht. Doch auch Alexander Graf suchte und fand das Versteck:
"Dieser Chip ist auf dem Mainboard. Das ist der Chip, der für die Lüftersteuerung verwendet wird, in dem auch die Hintergrundbeleuchtung steckt und irgendwo, tief darin versteckt sind auch die Schlüssel."
Die Schlüssel, für die Alexander Grafs ein kleines Emulationsprogramm schrieb. Aber warum startet er sein Mac OS-Betriebssystem nicht direkt, sondern über eine virtuelle Maschine unter Linux?
"Im Prinzip ist es die einzig legale Möglichkeit, Mac OS X auf einem anderen Weg als dem vorhergesehenen zu starten. Ich persönlich mag Emulatoren, ich will mehrere Betriebssysteme gleichzeitig laufen lassen, ich will hauptsächlich unter Linux arbeiten und trotzdem meinen Mac haben, ich will auch mehrere Mac OS gleichzeitig laufen lassen, ich will auch eine Änderung am Mac OS machen können, ohne dass mir gleich das gesamte System in die Wüste geht. Das heißt: für mich war der Schritt zum Emulator eigentlich ein Schritt des geringsten Widerstandes, um die Ziele, die ich persönlich habe, zu verfolgen."
Die sind in allererster Linie, sich eine optimale Entwicklungsplattform zu schaffen, für Soft- und Hardware. Da macht es nichts aus, dass virtuelle Hardwareumgebungen grundsätzlich langsamer arbeiten als das Original - egal, welchen frei im Internet zugänglichen Emulator man dafür einsetzt:
"Der langsamste, allerdings auch verständlichste Lösung ist Qemu. Die isst, kann man ungefähr rechnen, mit dem Faktor sechs bis sieben langsamer als das Originalsystem. Qemu, also die langsamste Variante, emuliert das komplette System, also inklusive CPU, die Prozessoreinheit. Das heißt, jede Instruktion, die in diesem System passiert, muss angefasst und umgewandelt werden. Das ist langsam! Das Schöne an Qemu ist, das es die Basis bildet für schnellere Virtualisierungslösungen. Schnellere Lösungen sind die aktuellen Virtualisierungslösungen von CPUs zu benutzen, die sowohl Intel als auch AMD haben. Da ist eingebaut, bei AMD heißt das SVM, bei Intel heißt es VMX, was es ermöglicht, die CPU in einen Zustand zu versetzen, dass sie weiß, dass die virtuell läuft und bei Bedarf, die Kontrolle an das echte Betriebssystem wieder abgeben kann."
Momentan sind es erste Schritte, den Pinguin mit dem Apfel zu befreunden, um vielleicht in nächster Zeit zu ermöglichen, beispielsweise die Sicherheit von Servern zu erhöhen, wenn diese nämlich ihre Aufgaben auf zwei unterschiedliche Betriebssysteme verteilen können. Doch eine echte Netzschnittstelle zwischen den Betriebssystemen gibt es noch nicht. Man kann höchstens...
"...alle fünf Minuten ungefähr fünf Kilobyte übertragen. Das reicht nicht für Filetransfer und auch für Websurfen ist es nicht sehr angenehm. Bislang noch nicht! Es muss demnächst gefixt werden. Es wird irgendwann eine Lösung geben, die auf dem Mac OS eine vollständige Netzwerkschnittstelle emuliert und damit kann ich jegliche Netzwerkprotokolle auch auf meinem Mac OS benutzen und natürlich auch auf die echte Maschine zugreifen."
Die Apple- Vertragsbedingungen verhindern, dass das Apple-Betriebssystem auf einer fremden Hardware laufen darf, was sie mit Linux theoretisch könnte, aber unsinnig sei, denn zur Installation benötigt man sowieso einen Apple-Rechner:
"Ich muss auf einem Intel-Mac mein Mac OS installieren, möglichst auf einer externen Festplatte, die ich dann umstöpseln kann in einen normalen Rechner und kann von dem dann dort mein Mac OS starten. Kleiner Zusatz dazu: das ist illegal!"
"Ich habe mein Linux hochgefahren und sage dem Linux jetzt: oh, auf dieser Festplatte hast du ein Mac OS. Ich starte es und es öffnet sich ein Fenster und mein Mac OS fährt hoch. Dies ist das Original Mac OS, das ich auf meinem Rechner gerade eben noch betrieben habe. Das heißt, ich kann dasselbe Mac OS benutzen, um es nativ laufen zu lassen und in der virtuellen Maschine."
Die virtuelle Maschine, auf der Mac OS läuft, ist der verwirklichte Traum der Open-Source-Gemeinschaft. Dort entwickelte man im letzten Jahr diverse Hilfsprogramme, die der Apple Software vorgaukeln, das Linux-Betriebssystem mit der virtuellen Maschine XEN sei ein Apple Rechner. Zeitraubend sei die Entwicklung der vielen, für die Virtualisierungsumgebung notwendigen Hilfsprogramme, ohne die das Apple-Betriebssystem gar nicht erst starten würde, sagt Alexander Graf. Apple habe beispielsweise in seiner Hardware eine so genannte Binary-Protection fest eingebaut. Das sind Kodierungsschlüssel, nach denen das Apple-Betriebssystem bei jedem Neustart zunächst einmal sucht. Doch auch Alexander Graf suchte und fand das Versteck:
"Dieser Chip ist auf dem Mainboard. Das ist der Chip, der für die Lüftersteuerung verwendet wird, in dem auch die Hintergrundbeleuchtung steckt und irgendwo, tief darin versteckt sind auch die Schlüssel."
Die Schlüssel, für die Alexander Grafs ein kleines Emulationsprogramm schrieb. Aber warum startet er sein Mac OS-Betriebssystem nicht direkt, sondern über eine virtuelle Maschine unter Linux?
"Im Prinzip ist es die einzig legale Möglichkeit, Mac OS X auf einem anderen Weg als dem vorhergesehenen zu starten. Ich persönlich mag Emulatoren, ich will mehrere Betriebssysteme gleichzeitig laufen lassen, ich will hauptsächlich unter Linux arbeiten und trotzdem meinen Mac haben, ich will auch mehrere Mac OS gleichzeitig laufen lassen, ich will auch eine Änderung am Mac OS machen können, ohne dass mir gleich das gesamte System in die Wüste geht. Das heißt: für mich war der Schritt zum Emulator eigentlich ein Schritt des geringsten Widerstandes, um die Ziele, die ich persönlich habe, zu verfolgen."
Die sind in allererster Linie, sich eine optimale Entwicklungsplattform zu schaffen, für Soft- und Hardware. Da macht es nichts aus, dass virtuelle Hardwareumgebungen grundsätzlich langsamer arbeiten als das Original - egal, welchen frei im Internet zugänglichen Emulator man dafür einsetzt:
"Der langsamste, allerdings auch verständlichste Lösung ist Qemu. Die isst, kann man ungefähr rechnen, mit dem Faktor sechs bis sieben langsamer als das Originalsystem. Qemu, also die langsamste Variante, emuliert das komplette System, also inklusive CPU, die Prozessoreinheit. Das heißt, jede Instruktion, die in diesem System passiert, muss angefasst und umgewandelt werden. Das ist langsam! Das Schöne an Qemu ist, das es die Basis bildet für schnellere Virtualisierungslösungen. Schnellere Lösungen sind die aktuellen Virtualisierungslösungen von CPUs zu benutzen, die sowohl Intel als auch AMD haben. Da ist eingebaut, bei AMD heißt das SVM, bei Intel heißt es VMX, was es ermöglicht, die CPU in einen Zustand zu versetzen, dass sie weiß, dass die virtuell läuft und bei Bedarf, die Kontrolle an das echte Betriebssystem wieder abgeben kann."
Momentan sind es erste Schritte, den Pinguin mit dem Apfel zu befreunden, um vielleicht in nächster Zeit zu ermöglichen, beispielsweise die Sicherheit von Servern zu erhöhen, wenn diese nämlich ihre Aufgaben auf zwei unterschiedliche Betriebssysteme verteilen können. Doch eine echte Netzschnittstelle zwischen den Betriebssystemen gibt es noch nicht. Man kann höchstens...
"...alle fünf Minuten ungefähr fünf Kilobyte übertragen. Das reicht nicht für Filetransfer und auch für Websurfen ist es nicht sehr angenehm. Bislang noch nicht! Es muss demnächst gefixt werden. Es wird irgendwann eine Lösung geben, die auf dem Mac OS eine vollständige Netzwerkschnittstelle emuliert und damit kann ich jegliche Netzwerkprotokolle auch auf meinem Mac OS benutzen und natürlich auch auf die echte Maschine zugreifen."
Die Apple- Vertragsbedingungen verhindern, dass das Apple-Betriebssystem auf einer fremden Hardware laufen darf, was sie mit Linux theoretisch könnte, aber unsinnig sei, denn zur Installation benötigt man sowieso einen Apple-Rechner:
"Ich muss auf einem Intel-Mac mein Mac OS installieren, möglichst auf einer externen Festplatte, die ich dann umstöpseln kann in einen normalen Rechner und kann von dem dann dort mein Mac OS starten. Kleiner Zusatz dazu: das ist illegal!"