Show HN:Anos —— 一款為 x86-64 與 RISC-V 設計的 100KiB 手寫微核心作業系統
Anos 是一款為 x86-64 與 RISC-V 架構開發的現代化、非 POSIX 業餘愛好微核心作業系統,目前已支援搶佔式多工處理並能在真實硬體上運行。
背景
這篇討論源於開發者 Ross Bamford 在 Hacker News 上分享他持續開發兩年的業餘作業系統專案 Anos。這是一個僅約 100KiB 的微核心作業系統,專為 x86-64 與 RISC-V 架構設計,目前已具備多工處理、對稱多處理(SMP)以及在真實硬體上運行的能力。作者強調這是一個非 POSIX 標準的現代化實驗性系統,旨在探索微核心設計與能力導向的安全性架構。
社群觀點
社群對此專案展現了高度的興趣與敬意,特別是針對作者「純手寫」的堅持。在當前生成式 AI 盛行的開發環境下,作者明確表示核心程式碼嚴禁使用 AI 生成,僅將其用於測試與文件撰寫。這一立場引發了關於學習價值的深入討論。有留言者認為,親手實作分頁表管理與虛擬記憶體介面,能讓人真正理解底層運作邏輯,這是將任務外包給大型語言模型所無法獲得的深度知識。社群共識認為,即便在 AI 時代,這類專案對於個人成長與技術傳承仍具有極高的實用價值,不應被視為過時的產物。
關於系統架構,討論焦點集中在 Anos 的設計靈感。作者透露其能力導向機制參考了 seL4 的概念但進行了簡化,而訊息傳遞 IPC 與避免優先權反轉的設計則借鑑了 QNX。這種非 POSIX 的設計選擇受到不少開發者的青睞,認為這給予了開發者跳脫傳統框架、探索新介面設計的自由。此外,專案中對 x86-64 與 RISC-V 保持功能對等的開發策略也獲得肯定,這展現了開發者在跨架構抽象化上的嚴謹態度。
有趣的是,專案名稱「Anos」在西班牙語中意外引發了討論,因為該詞彙在西語中具有尷尬的諧音含義,這成為留言區一個輕鬆的插曲。然而,這並未掩蓋技術上的討論熱度。許多人對作者在介紹中引用 Linus Torvalds 當年發布 Linux 時的經典名言「這只是一個嗜好,不會像 GNU-Linux 那樣大而專業」感到會心一笑。針對未來的發展,作者表示目前的目標是實現 USB HID 支援以增強互動性,並最終希望達成系統的「自我託管」,即在 Anos 上編譯 Anos 自身。
延伸閱讀
在討論中,除了 Anos 專案本身,留言者也提到了作者過去的其他作品,例如針對 68000 處理器的 rosco-m68k 電腦專案。此外,對於想要深入研究微核心設計的人,留言中提到的 seL4 與 QNX 也是重要的參考對象。針對開發工具,專案所使用的自定義工具鏈(基於 GCC 16 實驗版與 Newlib)以及用於 x86 模擬的 Bochs 也是底層開發者值得關注的資源。