Soso 是一个简单的类似 Unix 的操作系统,它是用 Nasm 程序集和 C 语言编写的,支持多重引导,由 GRUB 启动。它可以用 Nasm 和 Clang 构建,你还可以用 GCC 代替 Clang。经过测试的构建环境是 Linux、FreeBSD 和 Windows 10(Windows Subsystem for Linux)。
Soso 是一个 32 位 x86 操作系统,其特性包括:
- 进程和线程的多任务处理
- 使用 4MB 页进行内存分页
- 内核空间和用户空间是分开的
- 虚拟文件系统
- 使用 FatFs 的 FAT 32 文件系统
- 系统调用
- Libc(Newlib 只使用基本调用移植,如 open、read......)
- 用户空间程序作为 ELF 文件
- 支持 mmap
- FrameBuffer 图形(用户空间可以使用 mmap 访问)
- 内存分享
Doom
为了演示多任务处理,两个 Doom 进程同时运行: