Was ist eine virtuelle Maschine - Typen und Vorteile

Versuchen Sie Unser Instrument, Um Probleme Zu Beseitigen





Das Konzept einer virtuellen Maschine wurde um 1960 eingeführt. Es ist die Weiterentwicklung der Time-Sharing-Technik. Bei der Time-Sharing-Methode hat jedes Programm vollen Zugriff auf alle Computerressourcen, es wird jedoch jeweils nur ein Programm ausgeführt. Das System wechselt zwischen Programmen in Zeitscheiben, während jedes Mal Programmzustände gespeichert und wiederhergestellt werden. Bei Verwendung der Time-Sharing-Methode können mehrere Benutzer das Computersystem gleichzeitig verwenden. IBM Forschungszentren haben die Time-Sharing-Methode als virtuelle Maschinen weiterentwickelt. CP-67 war der erste verfügbare Architektur der virtuellen Maschine . Es wurden Systeme mit mehreren virtuellen Maschinen auf einem einzelnen Host und einer einzelnen virtuellen Maschine auf mehreren Hosts entwickelt.

Vor dem Starten neuer Hardware Technologie Es wird zuerst am Emulator getestet, um die Fehler im Design zu erkennen, neu zu erstellen und zu reparieren und die erforderlichen Schritte zu beheben. In ähnlicher Weise wird vor der Einführung einer neuen Software simuliert, ob nach Fehlern gesucht und diese debuggt werden. Zu diesem Zweck ein System, das als Ersatz für die Hauptumgebung zum Aufbau neuer Technologien dienen kann. Hier kommen virtuelle Maschinen ins Spiel. Es fungiert als Emulation des Computersystems und bietet die volle Funktionalität des physischen Systems.




Was ist eine virtuelle Maschine?

Mit der Einführung neuer Technologien und neuerer Forschungsmodelle werden zahlreiche Hardware- und Softwareprodukte auf den Markt gebracht. Viele der Softwareprodukte sind plattformabhängig, daher ist es aufgrund der begrenzten Hardwareressourcen manchmal schwierig, sie zu debuggen oder zu überprüfen.

Eine VM (virtuelle Maschine) ist eine Emulation eines Computersystems, bei der diese Maschinen Computerarchitekturen verwenden, um die Funktionalität eines physischen Computers bereitzustellen. Das physische Gerät, auf dem virtuelle Maschinen arbeiten, wird als Host bezeichnet, während die virtuellen Maschinen als Gast bezeichnet werden. Ein einzelner Host kann mehrere Gäste haben.



Arten von virtuellen Maschinen

Die virtuelle Maschine funktioniert wie ein Computer und ist vom Rest des Hostsystems getrennt. Die Software im Gast kann keine Änderungen an der Software des Hostsystems vornehmen. Somit können die Virendateien mit einer virtuellen Maschine getestet werden, ohne das Hauptcomputersystem zu beeinträchtigen. Die Computersoftware, die die virtuelle Maschine erstellt und ausführt, wird als Hypervisor bezeichnet. Basierend auf ihren Funktionen gibt es zwei verschiedene Arten von virtuellen Maschinen - virtuelle Systemmaschinen und virtuelle Prozessmaschinen.

1). Virtuelle Systemmaschinen


Diese VM-Typen bieten vollständige Virtualisierung. Als Ersatz für die reale Maschine bieten diese Funktionen zur Ausführung eines Ganzen Betriebssystem . Hardwareressourcen werden gemeinsam genutzt und verwaltet und bilden mehrere Umgebungen auf dem Hostsystem. Diese Umgebungen sind voneinander isoliert, befinden sich jedoch auf demselben physischen Host. Somit bieten diese eine gemeinsame Nutzung der Zeit zwischen mehreren Single-Tasking-Betriebssystemen.

So ermöglichen Sie die gemeinsame Nutzung des Speichers zwischen verschiedenen virtuellen Maschinen auf einem Computer Betriebssystem können Speicherüberlastungssysteme angewendet werden. Speicherseiten mit identischem Inhalt können von mehreren virtuellen Maschinen gemeinsam genutzt werden, die sich auf demselben physischen Host befinden. Dies ist sehr nützlich für schreibgeschützte Seiten.

2). Virtuelle Maschinen verarbeiten (VM)

