Windows Sandbox est un nouvel environnement de bureau léger adapté à des applications en toute sécurité dans l'isolement.
Combien de fois avez-vous téléchargé un fichier exécutable, mais avons eu peur de l'exécuter? Avez-vous déjà été dans une situation qui nécessitait une installation propre de Windows, mais qui ne voulait pas configurer une machine virtuelle?
Chez Microsoft, nous rencontrons régulièrement ces situations, nous avons donc développé Bac à sable Windows: Un environnement isolé et temporaire et de bureau où vous pouvez exécuter des logiciels non fiables sans craindre un impact durable sur votre PC. Tout logiciel installé dans Windows Sandbox ne reste que dans le bac à sable et ne peut pas affecter votre hôte. Une fois que Windows Sandbox est fermé, tous les logiciels avec tous ses fichiers et son état sont supprimés en permanence.
Windows Sandbox a les propriétés suivantes:
- Partie de Windows – Tout ce qui est nécessaire pour cette fonctionnalité est livré avec Windows 10 Pro et Enterprise. Pas besoin de télécharger un VHD!
- Parfait – Chaque fois que Windows Sandbox fonctionne, il est aussi propre qu'une toute nouvelle installation de Windows
- Jetable – Rien ne persiste sur l'appareil; Tout est jeté après avoir fermé la demande
- Sécurisé – utilise la virtualisation matérielle pour l'isolement du noyau, qui s'appuie sur l'hyperviseur de Microsoft pour exécuter un noyau séparé qui isole le bac à sable Windows de l'hôte
- Efficace – Utilise le planificateur de noyau intégré, la gestion de la mémoire intelligente et le GPU virtuel
Prérequis pour l'utilisation de la fonctionnalité
- Windows 10 Pro ou Enterprise Insider Build 18305 ou version ultérieure
- AMD64 Architecture
- Capacités de virtualisation activées dans le BIOS
- Au moins 4 Go de RAM (8 Go recommandé)
- Au moins 1 Go d'espace disque libre (SSD recommandé)
- Au moins 2 cœurs CPU (4 cœurs avec hyperthreading recommandé)
- Installez Windows 10 Pro ou Enterprise, Insider Build 18305 ou plus récent
- Activer la virtualisation:
- Si vous utilisez une machine physique, assurez-vous que les capacités de virtualisation sont activées dans le BIOS.
- Si vous utilisez une machine virtuelle, activez la virtualisation imbriquée avec cette applet de commande PowerShell:
- Set-vmprocessor -vmname
-ExposeVirtualization extensions $ true
- Ouvrez les fonctionnalités Windows, puis sélectionnez Windows Sandbox. Sélectionner D'ACCORD Pour installer Windows Sandbox. Il pourrait vous être demandé de redémarrer l'ordinateur.
- En utilisant le Commencer menu, trouver Windows Sandbox, exécuter et autoriser l'élévation
- Copiez un fichier exécutable à partir de l'hôte
- Collez le fichier exécutable dans la fenêtre de Windows Sandbox (sur le bureau Windows)
- Exécutez l'exécutable dans le bac à sable Windows; S'il s'agit d'un installateur, allez-y et installez-le
- Exécutez l'application et utilisez-le comme vous le faites normalement
- Lorsque vous avez fini d'expérimenter, vous pouvez simplement fermer l'application Windows Sandbox. Tous les contenus de bac à sable seront rejetés et supprimés en permanence
- Confirmez que l'hôte n'a aucune des modifications que vous avez apportées dans Windows Sandbox.
Windows Sandbox respecte les paramètres de données de diagnostic de l'hôte. Tous les autres paramètres de confidentialité sont définis sur leurs valeurs par défaut.
Comme il s'agit du blog des internes du noyau Windows, passons sous le capot. Windows Sandbox construit sur les technologies utilisées dans les conteneurs Windows. Les conteneurs Windows ont été conçus pour fonctionner dans le nuage. Nous avons pris cette technologie, ajouté une intégration avec Windows 10 et construit des fonctionnalités qui le rendent plus approprié pour s'exécuter sur des appareils et des ordinateurs portables sans nécessiter la pleine puissance de Windows Server.
Certaines des améliorations clés que nous avons apportées comprennent:
À son cœur, Sandbox Windows est une machine virtuelle légère, il a donc besoin d'une image du système d'exploitation pour démarrer. L'une des améliorations clés que nous avons apportées pour Windows Sandbox est la possibilité d'utiliser une copie de la Windows 10 installée sur votre ordinateur, au lieu de télécharger une nouvelle image VHD comme vous le feriez avec une machine virtuelle ordinaire.
Nous voulons toujours présenter un environnement propre, mais le défi est que certains fichiers du système d'exploitation peuvent changer. Notre solution consiste à construire ce que nous appelons «l'image de base dynamique»: une image du système d'exploitation qui a des copies épurées de fichiers qui peuvent changer, mais des liens vers des fichiers qui ne peuvent pas changer qui se trouvent dans l'image Windows qui existe déjà sur l'hôte. La majorité des fichiers sont des liens (fichiers immuables) et c'est pourquoi la petite taille (~ 100 Mo) pour un système d'exploitation complet. Nous appelons cette instance «l'image de base» pour Windows Sandbox, en utilisant la parlance du conteneur Windows.
Lorsque Windows Sandbox n'est pas installé, nous conservons l'image de base dynamique dans un package compressé qui n'est que de 25 Mo. Lors de l'installation, l'emballage de base dynamique, il occupe environ 100 Mo d'espace disque.
La gestion de la mémoire est un autre domaine où nous nous sommes intégrés au noyau Windows. L'hyperviseur de Microsoft permet à une seule machine physique d'être sculptée en plusieurs machines virtuelles qui partagent le même matériel physique. Bien que cette approche fonctionne bien pour les charges de travail des serveurs traditionnels, il n'est pas aussi bien adapté à l'exécution d'appareils avec des ressources plus limitées. Nous avons conçu Windows Sandbox de telle manière que l'hôte peut récupérer la mémoire à partir du bac à sable si nécessaire.
De plus, comme Windows Sandbox exécute essentiellement la même image du système de fonctionnement que l'hôte, nous permettons également à Windows Sandbox d'utiliser les mêmes pages de mémoire physique que l'hôte pour les binaires du système d'exploitation via une technologie que nous appelons «carte directe». En d'autres termes, les mêmes pages exécutables de NTDLL sont mappées dans le bac à sable que celle de l'hôte. Nous prenons soin de nous assurer que cela fait de manière sécurisée et aucun secret n'est partagé.
Avec des machines virtuelles ordinaires, l'hyperviseur de Microsoft contrôle la planification des processeurs virtuels exécutés dans les machines virtuelles. Cependant, pour Windows Sandbox, nous utilisons une nouvelle technologie appelée «Scheduler intégré» qui permet à l'hôte de décider quand le bac à sable s'exécute.
Pour Windows Sandbox, nous utilisons une politique de planification unique qui permet de planifier les processeurs virtuels du bac à sable de la même manière que les threads seraient planifiés pour un processus. Les tâches de grande priorité sur l'hôte peuvent préempter un travail moins important dans le bac à sable. L'avantage de l'utilisation du planificateur intégré est que l'hôte gère le bac à sable Windows comme un processus plutôt qu'une machine virtuelle qui se traduit par un hôte beaucoup plus réactif, similaire à Linux KVM.
L'objectif entier ici est de traiter le bac à sable comme une application mais avec les garanties de sécurité d'une machine virtuelle.
Comme indiqué ci-dessus, Windows Sandbox utilise l'hyperviseur de Microsoft. Nous exécutons essentiellement une autre copie de Windows qui doit être démarrée et cela peut prendre un certain temps. Ainsi, plutôt que de payer le coût total de démarrage du système d'exploitation de bac à sable chaque fois que nous démarrons Windows Sandbox, nous utilisons deux autres technologies; «Instantané» et «clone».
L'instantané nous permet de démarrer l'environnement de bac à sable une fois et de préserver la mémoire, le processeur et l'état de l'appareil sur le disque. Ensuite, nous pouvons restaurer l'environnement de sable à partir du disque et le mettre dans la mémoire plutôt que de le démarrer, lorsque nous avons besoin d'une nouvelle instance de Sandbox Windows. Cela améliore considérablement l'heure de début du bac à sable Windows.
Le rendu accéléré en matériel est la clé d'une expérience utilisateur fluide et réactive, en particulier pour les cas d'utilisation graphiques ou intentionnels. Cependant, les machines virtuelles sont isolées de leurs hôtes et incapables d'accéder aux appareils avancés comme les GPU. Le rôle des technologies de virtualisation graphiques est donc de combler cet écart et de fournir une accélération matérielle dans des environnements virtualisés; Par exemple, Microsoft RemoteFX.
Plus récemment, Microsoft a travaillé avec nos partenaires de l'écosystème graphique pour intégrer directement les capacités de virtualisation graphique moderne dans DirectX et WDDM, le modèle de pilote utilisé par les pilotes d'affichage sur Windows.
À un niveau élevé, cette forme de virtualisation graphique fonctionne comme suit:
- Les applications exécutées dans une VM Hyper-V utilisent des API graphiques comme d'habitude.
- Composants graphiques de la machine virtuelle, qui a été éclairée pour prendre en charge la virtualisation, coordonnent à travers la limite de la machine virtuelle avec l'hôte pour exécuter des charges de travail graphiques.
- L'hôte alloue et planifie des ressources graphiques parmi les applications dans la machine virtuelle aux côtés des applications en cours d'exécution nativement. Conceptuellement, ils se comportent comme un pool de clients graphiques.
Ce processus est illustré ci-dessous:
Cela permet à la machine virtuelle Sandbox Windows de bénéficier du rendu accéléré matériel, avec Windows allouant dynamiquement les ressources graphiques où elles sont nécessaires à travers l'hôte et l'invité. Le résultat est une amélioration des performances et de la réactivité pour les applications exécutées dans Windows Sandbox, ainsi que l'amélioration de la durée de vie de la batterie pour les cas d'utilisation graphiques.
Pour profiter de ces avantages, vous aurez besoin d'un système avec un GPU compatible et des pilotes graphiques (WDDM 2.5 ou plus récent). Les systèmes incompatibles rendront les applications dans Windows Sandbox avec la technologie de rendu basée sur le processeur de Microsoft.
Windows Sandbox est également conscient de l'état de la batterie de l'hôte, qui lui permet d'optimiser la consommation d'énergie. Ceci est essentiel pour une technologie qui sera utilisée sur les ordinateurs portables, où ne pas gaspiller une batterie est importante pour l'utilisateur.
Comme pour toute nouvelle technologie, il peut y avoir des bogues. Veuillez les déposer afin que nous puissions continuellement améliorer cette fonctionnalité.
Bogues et suggestions de fichiers chez Windows Sandbox Centre de commentaires (sélectionner Ajouter de nouveaux commentaires), ou suit ces étapes:
- Ouvrir le Centre de commentaires
- Sélectionner Signaler un problème ou Suggérer une fonctionnalité.
- Remplissez le Résumez vos commentaires et Expliquez plus de détails sur les boîtes avec une description détaillée du problème ou de la suggestion.
- Sélectionnez une catégorie et une sous-catégorie appropriées en utilisant les menus déroulants. Il y a une option dédiée dans Centre de commentaires Pour déposer des bogues et des commentaires de « Windows Sandbox ». Il est situé sous la sous-catégorie « Sécurité et confidentialité » Sandbox Windows « .
- Sélectionnez Suivant
- Si nécessaire, vous pouvez collecter des traces pour le problème comme suit: Sélectionnez le Recréer mon problème carreau, puis sélectionnez Commencer la capturereproduire le problème, puis sélectionner Arrêter la capture.
- Joindre toutes les captures d'écran ou fichiers pertinents pour le problème.
- Soumettre.
Nous nous attendons avec impatience à utiliser cette fonctionnalité et à recevoir vos commentaires!
Acclamations,
Hari Pulapaka, Erick Smith et Paul Bozzay
(Équipe Windows Sandbox)