Nouveaux systèmes d'exploitation, Multi-Processeurs et Virtualisation

20 December 2007

Dernièrement, plusieurs systèmes d’exploitation sont sortis, en version finale ou en version de test. Outre les habituels ajouts de pilotes, type de matériel et des nouvelles technologies, les fonctionnalités de gestion des multiprocesseurs et de virtualisation sont de plus en plus appréciées et regardées de près, comme les dernières sorties nous le montre.

En effet, puisque les puces augmentent moins en fréquence qu’en nombre de cœurs (comme les processeurs Core 2 Duo, Core 2 Quadro, Niagara, Power6, et Phenom), les système doivent apprendre à gérer, pour des applications personnelles ( et non seulement professionnelles), plusieurs processeurs (SMP).

Ensuite, la grande tendance actuelle du monde professionnel, qui maîtrise le SMP depuis des années, est la montée en puissance des environnements de para-virtualisation, tels que Xen, par rapport à des solutions de virtualisation native comme VMWare, VirtualPC ou Parallels. Ces solutions offrent presque la même flexibilité d’administration et d’abstraction des machines pour les systèmes d’exploitation.

Ainsi, la virtualisation native, qui simule intégralement le hardware, permet de faire tourner n’importe quelle système sur son hyperviseur, mais au prix de performances globalement moins bonnes que les solutions de para-virtualisation, puisque la traduction est intégrale.

Par contre, un système de para-virtualisation n’expose que l’ABI de l’hyperviseur aux systèmes hôtes, et nécessite donc une modification des systèmes hôtes. Par contre, une fois modifiés, ces hôtes peuvent avoir des performances proche des performances natives, même sous une architecture difficilement virtualisable comme l’est l’Intel x86. Cette vision intéresse le secteur IT parce que le compromis entre choix de systèmes et performance-flexibilité est très avantageux.

Ainsi, Oracle VM et Sun xVM, ont été annoncés il y a quelques semaines, et sont toutes les deux des solutions de virtualisation basées sur l’hyperviseur de Xen.

De même, les divers systèmes d’exploitation professionnels commencent à intégrer ces fonctionnalités de façon native: • NetBSD, un des derniers grands système d’exploitation de type BSD encore en développement vient de sortir une nouvelle version: 4.0. NetBSD 4.0, qui conserve sa stabilité et sa portabilité (plus de 54 plateformes supportées pour cette nouvelle version), met l’accent sur l’intégration du support pour le para-virtualiseur Xen dans sa version 3.

• OpenBSD, célèbre pour sa stabilité et sa sécurité a sorti sa dernière version (4.2), début novembre, en annonçant un meilleur support pour les systèmes multiprocesseurs et multi-cœurs, tout en continuant son support des divers virtualiseurs, commencé l’année dernière.

Linux, dans ses noyaux 2.6.23 (début octobre) et 2.6.24 (release candidate n°5), a ajouté, dans sa branche stable, un hyperviseur simple, lguest, a intégré le support complet de Xen en tant que client et a amélioré le support en tant qu’hôte dans une virtualisation. En outre, Linux, a ajouté un nouvel ordonnanceur « juste » ( pour remplacer celui de la branche 2.6, en O(1) ) afin d’améliorer à la fois la réactivité pour les utilisateurs, mais aussi afin d’ajouter des fonctionnalités pour améliorer les performances sur des système multi-cœurs et pour réordonnancer les tâches par groupes.

• Microsoft Server 2008 a, quant à lui, atteint sa RC1, version de test ouverte à de nombreux professionnels alors que la sortie officielle sera faite courant février. Outre des très nombreuses nouvelles fonctionnalités, l’intégration de « Hyper-V », dont la première version publique vient de sortir, est probablement la fonctionnalité la plus recherchée par les professionnels. Hyper-V est un système 64-bit de virtualisation de type partitionnement de système d’exploitation, qui n’est pas une virtualisation, mais se rapproche plus d’un partitionnement de type chroot, connu dans le monde Unix depuis longtemps.

Jean-Baptiste Kempf