Fusion, hệ điều hành sở thích được triển khai bằng Nim
(github.com/khaledh)Fusion OS
Fusion là một hệ điều hành sở thích cho x86-64 được triển khai bằng Nim. Quá trình phát triển đang được ghi chép tại https://0xc0ffee.netlify.app.
Ảnh chụp màn hình
- Trình nạp khởi động UEFI
- GUI ( Lưu ý: ảnh chụp màn hình này được lấy từ nhánh
graphicshiện vẫn đang trong quá trình hoàn thiện.) - Khởi động kernel Fusion
Tính năng
Các tính năng hiện đã được triển khai:
- Trình nạp khởi động UEFI
- Trình quản lý bộ nhớ vật lý
- Trình quản lý bộ nhớ ảo
- Không gian địa chỉ đơn
- Chế độ người dùng
- Đa nhiệm ưu tiên
- System call
- Trình nạp ELF
- Ngắt bộ định thời
Các tính năng được lên kế hoạch:
- Demand paging
- Giao tiếp liên tiến trình
- I/O đĩa
- Hệ thống tệp
- Nhập liệu bàn phím/chuột
- Shell
- GUI
- Mạng
Build
Để build Fusion, cần cài đặt các phụ thuộc sau:
- Nim
- LLVM (clang và lld)
- Just
Build Fusion bằng lệnh sau:
just build
Chạy
Hiện tại Fusion chạy trên QEMU, vì vậy trước tiên cần cài đặt QEMU. Chạy Fusion bằng lệnh sau:
just run
Giấy phép
MIT
Tóm tắt của GN⁺
Fusion OS là một hệ điều hành sở thích cho x86-64 được triển khai bằng Nim, hữu ích với những ai muốn tìm hiểu quá trình phát triển hệ điều hành. Hiện tại, các tính năng cơ bản như trình nạp khởi động UEFI, trình quản lý bộ nhớ vật lý và ảo, chế độ người dùng đã được triển khai. Trong tương lai, nhiều tính năng như demand paging, giao tiếp liên tiến trình, hệ thống tệp sẽ được bổ sung. Có thể dễ dàng thử nghiệm qua QEMU nên phù hợp cho phát triển và học tập. Các dự án tương tự gồm có xv6, OSDev.
1 bình luận
Ý kiến Hacker News