Virtuelle Maschinen
Die virtuelle Maschine ist im Grunde ein Organisationsprinzip – ein “so tun, als ob„. Das Hauptproblem: mehrere Programme sollen gleichzeitig auf einem einzigen Prozessor laufen. Das ist grundsätzlich nur durch zeitliche Verschachtelung möglich. Das erste Programm läuft eine gewisse Zeit, dann das zweite usw. Das Zuteilen der Laufzeit und das Umschalten zwischen den Anwendungsprogrammen ist herkömmlicherweise Sache des Betriebssystems. Beim üblichen PC ist es so, dass unter Steuerung eines Betriebssystems (z. B. Windows oder Linux) mehrere Anwendungen gleichzeitig genutzt werden können. Manchmal möchte man aber auch mit mehreren Betriebssystemen gleichzeitig arbeiten. Das betrifft nicht nur die Nutzung verschiedener, sondern auch den Einsatz mehrerer gleichartiger Systeme.
Eine solche Betriebsweise hat vor allem dann Vorteile, wenn Anwendungen auf das System zurückwirken können.
- Fallbeispiel: bei Internetzugriffen gelangt Schadsoftware auf den Computer, die das System, die Datenbestände oder einzelne Anwendungen angreift.
- Fallbeispiel: Programmentwicklung. Fehler im zu entwickelnden Programm können das Betriebssystem zum Absturz bringen, so dass auch die anderen unter dem gleichen System laufenden Anwendungen nicht mehr abeitsfähig sind. Es liegt nahe, hierfür mehrere Computer einzusetzen – einen für jedes der Systeme. Dann bleiben die Auswirkungen von Schäden auf das jeweilige System begrenzt.
Diese Lösung ist aber – auch bei den heutigen Computerpreisen – recht kostspielig. Der Grundgedanke der virtuellen Maschine besteht nun darin, durch ein übergeordnetes Steuerprogramm (und einige Kniffe in der Hardware) jedem Betriebssystem scheinbar einen kompletten Prozessor zur Verfügung zu stellen. Diese Vorkehrungen schalten den einzelnen Prozessor zwischen den verschiedenen Systemen in ähnlicher Weise um wie das Betriebssystem die einzelnen Anwendungen.