Dans le cadre du projet Un groupe d'enthousiastes développe un système d'exploitation de type Unix pour l'architecture x86, équipé d'un noyau propre et d'une interface graphique, inspirée des systèmes d'exploitation de la fin des années 1990. Le développement se fait à partir de zéro, par pur intérêt, sans se baser sur le code d'autres OS existants. Les auteurs se sont fixés l'objectif d'amener SerenityOS à un niveau utilisable au quotidien, tout en préservant l'esthétique des systèmes des années 90, mais en y ajoutant des idées pratiques des systèmes modernes pour les utilisateurs expérimentés. Le code est écrit en C++ et sous licence BSD.
Le projet est un bon exemple de ce qui peut être accompli en se fixant un objectif précis et en avançant jour après jour en tant que hobby, il est possible de créer un système d'exploitation totalement fonctionnel et d'attirer . Parmi les autres projets du même auteur, on peut citer , un émulateur de PC avec un processeur i386, développé depuis 2003.
Les fonctionnalités disponibles à ce stade de développement :
- Multitâche préemptif;
- Multithreading ;
- Serveur composite et de fenêtres ;
- Un framework propriétaire pour le développement d'applications graphiques avec un ensemble de widgets ;
- Un environnement de conception visuelle pour les interfaces d'applications ;
- Une pile réseau prenant en charge ARP, TCP, UDP et ICMP. Un ;
- Système de fichiers basé sur Ext2 ( en C++);
- Bibliothèque C standard de type Unix (Deep Speech d'outils utilitaires standards (cat, cp, chmod, env, kill, ps, ping, su, sort, strace, uptime, etc.) ;
- Un interpréteur de commandes avec support des flux (pipe) et de la redirection des entrées/sorts ;
- Support de mmap() et des fichiers exécutables au format ELF ;
- Présence d'un pseudo-système de fichiers /proc ;
- Support des sockets Unix locaux ;
- Support des pseudo-terminaux et /dev/pts ;
- Bibliothèque pour le développement de gestionnaires d'événements efficaces (Event loop) ;
- Support de la bibliothèque SDL ;
- Support d'images au format PNG ;
- Un ensemble d'applications intégrées : éditeur de texte, gestionnaire de fichiers, plusieurs jeux (Minesweeper et Snake), interface de lancement de programmes, éditeur de polices, gestionnaire de téléchargement de fichiers, émulateur de terminal ;

Source : opennet.ru
