SerenityOS-projekti kehittää Unix-tyyppisen käyttöjärjestelmän, jossa on graafinen käyttöliittymä

Projektin rajoissa Tyyneys Joukko harrastajia kehittää x86-arkkitehtuurille Unix-tyyppistä käyttöjärjestelmää, joka on varustettu omalla ytimellään ja graafisella käyttöliittymällä, joka on suunniteltu 1990-luvun lopun käyttöjärjestelmien tyyliin. Kehitys tehdään tyhjästä, mielenkiinnon vuoksi, eikä se perustu olemassa olevien käyttöjärjestelmien koodiin. Samalla tekijät asettivat tavoitteekseen nostaa SerenityOS:n jokapäiväiseen työhön sopivalle tasolle, säilyttäen 90-luvun lopun järjestelmien estetiikkaa, mutta täydentämällä sitä hyödyllisillä ideoilla kokeneille käyttäjille nykyaikaisista järjestelmistä. Koodi on kirjoitettu C++ ja toimitetaan BSD-lisenssillä.

Hanke on hyvä esimerkki siitä, että asettamalla tietty tavoite ja pikkuhiljaa päivä kerrallaan siirtyä eteenpäin harrastuksena voit luoda täysin toimivan käyttöjärjestelmän ja osallistua siihen samanmielinen. Muita saman kirjoittajan projekteja ovat mm. tietokone, PC-emulaattori, jossa on i2003-prosessori, jota on kehitetty vuodesta 386 lähtien.

SerenityOS-projekti kehittää Unix-tyyppisen käyttöjärjestelmän, jossa on graafinen käyttöliittymä

Nykyisessä kehitysvaiheessa saatavilla olevat ominaisuudet:

  • Ennaltaehkäisevä moniajo;
  • Monisäikeinen;
  • Komposiitti- ja ikkunapalvelin WindowServer;
  • Oma kehys graafisten sovellusten kehittämiseen LibGUI joukolla widgetejä;
  • Ympäristö sovellusrajapintojen visuaalista suunnittelua varten;
  • Verkkopino, joka tukee ARP:tä, TCP:tä, UDP:tä ja ICMP:tä. Oma DNS-selvittäjä;
  • Ext2-pohjainen tiedostojärjestelmä (oma toteutus C++:ssa);
  • Unix-tyyppinen standardi C-kirjasto (LibC) Ja setti tyypilliset käyttäjäapuohjelmat (cat, cp, chmod, env, kill, ps, ping, su, sort, strace, uptime jne.);
  • Komentorivikuori, jossa on tuki putkille ja I/O-uudelleenohjaukselle;
  • Tuki mmap()- ja suoritettaville tiedostoille ELF-muodossa;
  • pseudo-FS /proc läsnäolo;
  • Tuki paikallisille Unix-pistokkeille;
  • Tuki pseudopäätteille ja /dev/pts;
  • kirjasto LibCore kehittää tehokkaita tapahtumakäsittelijöitä (Event Loop);
  • SDL-kirjaston tuki;
  • PNG-kuvan tuki;
  • Joukko sisäänrakennettuja sovelluksia: tekstieditori, tiedostonhallinta, useita pelejä (Minesweeper ja Snake), käyttöliittymä ohjelmien käynnistämiseen, fonttieditori, tiedostojen lataushallinta, pääteemulaattori;

Lähde: opennet.ru

Lisää kommentti