20 systèmes libres méconnus
Ou en tout cas moins connus que les systèmes dominants à base de noyau Linux ou issus de la famille BSD.
Eh oui, Beastie et Tux ne sont pas seuls dans le monde des OS libres, il existe nombre de systèmes consacrés à la recherche, à l'expérimentation, à des usages particuliers, pas encore aboutis, tout simplement méconnus ou encore des clones de systèmes propriétaires parfois disparus. Mes marque-pages étant bien garnis à ce niveau là (j'y peux rien j'aime bien les OS et leur histoire ), je vous propose un tour d'horizon de 20 systèmes libres, en s'attardant brièvement sur les propriétés de chacun.
Certains sont des systèmes couramment utilisés, d'autres sont obsolètes, d'autres dédiés à la recherche, certains ont une interface graphique, d'autres pas, certains ne sont que des hobbies d'autres sont destinés à devenir pleinement fonctionnels, enfin certains sont à l'abandon (mais puisque c'est libre rien ne vous empêche de reprendre vous-même le développement), bref, il y a de tout. Je les ai plus ou moins triés par catégories mais certains pourraient tout à fait se trouver dans plusieurs catégories.
La plupart d'entre-eux sont installables sur une machine de type x86 (PC) ou dans un émulateur (par exemple qemu).
Je ne les ai pas tous testé donc je ne garanti par leur bon fonctionnement et d'une manière générale ne peut être tenu responsable des conneries que vous allez faire si vous les installez . Je vous conseille notamment de tester Syllable et Haïku (et FreeDOS pour les nostalgiques). Et surtout, si vous avez des liens à me filer vers d'autres systèmes libres, je prend.
L'ancêtre
Multics
Utilisation : Mainframe
Développement actif : Non
Utilisable sur PC : Non
Interface graphique : Non
Multics est l'ancêtre spirituel d'UNIX (avec lequel il a des similitudes mais dont il diffère largement sur d'autres points). En 2007, la société Bull a mis à disposition le code source d'une des versions de Multics sous licence libre. Preuve de sa robustesse, le dernier système Multics fut éteint en 2000, soit environ 45 ans après la création du système. Multics apporta de nombreuses innovations, dont l'organisation hiérarchique des fichiers, toujours utilisée aujourd'hui sur la plupart des systèmes. Il souffrait néanmoins d'une trop grande complexité, ce qui a conduit à la création d'UNIX.
Les UNIX-like
Plan 9
Utilisation : Recherche
Développement actif : Oui
Utilisable sur PC : Oui
Interface graphique : Oui
Plan 9 est un système de recherche conçu à l'origine par Bell labs comme le successeur d'UNIX. Parmis ses particularités, on notera l'usage intensif de fichiers comme interfaces pour accéder à de nombreux éléments tels que les interfaces réseau ou l'interface utilisateur, repoussant ainsi les limites de l'idée d'UNIX selon laquelle "tout est fichier". Plan 9 n'a pas succédé aux systèmes UNIX mais certains concepts et applications y ont été portés, tels que le répertoire /proc qui sous Linux contient des informations sur les processus en cours d'exécution.
Inferno
Utilisation : Systèmes distribués/réseau
Développement actif : Oui
Utilisable sur PC : Oui
Interface graphique : Oui
Inferno est un système d'exploitation distribué basé sur Plan 9 et utilisant le langage Limbo. Sa sécurité repose sur l'utilisation d'une machine virtuelle, un peu comme pour les systèmes écrits en Java ou en C# présentés ci-dessous.
Syllable
Utilisation : Ordinateur de bureau
Développement actif : Oui
Utilisable sur PC : Oui
Interface graphique : Oui
Facilité d'utilisation pour le débutant : Facile
Syllable est un UNIX-like "user-friendly", faisant la part belle à l'interface graphique (il ne permet pas de basculer en ligne de commande pure), reprenant un certain nombre de bonnes idées issues d'autres systèmes (installation des logiciels à la MacOS X/BeOS, utilisation de méta-données avec un système de fichiers, AFS, dérivé du BFS de BeOS). Pas encore en version 1.0, il ne possède qu'un nombre restreint d'applications (bien qu'il y ait un navigateur Web, un client mail, des jeux etc) mais est déjà traduit en Français, fonctionnel sur du multi-processeurs et capable de faire tourner beaucoup d'applications POSIX. J'y ai déjà consacré un billet. Il est très facilement testable à partir du live CD. Notez qu'il existe une version serveur basée sur le noyau Linux.
UnixLite
Utilisation : Générique/embarqué/enseignement
Développement actif : ? (semble abandonné)
Utilisable sur PC : Oui
Interface graphique : Non
Un UNIX écrit en C++ qui comme son nom l'indique se veut léger. Il peut servir de base à l'apprentissage de la programmation de systèmes d'exploitation.
PureDarwin
Utilisation : Générique
Développement actif : Oui
Utilisable sur PC : Oui
Interface graphique : Oui
PureDarwin se base sur Darwin, le système qui sert de base à Mac OS X et qu'Apple publie sous licence libre (sans la couche graphique ni les applications bien entendu).
Le projet a pour but de faciliter l'utilisation de Darwin, en fournissant images ISO etc.
Les clones
Haiku
Utilisation : Ordinateur de bureau
Développement actif : Oui
Utilisable sur PC : Oui
Interface graphique : Oui
Facilité d'utilisation pour le débutant : Facile
Haiku a pour but de faire renaître BeOS, un système considéré par certains comme révolutionnaire (novateur serait plus approprié) et très user-friendly dans les années 1990. Il s'agit d'un projet ambitieux et actif qui comporte plus de sept millions de lignes de code. Le système approche tranquillement mais surement de sa première release qui cherche à conserver la compatibilité binaire avec les applications BeOS. L'interface graphique est assez démodée à première vue et il manque des fonctionnalités indispensables (sécurité !) mais le développement avance relativement vite et le projet est prometteur. Les innovations devraient s'accélérer après la sortie de la première version, car la compatibilité avec BeOS ne sera plus recherchée et le nombre de contributeurs devrait augmenter. Haïku a, comme l'année passée, vu plusieurs projets acceptés au Google Summer of Code.
FreeVMS
Utilisation : ?
Développement actif : ?
Utilisable sur PC : Oui
Interface graphique : Non
FreeVMS a pour but d'être un clone libre d'OpenVMS, système aujourd'hui développé par HP et utilisé en entreprise où il a longtemps été un concurrent sérieux des systèmes UNIX (ses performances ont à une époque poussé BSD à améliorer les siennes).
AROS
Utilisation : Ordinateur de bureau
Développement actif : Oui
Utilisable sur PC : Oui
Interface graphique : Oui
Facilité d'utilisation pour le débutant : Facile
AROS est un clone d'AmigaOS auquel il apporte certaines améliorations. C'est un OS à interface graphique, qui comme son modèle cherche à être user-friendly. Un projet est en cours pour lui intégrer un émulateur permettant de lancer les applications AmigaOS.
FreeDOS
Utilisation : Générique/rétro
Développement actif : Oui
Utilisable sur PC : Oui
Interface graphique : Non
Facilité d'utilisation pour le débutant : Assez facile
FreeDOS est un système compatible DOS (MS-DOS et autres), permettant donc de lancer des programmes conçus pour DOS mais également d'utiliser certains matériels plus facilement qu'avec MS-DOS (car celui-ci n'est plus maintenu depuis longtemps). Idéal donc si vous souhaitez retrouver les sensations que procure DOS (pas de multi-session, pas de sécurité, pas de multi-tâches : que de liberté) tout en rejouant à vos vieux jeux (tout y est, même cette saloperie de limite des 640 Ko qui nécessite une conf spéciale pour être dépassée, même si ici la conf par défaut convient). Notez qu'il existe des interfaces graphiques compatibles, parmi lesquelles des interfaces libres (Google est votre ami j'ai la flemme de chercher) ou... Windows 3.1 .
ReactOS
Utilisation : Générique
Développement actif : Oui
Utilisable sur PC : Oui
Interface graphique : Oui
Facilité d'utilisation pour le débutant : Facile
ReactOS est un clone de Windows sous GPL. Encore loin d'être abouti, il devrait permettre de bénéficier non-seulement de la compatibilité avec les applications (il utilise les API mises au point pour Wine) mais aussi de la compatibilité matérielle. Malheureusement il souffre des défauts de son modèle (Windows, pour ceux qui ne connaitraient pas, est une grosse bouse pleine de bugs, de failles, d'incohérences, dotée d'une interface graphique à peu près potable basée sur des API crades et vieillissantes et d'un noyau dont la révélation d'une partie du code en 2000 a confirmé ce que l'on craignait : il est bon à jeter ). On retrouvera donc les plantages aléatoires, écrans bleus et autres joies du monde Microsoft, mais en libre... J'ajouterai qu'affin de rester compatible avec Windows, ReactOS est condamné à toujours être en retard sur celui-ci et ne peut innover. Bref, je suis pas très fan... Il faut cependant reconnaitre que le travail réalisé jusque là est considérable.
Les systèmes à micro-noyau
Les systèmes suivants utilisent un micro-noyau au lieu d'un noyau monolithique (voir Wikipédia : noyau de système d'exploitation).
MINIX 3
Utilisation : Générique
Développement actif : Oui
Utilisable sur PC : Oui
Interface graphique : Oui
Minix fut à l'origine créé par Andrew Tanenbaum (chercheur et enseignant en informatique) comme un outil pédagogique. Linus Torvalds s'en est inspiré pour créer Linux, en faisant le choix d'un noyau monolithique et non d'un micro-noyau. Or, Tanenbaum considère que l'avenir est aux micro-noyaux et a donc critiqué le choix de Linus. S'en est suivi un long débat par mail entre les deux intéressés, qui reste célèbre. Tanenbaum a conçu Minix 3 pour faire la démonstration qu'un système à micro-noyau pouvait fonctionner et remplir les mêmes tâches qu'un système à noyau monolithique. Minix 3 est donc un UNIX-like léger à micro-noyau permettant de faire tourner nombre d'applications UNIX.
GNU Hurd
Utilisation : Générique
Développement actif : Oui
Utilisable sur PC : Oui
Interface graphique : Oui
Le Hurd devait être le noyau qui allait permettre au projet GNU de constituer un système d'exploitation complet (avant cela, il avait été envisagé d'utiliser un système basé sur BSD, mais l'idée fut abandonnée). Devant la lenteur de son développement, le Hurd fut dans les faits remplacé par Linux. En effet, le Hurd se base sur une architecture à micro-noyau complexe, qui place les fonctions importantes du système dans des services réduisant la taille du noyau au minimum, et cet architecture pose problème, si bien que le développement dure depuis près de 20 ans (et le faible nombre de contributeurs actuel n'améliore pas les choses). D'après ce qu'a dit Stallman lors de son discours rcent à Sopia Antipolis, le Hurd a besoin de "quelqu'un d'intelligent" qui puisse résoudre ses problèmes pour avancer. D'après Linus Torvalds, dire non aux drogues permettrait de ne pas "finir comme les gens du Hurd". Il existe toutefois une variante de la distribution Debian basée sur le Hurd, Debian GNU/Hurd.
Les systèmes en Java et en C#
JNode
Utilisation : Générique
Développement actif : Oui
Utilisable sur PC : Oui
Interface graphique : Oui
JNode a la particularité d'être entièrement programmé en Java (à part un peu d'assembleur). En gros, c'est une machine virtuelle Java à laquelle ont été ajoutés les composants nécessaires pour en faire un OS complet. GJC est utilisé pour compiler le code Java lorsque nécessaire, le reste est du bytecode interprété par la machine virtuelle. Cette approche permet, grâce à l'utilisation de code managé, de résoudre certains problèmes de sécurité au niveau de la mémoire.
SharpOS
Utilisation : Générique
Développement actif : Oui
Utilisable sur PC : Oui
Interface graphique : Non
En gros c'est la même chose que JNode mais en C# (Mono/.Net). À noter : Microsoft fait également des recherches dans ce domaine avec un système nommé Singularity, dont le code est disponible en "shared source" (terme inventé mar Microsoft pour prêter à confusion avec open source, qui signifie en fait que le code est visible mais en aucun cas libre).
Les autres
MonaOS
Utilisation : Générique
Développement actif : Oui
Utilisable sur PC : Oui
Interface graphique : Oui
Facilité d'utilisation pour le débutant : Facile
Un OS à interface graphique, léger et pouvant servir de base à l'apprentissage de la programmation de systèmes d'exploitation. Je l'ai testé, j'ai sans problème pu lancer quelques applications mais pour le reste c'est du Japonais alors...
O3ONE
Utilisation : Générique
Développement actif : Non (?)
Utilisable sur PC : Oui
Interface graphique : Non
Un système orienté objet, tentant de reprendre les avantages d'UNIX, VMS et Windows. Le développement à l'air abandonné.
CapROS
Un système utilisant les capabilities pour améliorer la sécurité.
NewOS
Utilisation : Générique
Développement actif : Non (?)
Utilisable sur PC : Oui
Interface graphique : Non
Un système en C/C++ recherchant la portabilité et se concentrant sur le design (au sens technique du terme). Il a servit de base à Haïku. Il explore certaines possibilités de la conception de système moderne et peut servir à l'enseignement.
Si ce billet plait il y en aura d'autres, j'ai pas épuisé tous mes liens .