這是用曲折編程語言編寫的開源操作系統項目。
Bamos不會引入新的標準,而是為實施現有標準的最佳實施而努力。
該項目的主要功能和目標是盡可能多地使用文獻,簡潔和簡單的代碼庫來開發輕巧且非常快速的操作系統。
它旨在同時包括內核和用戶空間(GNU/Linux,Windows NT等)之間多個系統ABI的本機支持。這應該顯著改善用戶體驗並簡化軟件開發人員的工作。

儘管C/C ++或可能更安全的生鏽等熟悉且已建立的語言,但我們的選擇是Zig。
Zig足夠簡單,可以比Rust更加可維護,同時提供了C/C ++的更安全,更有用的替代方案。 Zig允許生成高速和優化的機器代碼,其主要優點之一是構建系統,這使得編譯過程變得無縫且非常簡單。
要創建一個內核可執行文件,您只需要就是源代碼,ZIG編譯器和命令zig build kernel 。
一般的操作系統文檔可在此頁面上可用。
代碼文檔可在此頁面上可用。如果要在本地生成文檔,請運行以下命令:
zig build docs docs目錄將放置一個靜態站點,然後可以使用以下方式啟動該站點。
cd docs
python -m http.server可以在官方網站上找到其標準庫的ZIG語言描述和文檔。
Bamos仍然是一個小型但正在增長的項目。
我們歡迎任何貢獻,並邀請您參加該項目的開發和發展。
請參閱有關貢獻的信息。
構建過程非常簡單:
git clone https://github.com/bagggage/bamos.git
cd bamos
zig build kernel --release=[small | safe | fast]默認情況下,構建結果將位於.zig-out目錄中。要指定不同的路徑,請在構建過程中使用--prefix=[path]選項。
當前,OS依賴於第三方引導Bootloader,並且使用bootboot/mkbootimg實用程序來創建圖像。將來,計劃簡化此階段,並使其更跨平台。但是,目前,要創建圖像,您需要:
mkbootimg 。env.sh中設置BOOTBOOT變量來指定bootboot-bin目錄的路徑。iso.sh默認情況下,圖像將放置在dist目錄中。
要快速操作系統測試和啟動,建議使用QEMU仿真器。
在Windows上,您還應該事先將qemu目錄添加到PATH環境變量中。
在項目的根目錄中,有qemu.sh和debug.sh腳本:
qemu.sh在模擬器中運行預構建的系統圖像(默認dist/bamos.iso )。debug.sh編譯,創建圖像並在模擬器中運行系統。 Bamos處於發展的早期階段,許多事情尚未實施。此外,編寫實施和開發操作系統體系結構需要一種迭代方法來找到最佳解決方案,因此一些細節可能會改變,但這一切都更好。
要跟踪項目中已經實現的內容以及目前的哪個階段,請查看此頁面。