Nowa wersja systemu operacyjnego Essence, z własnym jądem i interfejsem graficznym, jest dostępna do wstępnego testowania. Projekt rozwijany jest przez jednego entuzjastę od 2017 roku, stworzony od podstaw i wyróżniający się unikalnym podejściem do budowy pulpitu oraz stosu graficznego. Najbardziej zauważalną cechą jest możliwość dzielenia okien na zakładki, co pozwala na jednoczesną pracę z wieloma aplikacjami w jednym oknie i grupowanie aplikacji według zadań. Kod projektu napisany jest w języku C++ i udostępniany na licencji MIT.

Menadżer okien działa na poziomie jądra systemu operacyjnego, a interfejs tworzony jest za pomocą własnej biblioteki graficznej i wektorowego silnika, obsługującego skomplikowane efekty animowane. Interfejs jest w pełni wektorowy i automatycznie skalowany dla dowolnych rozdzielczości ekranu. Wszystkie informacje o stylach są przechowywane w osobnych plikach, co ułatwia zmianę wyglądu aplikacji. Do programowego renderowania OpenGL używany jest kod z Mesa. Obsługuje wiele języków, a do renderowania czcionek wykorzystano FreeType i Harfbuzz.

Jądro zawiera planer zadań z obsługą wielu poziomów priorytetów, podsystem zarządzania pamięcią z obsługą pamięci dzielonej, mmap oraz wielowątkowy procesor stron pamięci, stos sieciowy (TCP/IP), podsystem dźwiękowy do miksowania dźwięków, VFS oraz system plików EssenceFS z osobną warstwą do buforowania danych. Oprócz własnego systemu plików, dostępne są sterowniki dla Ext2, FAT, NTFS oraz ISO9660. Obsługiwane jest przenoszenie funkcjonalności do modułów z możliwością ładowania takich modułów w razie potrzeby. Sterowniki są przygotowane dla ACPI z ACPICA, IDE, AHCI, NVMe, BGA, SVGA, HD Audio, Ethernet 8254x oraz USB XHCI (urządzenia pamięci i HID).
Kompatybilność z aplikacjami stron trzecich osiągana jest dzięki warstwie POSIX, wystarczającej do uruchomienia GCC i części narzędzi Busybox. Wśród przeniesionych aplikacji dla Essence uwagę zwracają biblioteka C Musl, emulator Bochs, GCC, Binutils, FFmpeg oraz Mesa. Do aplikacji graficznych stworzonych specjalnie dla Essence należą menadżer plików, edytor tekstu, klient IRC, przeglądarka obrazów oraz monitor systemowy.

System działa na przestarzałym sprzęcie z mniej niż 64 MB RAM i zajmuje około 30 MB miejsca na dysku. Aby oszczędzać zasoby, uruchamiane jest tylko aktywne aplikacja, a wszystkie programy w tle są wstrzymywane. Ładowanie trwa zaledwie kilka sekund, a zamykanie odbywa się niemal natychmiast. Projekt codziennie publikuje nowe gotowe wersje do testowania w QEMU.

Źródło: opennet.ru
