• Felix Tiede
    Felix Tiede
    2020-01-07

    Eine virtuelle Maschine ist beschränkt in dem, was sie dem Gastsystem anbieten kann: Nur das, was die darunterliegende Hardware auch anbietet.

    Eine VM auf einer x86 (Intel, AMD) CPU kann keine für SPARC (Sun Microsystems) geschriebene Software laufen lassen.

    Ein Emulator hingegen kann das.

    Allerdings auf Kosten der Performance.

    Während eine VM "nativ" auf der darunterliegenden Hardware läuft und eben diese Hardware dafür zuständig ist, zwischen den verschiedenen VMs sauber zu trennen und Zugriffe zwischen diesen zu verhindern, hat ein Emulator die Aufgabe, jedes einzelne Hardware-Kommando auseinanderzunehmen und in jene Befehle zu übersetzen, die die Hardware auch tatsächlich ausführen kann. Dies muß notwendigerweise in Software geschehen, kostet also für jedes If und jedes print unfassbar viel Zeit, während eine VM das einfach direkt so in Hardware laufen lässt.

    Faustregel: Eine VM braucht mehr RAM (weil eigenes OS), eine Emulation mehr CPU-Power (wegen der Softwareübersetzung).

    Nächster Punkt: Oberfläche. Ein Emulator emuliert, wie der Name schon sagt, eine bestimmte Umgebung, lässt also nur genau eine Anwendung laufen, daher integrieren sich Windows-Programme unter Wine in die laufende Linux-Oberfläche.

    Eine VM ist ein abgeschottetes (jaja, Mike Kuketz wird mich erwürgen, das stimmt nämlich nur in den Marketingprospekten wirklich) eigenes Betriebssystem, daher entsteht eine zusätzliche Oberfläche im Inneren des laufenden Desktops. Daraus entsteht die o.g. Faustregel.


    Bonusfrage: Partitionen sind viel zu unflexibel.
    Partitionen lassen sich nicht "mal eben" verschieben oder verkleinern, wenn der Bedarf wechselt. Eine große Partition, innerhalb derer dann VMs laufen, die sich nach Bedarf auf einen anderen PC verschieben oder auch ohne viel Nachdenken mal stumpf löschen oder kopieren lassen, sind da viel flexibler und anpassbarer.

    Ob sich VMs für das angedachte Softwareprojekt überhaupt nutzen lassen, ist auch immer vom Projekt abhängig.

    Android-Software braucht ohnehin einen Emulator (die meisten Smartphones arbeiten mit einer ARM-CPU (die stromsparender ist, als Desktop-CPUs), Ego-Shooter wollen Vollzugriff auf die Grafikhardware, was in VMs nicht immer vollperformant ist - da kann es dann hilfreicher sein, einfach mal drei Rechner unter'm Schreibtisch zu haben, anstatt zu versuchen, das mit der VM-Krücke oder gar einer Emulation zu realisieren.

    0
  • °Anthepa
    °Anthepa
    2020-01-07

    Hmmm... ich glaube, ich habe eine etwas tiefere grobe Ahnung davon jetzt. Die Marketingtexte sagen, dass mensch auf seinem Notebook seinen Büro-Desktop virtuell haben könnte, interessant.

    und nur so aus Interesse: könnte ich (irgendwann in Zukunft) auf meinem CPU-lahmen, aber mit RAM-Riegeln aufgepäppelten PC ein Spiel starten, welches ein WindowsEmulator nicht schafft, indem ich mir einen (für Heimgebrauch kostenlosen) VMware Player installiere und darin eine Instanz Win10 oder so erstelle?

    0
  • Felix Tiede
    Felix Tiede
    2020-01-07

    Prinzipiell schon, aber es gilt hier generell: Wenn Win10 nativ nicht sinnvoll (zu langsam) läuft, dann wird es in einer VM nicht besser.

    Ist die CPU darüberhinaus eine von diesen abgespeckten Varianten (weiß der Himmel wie die hießen, AMD und Intel hatten da jeweils eigene Namen für), dann wird das auch mit einer VM nicht besser, eher schlimmer werden.

    0
  • Felix Tiede
    Felix Tiede
    2020-01-07

    Die Marketingtexte sagen, dass mensch auf seinem Notebook seinen Büro-Desktop virtuell haben könnte, interessant.

    Das ist noch wieder etwas anderes, das ist VDI - Virtual Desktop Infrastructure.

    In diesem Fall laufen die Anwendungen überhaupt nicht lokal, weder nativ noch in einer VM, vielmehr laufen sie virtuell im Rechenzentrum (sei es beim Arbeitgeber oder "in der Cloud") und auf dem Laptop läuft "nur" die Anwendung (eigentlich am Besten umschrieben mit "besserer Webbrowser"), die den Zugriff auf diesen virtuellen Desktop regelt.

    Der Vorteil hier liegt auf der Hand: Für einen Laptopneustart müssen die Anwendungen nicht beendet, nichteinmal Dokumente gespeichert werden, weil die Arbeitsumgebung von diesem Neustart gar nicht betroffen ist. Oder der Wechsel von Laptop auf PC: Völlig schmerzfrei, die Umgebung wird auf dem PC geöffnet und ist im selben Zustand wie vor einer Sekunde noch auf dem Laptop.

    0
  • °Anthepa
    °Anthepa
    2020-01-07

    "Virtual Desktop Infrastructure" ist "verwalteter Desktop"?
    Den Begriff hatte ich letztes Jahr, da gab es wieder andere Programme für. Bin jetzt bissel verwirrt, aber übernehme das Anwendungsbeispiel.
    Der Hersteller wird es ja wissen und der schreibt:
    "Business-Tool, mit dem Unternehmens-Desktops unkompliziert auf BYO-Geräten genutzt werden können"

    0
  • Felix Tiede
    Felix Tiede
    2020-01-07

    Naja, Vmware hat überall, wo irgendwas mit "Virtualisierung" draufsteht, seine Nase drin, da kann das schon verwirren... ;-)

    Und ja, VDI ist sowas wie "verwalteter Desktop", weil der Endanwender gar keine Wahl mehr hat, welche Anwendungen ihm dort zur Verfügung stehen.

    0
  • ehlertronic@pod.geraspora.de
    ehlertronic@pod.geraspora.de
    2020-01-07

    Wine Is Not an Emulator ... wie der Name schon sagt :)
    sondern eine API Umsetzung.

    VBox udgl. sind Emulatoren, und emulieren in die dem Falle eine komplette PC Hardware.
    eigentlich recht einfach ;)

    0
  • Felix Tiede
    Felix Tiede
    2020-01-07

    Korrektur.

    Der VMware Player ist kein Emulator, er nutzt die Virtualisierungsfähigkeiten der Hardware. Das gilt auch für VBox.

    Ein unbestreitbares Beispiel für einen Emulator ist der UAE.

    0