The SerenityOS project develops a Unix-like OS with a graphical interface

The project Serenity a group of enthusiasts is developing a Unix-like operating system for the x86 architecture, equipped with its own kernel and graphical interface, designed in the style of operating systems of the late 1990s. Development is carried out from scratch, for the sake of interest and is not based on the code of existing operating systems. At the same time, the authors set themselves the goal of bringing SerenityOS to a level suitable for everyday work, retaining the aesthetics of the systems of the late 90s, but supplementing it with useful ideas for experienced users from modern systems. The code is written in C++ and supplied under the BSD license.

The project is a good example of the fact that by setting a specific goal and day by day, little by little moving forward as a hobby, you can create a fully functional OS and involve like-minded people. From other projects of the same author, one can note Computron, developed since 2003, is a PC emulator with an i386 processor.

The SerenityOS project develops a Unix-like OS with a graphical interface

Features available at the current stage of development:

  • Preemptive multitasking;
  • Multithreading;
  • Composite and window server Windows Server;
  • Own framework for developing graphic applications LibGUI with a set of widgets;
  • Environment for visual design of application interface;
  • Network stack supporting ARP, TCP, UDP and ICMP. Own DNS resolver;
  • File system based on Ext2 (own implementation in C++);
  • Unix-like standard C library (libc) and set typical user utilities (cat, cp, chmod, env, kill, ps, ping, su, sort, strace, uptime, etc.);
  • Command line shell with support for streams (pipe) and I/O redirection;
  • Support for mmap() and executable files in ELF format;
  • Presence of pseudo-FS /proc;
  • Support for local Unix sockets;
  • Support for pseudo-terminals and /dev/pts;
  • Library libcore to develop efficient event handlers (Event loop);
  • SDL library support;
  • PNG image support;
  • A set of built-in applications: a text editor, a file manager, several games (Minesweeper and Snake), an interface for launching programs, a font editor, a file download manager, a terminal emulator;

Source: opennet.ru

Add a comment