Frame 專案正在開發一個全新的 X 伺服器,該伺服器完全以 NASM 彙編語言編寫,適用於 x86_64 架構,並設計用於在…中運行。 Linux 無外部依賴。與內核交互 Linux包括DRM/KMS和evdev介面在內的所有功能,均直接透過系統呼叫實現,無需使用libc、Mesa和FreeType等函式庫。 Frame的程式碼以公共領域開源。開發工作由人工智慧助手Claude Code協助完成。
該計畫的目標是為 CHasm 桌面實現足夠的 X11 協定擴展。 CHasm 桌面由同一作者開發,同樣使用組合語言編寫。專案最低要求是支援運行標準的 X11 應用程序,包括 Firefox、VS Code、GIMP 和 Inkscape。計劃實現的 X11 擴充功能包括 SHAPE、RENDER、XKB、COMPOSITE、DAMAGE、RANDR、MIT-SHM、XInput2 和 XVideo。
開發分為 14 個階段。該專案目前處於第 7 階段,已具備運行終端和部分 X11 應用程式的基本功能。當所有功能都實現,完全支援 Firefox 時,將進入第 14 階段。目前已宣布,該專案將能夠運行基本的 CHasm 桌面環境、GIMP 和 Firefox(但功能有所限制)。
已實現的功能包括:透過 Unix 套接字接收 X11 請求、透過 DRM/KMS 核心子系統進行軟體渲染、透過 evdev 進行輸入處理、輸入管理 API、支援連接多個 X11 用戶端、用於建立和操作視窗的函數、像素圖操作、原子操作、剪貼簿文字選擇以及 X11 擴充功能 SHAPE、RAN向量渲染圖元、原子視訊模式切換、剪貼簿、鍵盤佈局切換、遊標控制以及 X11 擴展 RENDER、DAMAGE 和 COMPOSITE 尚未實現。
CHasm桌面環境包含約100萬行程式碼,其中包括以組合語言編寫的元件:Tile視窗管理器、Strip狀態列、Bolt螢幕鎖定器、Bare互動式shell和Glass終端模擬器。這些元件已被一個包含gdm、X11伺服器、i3、conky、wezterm和zsh的軟體包所取代。
該開發重點在於最大限度地降低筆記型電腦上的功耗。在空閒模式下,Tile 視窗管理器和 Glass 終端機完全不消耗任何資源,僅在使用者互動時才會啟動。 Frame 在閒置狀態下佔用的 CPU 資源幾乎比 X.Org Server 少三倍。
基於 Frame 和 CHasm 的環境已經足夠穩定,專案作者可以將其用於日常工作。當出現問題或缺少某些功能時,作者會根據需要使用 Claude 來解決。他還在開發一套名為 fe2o3 的命令列實用程序,該程式使用 Rust 編寫,涵蓋了他除網頁瀏覽器之外的所有需求。 fe2o3 包括 Pointer 雙窗格檔案管理器、rush 命令解釋器、Scribe 類別 vim 文字編輯器、Gazette RSS 讀取器、Kastrup 郵件用戶端和即時通訊工具、Tock 日曆規劃器、Crush 設定工具以及 Viewer 文檔檢視器。


來源: opennet.ru
