Hasty Briefsbeta

双语

R9: Plan 9 in Rust

a year ago
  • #Plan9
  • #Rust
  • #Kernel
  • R9是使用Rust语言对Plan 9内核的重新实现,源自原始Plan 9源代码
  • 该内核采用Cargo构建系统和xtask模式进行构建
  • 构建x86_64版本命令:`cargo xtask build --arch x86-64`
  • 构建aarch64版本(支持树莓派3):`cargo xtask build --arch aarch64`
  • 使用`cargo xtask help`查看可用子命令
  • R9目前尚未实现自举
  • `cargo xtask dist`需要`llvm-objcopy`工具,可通过`rustup component add llvm-tools`安装
  • 若`llvm-objcopy`问题持续,请单独安装LLVM并设置`OBJCOPY`环境变量
  • 运行QEMU模拟器需预先安装`qemu`或`qemu-kvm`
  • 支持的QEMU架构包括:aarch64(raspi3b/4b)、x86-64(q35)和riscv64(virt)
  • 已在树莓派4上完成测试(通过miniuart输出'r9'字样)
  • 网络启动需使用`cargo xtask dist --arch aarch64 --verbose`生成二进制文件并复制到TFTP服务器
  • 树莓派固件通过`config.txt`配置UART(例如`enable_uart=1`)