Diese VMs werden auch als virtuelle Anwendungsmaschinen und verwaltete Laufzeitumgebungen bezeichnet. Dieser VM-Typ wird als normale Anwendung im Betriebssystem des Hosts ausgeführt und unterstützt einen einzelnen Prozess. Es wird mit dem Start des Prozesses erstellt und am Ende des Prozesses zerstört. Es wird verwendet, um eine plattformunabhängige bereitzustellen Programmierung Umgebung für den Prozess, so dass er auf jeder anderen Plattform auf die gleiche Weise ausgeführt werden kann.

Prozess-Virtuelle-Maschine

Prozess-Virtuelle-Maschine

Diese werden mithilfe von Interpreten implementiert und bieten Abstraktionen auf hoher Ebene. Diese werden häufig für die Java-Programmierung verwendet, bei der eine virtuelle Java-Maschine zur Ausführung von Programmen verwendet wird. Es gibt einen Sonderfall einer Prozess-VM, die über den Kommunikationsmechanismus eines Computerclusters abstrahiert. Diese enthalten einen Prozess pro physischer Maschine im Cluster. Diese helfen dem Programmierer, sich auf den Algorithmus anstatt auf den Kommunikationsprozess zu konzentrieren, der durch die Verbindung und bereitgestellt wird virtuelle Maschine im Betriebssystem . Die auf dieser VM ausgeführte Anwendung hat Zugriff auf alle Betriebssystemdienste. Die parallele virtuelle Maschine und die Message-Passing-Schnittstelle sind Beispiele für diese virtuellen Maschinen (VM).

Die Architektur

Runtime-Software ist die Virtualisierungssoftware, die die Process VM implementiert. Es wird auf API-Ebene der Computerarchitektur über der kombinierten Schicht aus Betriebssystem und Hardware implementiert. Dies emuliert die Anweisungen auf Benutzerebene sowie Betriebssystem- oder Bibliotheksaufrufe. Für die virtuelle Systemmaschine wird die Virtualisierungssoftware als Virtual Machine Monitor (VMM) bezeichnet. Diese Software befindet sich zwischen der Host-Hardwaremaschine und der Gastsoftware. VMM emuliert die Hardware-ISA, sodass die Gastsoftware eine andere ISA ausführen kann.

Vorteile

Einige der Vorteile der virtuellen Maschinen sind folgende:

  • Virtuelle Maschinen bieten Softwarekompatibilität mit der darauf ausgeführten Software. Somit wird die gesamte für den virtualisierten Host geschriebene Software auch auf der virtuellen Maschine ausgeführt.
  • Es bietet Isolation zwischen verschiedenen Arten von Betriebssystemen und Prozessen. Daher kann das auf einer virtuellen Maschine ausgeführte Prozessorbetriebssystem die Prozesse der anderen virtuellen Maschinen und des Hostsystems nicht ändern.
  • Diese bieten Kapselung und Software, die auf einer virtuellen Maschine vorhanden ist, kann geändert und gesteuert werden.
  • Für den Host mit mehreren Betriebssystemen bieten diese verschiedene Funktionen wie kein doppeltes Booten, Übertragen von Dateien zwischen virtuellen Maschinen, Fehler in einem Betriebssystem wirken sich nicht auf das andere auf dem Host vorhandene Betriebssystem aus. Das Freash-Betriebssystem kann problemlos hinzugefügt werden.
  • Diese bieten eine gute Softwareverwaltung, mit der ein vollständiger Software-Stack des Host-Computers, ein Legacy-Betriebssystem usw. ausgeführt werden kann.
  • Hier ist es möglich, Hardwareressourcen mit unabhängigen Software-Stacks zu teilen und die Last auszugleichen. Die virtuellen Maschinen können auf die verschiedenen Computer übertragen werden.

Daher werden moderne Computersysteme immer komplexer, die verschiedene eng zusammenwirkende Software- und Hardwarekomponenten enthalten. Hier fungiert die Virtualisierung als Verbindungstechnologie. Durch virtuelle Maschinen können inkompatible Subsysteme zusammenarbeiten. Es bietet auch eine flexiblere und effektivere Nutzung von Hardwareressourcen unter mehreren Betriebssystemen. Diese bieten Interoperabilität zwischen Hardware, Systemsoftware und Anwendungen. Was sind die Unterschiede zwischen dem Prozess Virtuelle Maschine und virtuelle Systemmaschine?