È ora disponibile per la fase di test iniziale un nuovo sistema operativo Essence, fornito con il proprio kernel e interfaccia grafica utente. Il progetto è sviluppato da un appassionato dal 2017, creato da zero e si distingue per il suo approccio originale nella costruzione del desktop e dello stack grafico. La caratteristica più notevole è la possibilità di dividere le finestre in schede, consentendo di lavorare in un'unica finestra contemporaneamente con più programmi e raggruppando le applicazioni in base ai compiti da svolgere. Il codice del progetto è scritto in C++ ed è distribuito con licenza MIT.

Il gestore di finestre opera a livello di kernel del sistema operativo, mentre l'interfaccia è creata tramite una propria libreria grafica e un motore vettoriale software che supporta effetti animati complessi. L'interfaccia è completamente vettoriale e si scala automaticamente per tutte le risoluzioni dello schermo. Tutte le informazioni sui stili sono memorizzate in file separati, consentendo di cambiare facilmente l'aspetto delle applicazioni. Per il rendering software si utilizza codice da Mesa. È supportato il funzionamento con più lingue, mentre per il rendering dei caratteri sono utilizzati FreeType e Harfbuzz.

Il kernel include uno scheduler di attività con supporto per più livelli di priorità, un sottosistema di gestione della memoria con supporto per memoria condivisa, mmap e gestore di pagine di memoria multithread, uno stack di rete (TCP/IP), un sottosistema audio per il mixaggio dei suoni, VFS e un file system EssenceFS con un layer separato per la memorizzazione nella cache dei dati. Oltre al proprio file system, sono forniti driver per Ext2, FAT, NTFS e ISO9660. È supportata l'estrazione di funzionalità in moduli con la possibilità di caricare questi moduli all'occorrenza. I driver sono preparati per ACPI con ACPICA, IDE, AHCI, NVMe, BGA, SVGA, HD Audio, Ethernet 8254x e USB XHCI (dispositivi di archiviazione e HID).
La compatibilità con le applicazioni di terze parti è raggiunta tramite un'interfaccia POSIX, sufficiente per eseguire GCC e alcune utility di Busybox. Tra le applicazioni portate per Essence si segnalano la libreria C Musl, l'emulatore Bochs, GCC, Binutils, FFmpeg e Mesa. Tra le applicazioni grafiche create appositamente per Essence si evidenziano un gestore di file, un editor di testo, un client IRC, un visualizzatore di immagini e un monitor di sistema.

Il sistema può funzionare su hardware obsoleto con meno di 64 MB di RAM e occupa circa 30 MB di spazio su disco. Per risparmiare risorse, viene eseguita solo l'applicazione attiva, mentre tutti i programmi in background vengono sospesi. Il caricamento richiede solo pochi secondi e lo spegnimento avviene quasi istantaneamente. Il progetto pubblica quotidianamente nuove build pronte per il test in QEMU.

Fonte: opennet.ru
