Moss: a Rust Linux-compatible kernel in 26,000 lines of code
3 months ago
- #Kernel
- #Rust
- #Aarch64
- Moss是一个用Rust和Aarch64汇编编写的类Unix、兼容Linux的内核。
- 具有现代化异步核心、模块化架构和Linux用户空间二进制兼容性。
- 支持aarch64架构,并通过定义良好的硬件抽象层(HAL)计划扩展至x86_64和RISC-V架构。
- 先进内存管理:包含MMU、写时复制、异步用户空间函数及故障处理机制。
- 内核采用Rust的async/await模型防止死锁并高效管理任务。
- 已实现49个Linux系统调用,支持多数BusyBox命令及通过clone()进行高级进程派生。
- 包含虚拟文件系统(VFS),提供异步抽象层及ramdisk、FAT32(只读)和devtmpfs驱动。
- 基于跨架构测试的libkernel无感知架构库构建。
- 拥有230+项测试的完整测试套件,覆盖多架构功能验证。
- 开发需工具:QEMU(aarch64模拟)、dosfstools和gcc-aarch64-linux-gnu交叉编译链。
- 当前重点开发领域:Linux系统调用兼容性、网络协议栈、调度器优化及文件系统驱动。
- 采用MIT开源协议,欢迎贡献。