You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
DeathWish5 27b34cf9c8
Update readme
4 years ago
.github/workflows update CI for code/ch03-04 5 years ago
code Update readme 4 years ago
docs update docs 5 years ago
.gitignore update .gitignore 5 years ago
README.md Update readme 4 years ago

README.md

zCore Tutorial

CI Docs

zCore Toturial 的目标是通过step by step地建立一个简化的zCore kernel的过程来学习和掌握zCore Kernel的核心概念和对应实现从而为进一步分析掌握zCore的完整内核打下基础。

zCore Toturial 的特点是所有的code都在用户态运行便于调试和分析。

仓库目录

  • docs/: 教学实验指导
  • code: 操作系统代码

实验指导

基于 mdBook目前目前已经部署到了 GitHub Pages 上面。

文档本地使用方法

git clone https://github.com/rcore-os/zCore-Tutorial.git
cd zCore-Tutorial
cargo install mdbook
mdbook serve docs

code

code目录下的rust-toolchain内容为nightly-2021-07-27。原则上,我们会采用rustc最新的版本。目前的版本信息如下:

rustc 1.56.0-nightly (08095fc1f 2021-07-26)
  • ch4
    • 推荐运行方式: 在 ch04-0x 目录下: RUST_LOG=info cargo run -p zircon-loader -- /prebuilt/zircon/x64
    • ch4 会执行 zircon prebuilt 中的 userboot 程序,详见userboot源码fuchsia启动流程
    • ch04-01 并未实现任何 syscall。因此进入 userboot 后会在第一次 syscall 返回到内核态时 panic 退出。
    • ch04-03 实现了与 channeldebuglog 有关的部分 syscall会执行 3 次 syscall 之后由于不支持 process_exit 而退出。

参考