Frame - Assembly-ben írt X szerver implementáció saját igények kielégítésére
HUP
2026-07-17 06:43
A csávó a saját igényeit kielégítendő írt egy X szerver implementációt Assembly-ben , a Claude segítségével vibe kódolva. Állítja, az AI segítségével már most sokkal többet tanult, mint amennyit valaha tervezett :
A szoftvereim birtoklására irányuló törekvésem során egy alapvető dolog folyamatosan zavart… az X szerver. A felszín alatt működő grafikus motor, az a dolog, amely a pixeleket a képernyőre teszi. Az X11 négymillió sornyi kód, egy szörnyeteg, amelyről nagyon kevesen állíthatják, hogy értik. Ezért az észszerű dolgot tettem. Megírtam a sajátomat Assemblyben.
A neve frame . Nincsenek függőségek, nincsenek könyvtárak, nincs garbage collector. Nincsenek forró kódútvonalak, nincsenek szükségtelen ébresztések. Amikor tétlen, mozdulatlanul ül. Hallgat, amíg meg nem szólítják. Az én fajta szoftverem. Körülbelül húszezer sornál jár és már most futtatja a teljes desktopomat, valamint a Firefoxot és a GIMP -et, amikor szükségem van rájuk. Még fiatal és az X protokollból még hosszú lista vár feldolgozásra. De elindul, rajzol és ezt most ezen gépelem.
Így a stack most így néz ki: legalul a Linux kernel. Rajta a frame. Aztán a tile ablakkezelő az információs strip sávval. A tile-on belül fut a glass terminál és a glassban él a bare shell. A Boltot képernyőzárolóból greeterként léptettem elő és megmutattam a gdm-nek az ajtót. Az egész Assembly. A teljes CHasm együtt körülbelül százezer sor. Az általa leváltott stack (gdm, X11, i3, conky, wezterm, zsh) valahol ennek az ötvenszerese fölött van. Az akkumulátoros üzemidő miatt csináltam. Már nem vagyok biztos benne, hogy ennek a laptopnak van fan-ja (ventilátor). Rajtam kívül.
Ma számokat is rendeltem hozzá. Akkumulátorról tétlenül a frame és az Xorg ugyanannyi wattot vesz fel, mert ezt az értéket egyébként is a kijelzőpanel és a wifi határozza meg. De az Xorg majdnem háromszor annyi CPU-t használ a semmittevéshez, mint amennyire a frame-nek szüksége van. A tile és a glass pedig nulla milliszekundumot használt három perc mérés alatt. A desktop teljesen mozdulatlanul ül, amíg hozzá nem érek.
A desktopon túl ott van a Rust eszközökből álló Fe₂O₃ csomagom, amely mostanra minden mást leváltott, amit korábban futtattam. A Firefox kivételével. Ez az utolsó megmaradt GUI, amelyet rendszeresen használok. Minden más terminálos felület, mindenhol ugyanazokkal a billentyűparancsokkal és töredéknyi mérettel és elektromos étvággyal ahhoz képest, amit leváltottak.
De stabil? Eléggé stabil ahhoz, hogy naponta használjam, ezt a bejegyzést ezen írjam és csak alkalmanként kiabáljak. Amikor valami elromlik vagy szeretnék egy funkciót, a haveromhoz, Claude -hoz fordulok és leírom, mi zavar. Soha nem fárad el, nincsenek határozott véleményei és mint kiderült, nagyon jó tanár. Most már többet tudok a hardverrétegekről, a kurzor kirajzolásáról, a GPU-átadásokról és az eseményfigyelőkről, mint amennyit valaha terveztem.
A telefon ugyanilyen kezelést kapott , saját launcherrel, napi személyre szabott hírösszefoglalóval és egy rakás alkalmazással, amelyek pontosan egyfős közönségre vannak szabva.
Az előny egyszerű. Megvan, amire szükségem van és amit akarok. Én irányítom és birtoklom a szoftvert és az egészet Public Domainként adom közre. A nagy közönség számára tervezett szoftver mindenkire egy kicsit illik. Ez pontosan egy emberre illik.
Frame: A New X11 Server Implementation Written Entirely In x86_64 Assembly https://t.co/tugvUVCirY
— Phoronix (@phoronix) July 17, 2026
(A cikk nyomokban Mesterséges Intelligencia által szolgáltatott adatokat tartalmaz, így a tartalmát érdemes duplán ellenőrizni!)