Frame projekt arendab uut X-serverit, mis on täielikult kirjutatud NASM assembleris x86_64 arhitektuuri jaoks ja on mõeldud töötamiseks Linuxis ilma välistest sõltuvustest. Suhtlemine Linuxi tuumaga, sealhulgas DRM/KMS ja evdev liidesed, toimub otse süsteemi kutsungite kaudu, ilma libc, Mesa ja FreeType teekideta. Frame'i kood on jagatud kui avalik domeen. Arendust toetab AI-abistaja Claude Code.
Projekti eesmärk on rakendada X11 protokolli laiendusi, mis on piisavad CHasm töölaua toimimiseks, mille arendab sama autor ja mis on samuti kirjutatud assembleris. Nõutav minimaalne tugi hõlmab tüüpiliste X11 rakenduste, nagu Firefox, VS Code, GIMP ja Inkscape, käivitamist. Rakendamist ootavate X11 laienduste hulgas on SHAPE, RENDER, XKB, COMPOSITE, DAMAGE, RANDR, MIT-SHM, XInput2 ja XVideo.
Arendus jaguneb 14 etappi. Praegu on projekt 7. etapis, kus on juba rakendatud baasvõimalused terminali ja mõnede X11 rakenduste käivitamiseks. 14. etappi saavutatakse, kui kõik Firefoxiga täieliku töö tegemiseks vajalikud võimed on rakendatud. Praeguses etapis on teatatud CHasm baas töölauda, GIMP-i ja Firefoxi (piirangutega) käivitamise võimalusest.
Juba rakendatud võimaluste hulka kuuluvad: X11 päringute vastuvõtt Unix-soketi kaudu, programmiline renderdamine läbi DRM/KMS tuuma all, sisendi töötlemine evdev'i kaudu, sisendi juhtimise API, mitme X11 kliendi ühendamise tugi, akende loomise ja töötamise funktsioonid, piksli kaartide operatsioonid, atomaarsete operatsioonid, teksti valik lõikelauale, X11 laiendused SHAPE, RANDR, XKB, XInput2 ja MIT-SHM. Veel ei ole rakendatud vektorgraafika primitiive, atomaarset videorežiimi vahetamist, lõikelauad, klaviatuuri paigutuse vahetamist, kursori juhtimist, X11 laiendusi RENDER, DAMAGE ja COMPOSITE.
CHasm töölaud sisaldab umbes 100 000 koodireadat ja sisaldab assembleris kirjutatud komponente: mosaiikne aknahaldur Tile, olekupaneel Strip, lukustuskuva Bolt, interaktiivne shell Bare ja terminali emulator Glass. Arendatud komponente asendatakse gdm, X11 Serveri, i3, conky, wezterm ja zsh kombinatsiooniga.
Arenduse keskmes on energiatarbimise optimeerimine sülearvuti kasutamisel. Oote-režiimis ei kasuta aknahaldur Tile ja terminal Glass üldse ressursse ning aktiveeruvad vaid kasutaja tegevuse korral. Frame oote-režiimis tarbib peaaegu kolm korda vähem CPU ressursse kui X.Org Server.
On väidetud, et Frame ja CHasm põhinev keskkond on juba piisavalt stabiilne igapäevaseks kasutamiseks projekti autori jaoks. Kui esinevad probleemid või midagi on puudu, kaasab autor vajadusel Claude'i ning lahendab puudujäägid. Autor arendab ka fe2o3 nime all tuntud käsurea utiliite, mis on kirjutatud Rustis ning katab kõik tema vajadused, välja arvatud veebibrauser. Fe2o3 hõlmab kaheastmelist failihaldurit Pointer, käsurea tõlkijat rush, vim'i sarnast tekstiredaktorit Scribe, RSS-lugejat Gazette, e-posti klienti ja jututuba Kastrup, kalendri-planeerijat Tock, konfigureerijat Crush ja dokumentide vaatajat Viewer.


Allikas: opennet.ru
