Virtuelle Maschine (VM)
Eine virtuelle Maschine (VM) ist ein Programm, das ein Computersystem emuliert. Sie verfügt über eine virtuelle CPU, Arbeitsspeicher und Speicher und unterscheidet sich äußerlich nicht von einem physischen Computer mit derselben Hardware.
Wie funktioniert eine virtuelle Maschine?
Ein virtueller Computer verfügt über ein Betriebssystem, Dateien und Anwendungen. Er funktioniert genau wie ein physischer Computer, kann Websites hosten, Programme ausführen und mit anderen Systemen in einem Netzwerk arbeiten. Auf dem Bildschirm erscheint die virtuelle Maschine als ein Fenster, das innerhalb des Betriebssystems vom jeweiligen Computers des Nutzers ausgeführt wird.
Sie verfügt auch über eine CPU, Arbeitsspeicher und Speicherplatz, die jedoch simuliert werden und nicht physisch sind. Aus diesem Grund können mehrere virtuelle Maschinen auf einem Server koexistieren. In diesem Fall verwendet der Server eine Software namens Hypervisor, um sie zu verwalten. Der Hypervisor ordnet die virtuelle Hardware der VM den physischen Komponenten des Servers zu.
In diesem Szenario können auf einem physischen Server zwei, drei, vier oder sogar zehn virtuelle Maschinen laufen. Die Anzahl ist jedoch durch die Ressourcen des Servers begrenzt – zu viele VMs führen zu Leistungseinbußen.
Warum werden virtuelle Maschinen verwendet?
Virtuelle Maschinen sind sogenannte Sandboxes – Teile des virtuellen Raums, in denen Code getrennt vom restlichen System ausgeführt werden kann. Dadurch eignen sich VMs ideal zum Testen neuer Software oder zum Ausführen von Code, der möglicherweise bösartig ist.
Auf der virtuellen Maschine kann ein anderes oder älteres Betriebssystem ausgeführt werden, damit ein Benutzer Software ausführen kann, die auf dem Betriebssystem des Computers nicht funktioniert. Zum Beispiel könnte jemand eine VM verwenden, um eine Windows-Software auf einem Linux-Gerät auszuführen. Dazu würde er eine virtuelle Maschine mit einem Windows-Betriebssystem auf seinem Linux-System ausführen.
Ein gutes Beispiel: Die virtuelle Maschine von Ethereum (EVM)
Die Nodes im Ethereum-Netzwerk führen alle die Ethereum Virtual Machine (EVM) aus, die zur Ausführung von Smart Contracts verwendet wird. Da dies in einer separaten Sandbox geschieht, bietet es erhebliche Sicherheitsvorteile für die Ethereum-Plattform und macht sie immun gegen DDoS-Angriffe (Distributed Denial of Service), die für viele Hacker eine beliebte Strategie darstellen.