Le département Recherche de Microsoft a développé un micro-noyau appelé à servir de point de départ à une future génération de systèmes d’exploitation.


Venant du père du plus répandu des systèmes d’exploitation au monde, penser à ce que sera la prochaine génération de Windows –si on excepte Vista, qui est déjà quasiment finalisé- relève de l’évidence. Pourtant, les développeurs de Redmond nous préparent peut-être une surprise. De taille !

Le nom de Singularity n’évoque pour l’instant rien pour le public, mais cela changera certainement dans un avenir proche, car il désigne l’après-Windows. Qui plus est, ce système d’exploitation, qui n’en est encore qu’au stade d’embryon, n’a plus rien à voir avec la famille des OS précédents de Redmond.

Microsoft Research s’est en effet "amusé" à partir de rien pour concevoir Singularity (d’où son nom '), et les 300.000 lignes de code –c’est peu pour un système d’exploitation- ne doivent absolument rien à Windows.

"Singularity n’est pas un autre Windows" explique Galen Hunt, qui co-préside aux destinées de cet ambitieux projet. Et d’ajouter que Singularity n’a rien d’une marotte ou d’un passe-temps, puisqu’il n’est ni plus ni moins que le plus grand projet de développement pluri-départemental chez Microsoft ; 35 développeurs travaillent dessus à temps plein, et il implique la collaboration des services Systèmes, Réseaux, Compilation, Tests, entre autres, du côté de Redmond.

Pour l’heure, Microsoft ne sait pas très bien sous quelle forme Singularity atterrira sur le marché, ni quand, mais il représente une "base solide et évolutive. Nous pourrions le commercialiser tel quel, ou l’assortir d’autre produits et services. L’avantage de partir d’une feuille blanche est qu’on limite au maximum l’empreinte du système sur la machine."

Singularity présente de plus quelques innovations intéressantes, s’agissant d’un (futur) produit Microsoft : ses SIPs (Software Isolated Processes) fonctionnent en environnement fermé. Deux SIPs ne peuvent pas accéder au même objet (une DLL, par exemple) en même temps, et ils sont créés, ou terminés, par le système d’exploitation selon ses besoins. Ils ne constituent pas des processus permanents, et n’encombrent donc ni l’espace disque, ni la mémoire vive. Ils naissent et meurent au gré des besoins du système, et la plage mémoire qu’ils occupaient est immédiatement récupérée pour un autre usage. Certains spécialistes pensent que cette architecture, imaginée il y a fort longtemps par Xerox, entraînera un ralentissement du système, du fait de sa gestion pointue, mais d’ici la sortie de Singularity, le matériel aura certainement encore progressé.

Une autre particularité de Singularity est qu’il est écrit entièrement en C#, ou en combinaison avec un de ses dérivés, Sing# (qui descend en fait de Spec#, lequel provient de C#).

Cependant, Singularity ne dépend ni du Common Language Runtime de Microsoft, ni de la machine virtuelle Java de Sun Microsystems. Au contraire, il s’appuie sur "Bartok" (nom de code interne), un ensemble compilateur-interface graphique développé par Microsoft Research.

A Redmond, on présente la chose de la façon suivante : "nous avons développé un micro-noyau, comme prévu ; maintenant, il ne nous reste plus qu’à l’entourer de façon intelligente…"



Source : Slashdot