A monolithic kernel based on arceos/starry.
First prize in CSCC OS Competition 2025.
.
├── rust-toolchain.toml // Toolchain configuration
├── docs // Documentations
├── Makefile // Build scripts
├── Cargo.toml // Rust workspace configuration and dependencies
├── arceos // Base OS
├── src // Entry OS
├── xapi // Posix API
├── xcore // OS Core
├── xmodules // Monolithic modules
└── xtest // Linux APP for tets构建全国大学生操作系统内核赛测例 (riscv / loongarch)
make all运行全国大学生操作系统内核赛测例 (riscv / loongarch)
make rv
make la移植到visionfive2板卡
make vf2StarryX操作系统是基于组件化操作系统ArceOS的宏内核扩展实现,完整实现了进程管理,内存管理,文件系统,信号系统等模块,通过硬件抽象层axhal能够运行在四个架构上(riscv64 / loongarch64 / x86_64 / aarch64),并成功移植到riscv visionfive硬件平台。学习/开发日志;决赛文档;决赛PPT
截至目前,StarryX共实现约200项系统调用,包括进程管理、文件系统、内存管理、网络等各个模块的系统调用,能够运行官方测试中的大量LTP测例以及LTP外的所有测例,并能够运行Redis、Git、Gcc等Linux应用。
StarryX的各个子模块实现均较为完善,完成情况如下:
| 子模块 | 完成情况 |
|---|---|
| 文件系统 | 类Linux 的 VFS设计 丰富的抽象文件支持和完善的伪文件系统实现 支持EXT4与FAT文件系统 模块解耦的页缓存设计 |
| 内存管理 | 懒分配、写时复制 模块解耦的用户空间访问 模块解耦的文件映射管理 |
| 进程管理 | 多核场景下的负载均衡 多种调度方式支持 完整实现的System V进程通信 模块解耦的进程管理 |
| 网络模块 | 支持TCP和UDP套接字 实现端口复用 |
| 信号系统 | 模块解耦的信号系统 可被信号中断的系统调用 |
base:oscomp/starry-next;oscomp/arceos
fs:axfs_ng

