Le projet SerenityOS développe un OS de type Unix avec une interface graphique

Dans le cadre du projet Serenity Un groupe de passionnés développe un système d'exploitation de type Unix pour l'architecture x86, équipé de son propre noyau et de sa propre interface graphique, conçu dans le style des systèmes d'exploitation de la fin des années 1990. Le développement est réalisé à partir de zéro, par souci d'intérêt et ne s'appuie pas sur le code des systèmes d'exploitation existants. Dans le même temps, les auteurs se sont fixés pour objectif d'amener SerenityOS à un niveau adapté au travail quotidien, en préservant l'esthétique des systèmes de la fin des années 90, mais en le complétant par des idées utiles pour les utilisateurs expérimentés des systèmes modernes. Le code est écrit en C++ et fourni sous licence BSD.

Le projet est un bon exemple du fait qu'en se fixant un objectif précis et petit à petit, jour après jour avancer en tant que passe-temps, vous pouvez créer un système d'exploitation entièrement fonctionnel et impliquer personnes partageant les mêmes idées. D'autres projets du même auteur incluent : ordinateur, un émulateur PC avec un processeur i2003 en développement depuis 386.

Le projet SerenityOS développe un OS de type Unix avec une interface graphique

Fonctionnalités disponibles au stade actuel de développement :

  • Multitâche préemptif ;
  • Multithreading ;
  • Serveur composite et Windows WindowServer;
  • Propre framework pour développer des applications graphiques LibGUI avec un ensemble de widgets ;
  • Environnement de conception visuelle d'interfaces d'applications ;
  • Pile réseau prenant en charge ARP, TCP, UDP et ICMP. Propre Résolveur DNS;
  • Système de fichiers basé sur Ext2 (propre mise en œuvre en C++);
  • Bibliothèque C standard de type Unix (LibC) Et définir utilitaires utilisateur typiques (cat, cp, chmod, env, kill, ps, ping, su, sort, strace, uptime, etc.) ;
  • Shell de ligne de commande avec prise en charge des tuyaux et de la redirection d'E/S ;
  • Prise en charge de mmap() et des fichiers exécutables au format ELF ;
  • Présence du pseudo-FS /proc ;
  • Prise en charge des sockets Unix locaux ;
  • Prise en charge des pseudo-terminaux et de /dev/pts ;
  • bibliothèque LibCore développer des gestionnaires d'événements efficaces (boucle d'événements) ;
  • Prise en charge de la bibliothèque SDL ;
  • Prise en charge des images PNG ;
  • Un ensemble d'applications intégrées : éditeur de texte, gestionnaire de fichiers, plusieurs jeux (Démineur et Snake), interface de lancement de programmes, éditeur de polices, gestionnaire de téléchargement de fichiers, émulateur de terminal ;

Source: opennet.ru

Ajouter un commentaire