rCore-Tutorial-Book 第三版#

欢迎来到 rCore-Tutorial-Book 第三版!

欢迎参加 2022年开源操作系统训练营!

注解

更新日志

项目简介#

这本教程旨在一步一步展示如何 从零开始Rust 语言写一个基于 RISC-V 架构或者 Arm64类 Unix 内核 。每章节还附带一些练习,用来帮助同学们巩固所学知识。

文档对应框架代码:

文档章节对应实验代码:

注解

ARM64 对应代码尚未实现 ch9。

导读#

请大家先阅读 第零章 ,对于项目的开发背景和操作系统的概念有一个整体把控。

在正式进行实验之前,请先按照第零章章末的 实验环境配置 中的说明完成环境配置,再从第一章开始阅读正文。

每一个章节都会先讲述对应框架代码的开发思路与过程,然后提出一些练习。对于只想完成实验的同学,可以浏览每章节实验前的部分,结合代码理解框架后,专注于完成实验后的练习。

该文档正文部分主要采用 RISC-V 进行讲述,对于 RISC-V 与 ARM 有区别的硬件相关部分,在第一到第四章节末尾的`arm相关` 部分进行了讲解,对于需要格外注意的点在正文中进行了标注。

项目协作#

  • 修改和构建本项目 介绍了如何基于 Sphinx 框架配置文档开发环境,之后可以本地构建并渲染 html 或其他格式的文档;

  • reStructuredText 基本语法 给出了目前编写文档才用的 ReStructuredText 标记语言的一些基础语法及用例;

  • 项目的源代码仓库 && 文档仓库

  • 时间仓促,本项目还有很多不完善之处,欢迎大家积极在每一个章节的评论区留言,或者提交 Issues 或 Pull Requests,让我们 一起努力让这本书变得更好!

  • 欢迎大家加入项目交流 QQ 群,群号:735045051

项目进度#

  • 2020-11-03:环境搭建完成,开始着手编写文档。

  • 2020-11-13:第一章完成。

  • 2020-11-27:第二章完成。

  • 2020-12-20:前七章代码完成。

  • 2021-01-10:第三章完成。

  • 2021-01-18:加入第零章。

  • 2021-01-30:第四章完成。

  • 2021-02-16:第五章完成。

  • 2021-02-20:第六章完成。

  • 2021-03-06:第七章完成。到这里为止第一版初稿就已经完成了。

  • 2021-10-20:第八章代码于前段时间完成。开始更新前面章节文档及完成第八章文档。

  • 2021-11-20:更新1~9章,添加第八章(同步互斥),原第八章(外设)改为第九章。

  • 2022-01-02:第一章文档更新完成。

  • 2022-01-05:第二章文档更新完成。

  • 2022-01-06:第三章文档更新完成。

  • 2022-01-07:第四章文档更新完成。

  • 2022-01-09:第五章文档更新完成。

  • 2022-08-15:arm 对应章节完成。