Bernard Ourghanlian, directeur technique et sécurité chez Microsoft France, qui présentait cette semaine sur le salon Techdays le concept Singularity, développe pour nous quelques points clé relatifs à ce projet de recherche, à l'avenir des systèmes d'exploitation et à l'importance croissante de la virtualisation. Sans s'étendre sur la question, il évoque d'ailleurs l'arrivée prochaine d'un dispositif de virtualisation totalement transparent pour l'utilisateur.
Le projet Singularity, dont l'objectif est de repenser les fondamentaux qui régissent la conception d'un système d'exploitation, a-t-il une chance d'aboutir à un OS opérationnel ?
Bernard Ourghanlian : Singularity n'a pas vocation à aboutir à un nouveau Windows, mais le projet pourrait servir de base à l'élaboration d'un système d'exploitation complètement neuf. Il faut cependant savoir que l'OS n'est pas une fin en soi dans la mesure où son patrimoine applicatif constitue sa principale richesse.
Si une version opérationnelle de Singularity était lancée, l'objectif ne serait pas de copier Windows, ou d'introduire à tout prix un mode de compatibilité Windows. En revanche, on pourrait imaginer démarrer sa machine sur Singularity puis y lancer des machines virtuelles qui hébergeraient un environnement Windows. Dans la mesure où tout nouveau système d'exploitation doit préserver l'existant en matière d'applications, la virtualisation est un facteur clé.
On pourrait ainsi héberger d'anciennes applications en mode virtualisé sur le shell d'un nouveau système d'exploitation, et en exécuter directement de nouvelles, conçues spécifiquement pour son environnement. En allant plus loin, on pourrait même imaginer qu'un utilisateur soit sur un noyau de type Singularity sans même s'en rendre compte. Aujourd'hui, toutes les briques technologiques sont réunies pour que cela soit possible. Bien que l'on associe souvent la virtualisation à la consolidation des serveurs, la compatibilité est un scénario primordial. A ce titre, elle est sans doute amenée à se généraliser.
Pour percer après du grand public, ne faudrait-il pas que la virtualisation devienne totalement invisible aux yeux de l'utilisateur ?
Nous y arrivons, et nous aurons sans doute des annonces relatives à cette question dans un avenir proche, peut-être dans le courant de l'année.
En parlant de compatibilité applicative, les problèmes relatifs à Vista appartiennent-ils maintenant au passé ?
Le principal handicap de Vista à sa sortie était sans doute son nouveau modèle de sécurité, qui a effectivement posé un certain nombre de problèmes de compatibilité. Avec le temps, le problème a été corrigé puisque les éditeurs et fabricants ont mis à jour leurs produits. Ce n'était pas la bonne méthode, et nous saurons nous en souvenir. Là encore, la virtualisation aurait permis d'éviter le problème, au moins pour les applications puisqu'il est encore impossible de virtualiser correctement des pilotes.
Le Service Pack 1 de Vista (SP1), qui commence à être distribué aux testeurs, partage une partie du code de Windows Server 2008. Les systèmes d'exploitation clients et serveurs sont-ils amenés à évoluer ensemble chez Microsoft à l'avenir ?
Pour faire simple, les noyaux de Vista SP1 et de Windows Server 2008 sont très proches, même s'ils comportent des différences, au niveau de l'ordonnancement des threads par exemple. Les deux ont d'ailleurs connu un développement parallèle, au moins jusqu'à la sortie des premières versions Release Candidate (RC). C'est un modèle de développement qui a de bonnes chances d'être perpétué avec Windows Seven. Ainsi le SP1 de Seven sortira-t-il probablement en même temps que la version finale de la version Server du système.
Pour finir, pourrions-nous revenir sur la sécurité au sein de Windows Vista, et sur le tant décrié User Account Countrol (UAC) ?
En matière de sécurité, le bilan est positif pour Windows Vista, en dépit de la série de correctifs que nous venons de publier. Sans même parler d'autres OS, nous avons déjà accompli d'immenses progrès entre Windows XP SP2 et Windows Vista. En revanche, ces progrès ont un coût, qui se traduit par une interface nettement plus intrusive, avec l'User Account Countrol. Bien que certains utilisateurs se plaignent, nous n'avons pas l'intention d'abandonner cette solution. Dans nos prochains systèmes, nous essaierons tout de même de diminuer le nombre de messages d'alerte et de demandes, sans remettre en cause le principe de l'UAC. Sécurité et ergonomie sont des notions antinomiques. A nous de trouver le meilleur compromis possible. Un effort de communication sera également nécessaire afin que les utilisateurs comprennent que ces messages ont une utilité, même s'ils les dérangent.
En parallèle, nous étudions bien entendu de nouvelles pistes. Puisqu'il a été démontré que la parfaite inspection d'un code est impossible, la virtualisation est une solution éventuelle. Elle permettrait par exemple de tester le code dans une antichambre virtuelle afin de voir si son comportement est normal, avant de le laisser entrer sur la machine opérationnelle. Pour contrer l'effet bombe à retardement, on peut même accélérer le temps au niveau de l'hyperviseur, mais il reste toujours des limites.