Pas 8 muajsh zhvillimi, është publikuar prototipi i parë i bërthamës së tipit Unix Moss, e cila është pjesërisht e përshtatshme me Linux. Kodi është shkruar në gjuhën Rust me përfshirje assembly dhe shpërndahet nën licencën MIT. Aktualisht, projekti mbështet vetëm arkitekturën Aarch64, mund të ekzekutohet në QEMU dhe është testuar në tabelat Raspberry Pi 4, Jetson Nano, AMD Kria dhe imx8. Sipas zhvilluesve, bërthama mund të portohen lehtësisht për arkitektura të tjera si x86_64 dhe RISC-V, falë një përshkalle që abstruon mbështetje për pajisjet.
Në këtë fazë të zhvillimit, në Moss janë implementuar 51 thirrje sistemore të Linux dhe është siguruar përputhshmëri binarë me aplikacionet për Linux, e mjaftueshme për të ekzekutuar shell-in Bash dhe shumicën e mjeteve të paketës BusyBox. Një karakteristikë e arkitekturës Moss është përdorimi i modelit async/await për të siguruar ekzekutimin asinchron të komponenteve të bërthamës, duke eliminuar klasat kryesore të bllokimeve të ndërsjellta. Të gjitha thirrjet sistemore jo triviale janë realizuar në formën e funksioneve të ekzekutimit asinchron.
Karakteristikat kryesore:
- Sistemi i menaxhimit të memories me mbështetje për faqe të memories në modin CoW (Copy-on-Write), tabela të faqeve të memories, funksione asynkron për kopjimin e memories midis bërthamës dhe hapësirës së përdoruesit, procesimin e përjashtimeve (page fault) nga ana e bërthamës dhe hapësirës së përdoruesit.
- Sistemi i menaxhimit të proceseve me planifikues detyrash dhe mbështetje për migrimin e detyrave përmes IPI (inter-processor interrupt). Mbështetje për degëzimin e proceseve përmes thirrjes clone(). Mundësi për dorëzimin e sinjaleve për proceset dhe thread-e.
- Një shtresë VFS (Sistemi Virtual i Skedhave) që punon asinchron, një pajisje blloku Ramdisk, një drejtues FAT32 dhe pajisja devtmpfs.
- Zgjerimi i funksionalitetit të kryer në bibliotekën libkernel, e cila nuk është e lidhur me arkitekturën harduerike.
- Shtresa HAL (Hardware Abstraction Layer) për të siguruar mbështetje për harduerin.
- Grupi i testeve, i cili përfshin më shumë se 230 teste.
Nga kufizimet e rëndësishme vihet re mungesa e nën-sistemit rrjetë dhe ekzistenca vetëm e një drejtuesi të shkurtuar të sistemit të skedhave, i cili mbështet FS Fat32 në modalitetin vetëm për lexim. Në mesin e detyrave prioritare është përmendur vijimi i realizimit të thirrjeve sistemore të Linux, krijimi i stack-ut TCP/IP, mbështetje për balancimin e ngarkesës në planifikuesin e detyrave dhe sigurimi i një drejtuesi të plotë për sistemin e skedhave (ext2/4).
Burimi: opennet.ru
