#架构 #版本 #最终 #POSIX # #操作系统

nightly thepowersgang/kernel

用 Rust 编写的操作系统内核。非 POSIX

1 个不稳定版本

0.0.0 2019 年 3 月 17 日

#16#eventually

715 个星标 & 45 个关注者

1MB
24K SLoC

"Tifflin" 实验性内核(以及最终操作系统)

这是在 Rust 中编写操作系统内核的实验(https://www.rust-lang.net.cn)。

架构主要在设计过程中逐渐确定,但将被编写为架构无关(当前版本为 x86_64/amd64)。

设计特性

  • 具有依赖项的运行时模块初始化
  • 清晰的用户-内核职责分离
  • 用户空间拥有 ELF 加载器,内核使用自定义格式进行 init。
  • 基于对象的系统调用 API
  • 内核提供的窗口管理器(是的,我知道旧窗口系统也这样做)

进展

  • 文件系统
  • ISO9660
  • FAT12/16/32
  • 存储
  • (P)ATA
  • SATA (AHCI)
  • ATAPI CDROM
  • VirtIO 块
  • 输入
  • PS2 键盘/鼠标
  • 图形
  • 仅多引导
  • GUI 应用程序
  • 登录(凭据为 root/password)
  • "GUI Shell"(带背景!)
  • 文本终端应用程序(带基本命令集)
  • 文件系统查看器
  • 架构
  • amd64(即 x86_64)- 引导到实现的限制
  • armv7 - 加载用户空间后崩溃

构建依赖

  • nasm
  • GNU Binutils(交叉编译)
  • GCC(用于 ACPICA)
  • pxelinux
  • libguestfs-tools(用于创建磁盘镜像)

依赖项

~84KB