Hasty Briefsbeta

Moss: a Rust Linux-compatible kernel in 26,000 lines of code

2 days ago
  • #Kernel
  • #Rust
  • #Aarch64
  • Moss is a Unix-like, Linux-compatible kernel written in Rust and Aarch64 assembly.
  • Features a modern, asynchronous core, modular architecture, and Linux userspace binary compatibility.
  • Supports aarch64 with plans for x86_64 and RISC-V via a well-defined HAL.
  • Advanced memory management: MMU, Copy-on-Write, async userspace functions, and fault handling.
  • Uses Rust's async/await model in the kernel to prevent deadlocks and manage tasks efficiently.
  • Implements 49 Linux syscalls, enabling most BusyBox commands and advanced forking via clone().
  • Includes a Virtual File System with async abstractions and drivers for ramdisk, FAT32 (ro), and devtmpfs.
  • Built on libkernel, an architecture-agnostic library, allowing cross-architecture testing.
  • Comprehensive test suite with 230+ tests for functionality across different architectures.
  • Development tools required: QEMU for aarch64 emulation, dosfstools, and gcc-aarch64-linux-gnu.
  • Active development areas: Linux syscall compatibility, networking stack, scheduler improvements, and filesystem drivers.
  • Open for contributions under the MIT License.