Windows-Sandbox-Architektur

Windows Sandbox profitiert von der neuen Containertechnologie in Windows, um eine Kombination aus Sicherheit, Dichte und Leistung zu erzielen, die auf herkömmlichen VMs nicht verfügbar ist.

Dynamisch generiertes Image

Anstatt eine separate Kopie von Windows zum Starten der Sandbox zu erfordern, verwendet die Dynamic Base Image-Technologie die Kopie von Windows, die bereits auf dem Host installiert ist.

Die meisten Betriebssystemdateien sind unveränderlich und können frei mit Windows Sandbox freigegeben werden. Eine kleine Teilmenge von Betriebssystemdateien ist änderbar und kann nicht freigegeben werden, sodass das Sandbox-Basisimage unberührte Kopien davon enthält. Ein vollständiges Windows-Image kann aus einer Kombination aus den sharablen unveränderlichen Dateien auf dem Host und den unberührten Kopien der änderbaren Dateien erstellt werden. Mit Hilfe dieses Schemas verfügt Windows Sandbox über eine vollständige Windows-Installation, von der aus gestartet werden kann, ohne eine zusätzliche Kopie von Windows herunterladen oder speichern zu müssen.

Vor der Installation von Windows Sandbox wird das dynamische Basisimagepaket als komprimiertes 30-MB-Paket gespeichert. Nach der Installation belegt das dynamische Basisimage etwa 500 MB Speicherplatz.

Ein Diagramm vergleicht die Skalierung des dynamischen Bilds von Dateien und Verknüpfungen mit dem Hostdateisystem.

Speicherverwaltung

Bei herkömmlichen VMs wird die Zuordnung des Hostarbeitsspeichers statisch dimensioniert. Wenn sich die Ressourcenanforderungen ändern, verfügen klassische VMs über begrenzte Mechanismen zum Anpassen ihrer Ressourcenanforderungen. Auf der anderen Seite arbeiten Container mit dem Host zusammen, um dynamisch zu bestimmen, wie Hostressourcen zugeordnet werden. Diese Methode ähnelt der Art, wie Prozesse normalerweise um den Arbeitsspeicher auf dem Host konkurrieren. Wenn der Host unter Arbeitsspeicherauslastung leidet, kann er Arbeitsspeicher ähnlich wie bei einem Prozess aus dem Container freigeben.

Ein Diagramm vergleicht die Speicherfreigabe in Windows Sandbox mit einer herkömmlichen VM.

Arbeitsspeicherfreigabe

Da Windows Sandbox dasselbe Betriebssystemimage wie der Host ausführt, wird die Verwendung der gleichen physischen Speicherseiten wie der Host für Betriebssystembinärdateien durch eine Technologie verbessert, die als "direkte Zuordnung" bezeichnet wird. Wenn beispielsweisentdll.dll in den Arbeitsspeicher in der Sandbox geladen wird, werden die gleichen physischen Seiten wie die Seiten der Binärdatei verwendet, wenn sie auf den Host geladen werden. Die Gemeinsame Nutzung des Arbeitsspeichers zwischen dem Host und der Sandbox führt im Vergleich zu herkömmlichen VMs zu einem geringeren Speicherbedarf, ohne dass wertvolle Hostgeheimnisse beeinträchtigt werden.

Ein Diagramm vergleicht den Speicherbedarf in Windows Sandbox mit einem herkömmlichen virtuellen Computer.

Integrierter Kernelplaner

Bei normalen virtuellen Computern steuert der Microsoft-Hypervisor die Planung der virtuellen Prozessoren, die auf den VMs ausgeführt werden. Windows Sandbox verwendet eine neue Technologie namens "integrierte Planung", mit der der Hostplaner entscheiden kann, wann die Sandbox CPU-Zyklen erhält.

Ein Diagramm vergleicht die Planung in Windows Sandbox mit einer herkömmlichen VM.

Windows Sandbox verwendet eine eindeutige Richtlinie, mit der die virtuellen Prozessoren der Sandbox wie Hostthreads geplant werden können. Bei diesem Schema können Aufgaben mit hoher Priorität auf dem Host weniger wichtige Aufgaben in der Sandbox vorentigen. Diese vorzeitige Entfernung bedeutet, dass die wichtigste Arbeit priorisiert wird, unabhängig davon, ob sie sich auf dem Host oder im Container befindet.

WDDM-GPU-Virtualisierung

Hardwarebeschleunigtes Rendering ist der Schlüssel zu einer reibungslosen und reaktionsfähigen Benutzererfahrung, insbesondere für grafikintensive Anwendungsfälle. Microsoft arbeitet mit seinen Partnern im Grafikökosystem zusammen, um moderne Grafikvirtualisierungsfunktionen direkt in DirectX und windows Display Driver Model (WDDM) zu integrieren, dem von Windows verwendeten Treibermodell.

Dieses Feature ermöglicht es Programmen, die in der Sandbox ausgeführt werden, um GPU-Ressourcen mit Anwendungen zu konkurrieren, die auf dem Host ausgeführt werden.

Ein Diagramm veranschaulicht die Verwendung des Grafikkernels in der Sandbox, die zusammen mit Apps auf dem Host verwaltet wird.

Um diese Vorteile nutzen zu können, ist ein System mit kompatiblen GPU- und Grafiktreibern (WDDM 2.5 oder höher) erforderlich. Inkompatible Systeme rendern Apps in Windows Sandbox mit der CPU-basierten Rendering-Technologie von Microsoft, Windows Advanced Rasterization Platform (WARP).

Akkudurchlauf

Windows Sandbox kennt auch den Akkuzustand des Hosts, wodurch der Stromverbrauch optimiert werden kann. Diese Funktionalität ist wichtig für Technologien, die auf Laptops verwendet werden, bei denen die Akkulaufzeit häufig kritisch ist.