diff --git a/README.md b/README.md index ea96fc5..cc733fd 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# uCore-Tutorial-Guide-2024A -Documentation of uCore-Tutorial-Guide-2024A +# uCore-Tutorial-Guide-2025S +Documentation of uCore-Tutorial-Guide-2025S -Deployed version can be found [here](https://LearningOS.github.io/uCore-Tutorial-Guide-2024A/). +Deployed version can be found [here](https://LearningOS.github.io/uCore-Tutorial-Guide-2025S/). diff --git a/source/chapter0/1setup-devel-env.rst b/source/chapter0/1setup-devel-env.rst index edf59da..b813c75 100644 --- a/source/chapter0/1setup-devel-env.rst +++ b/source/chapter0/1setup-devel-env.rst @@ -5,14 +5,14 @@ :hidden: :maxdepth: 4 -本节我们将完成环境配置并成功运行 uCore-Tutorial-2024A 。整个流程分为下面几个部分: +本节我们将完成环境配置并成功运行 uCore-Tutorial-2025S 。整个流程分为下面几个部分: .. - classroom配置 - 系统环境配置 - Riscv下 C 开发环境配置 - Qemu 模拟器安装 - 其他工具安装 -- 运行 uCore-Tutorial-2024A +- 运行 uCore-Tutorial-2025S 目前实验仅支持 Ubuntu18.04 + 操作系统。对于 Windows10 和 macOS 上的用户,可以使用 VMware 或 VirtualBox 安装一台 Ubuntu18.04 虚拟机并在上面进行实验。 @@ -248,15 +248,15 @@ VSCode 可视化调试支持 之后则可以设置断点进行GDB调试。 -在 Qemu 平台上运行 uCore-Tutorial-2024A +在 Qemu 平台上运行 uCore-Tutorial-2025S ------------------------------------------------------------ 到这里,恭喜你完成了实验环境的配置,可以开始阅读教程的正文部分了!可以直接clone下面的仓库来开始OS之旅: .. code-block:: bash - git clone https://github.com/LearningOS/uCore-Tutorial-Code-2024A.git - cd uCore-Tutorial-Code-2024A + git clone https://github.com/LearningOS/uCore-Tutorial-Code-2025S.git + cd uCore-Tutorial-Code-2025S 其他的章节需要处理用户代码,我们可以先运行不需要处理用户代码的 ch1 分支: diff --git a/source/chapter2/0intro.rst b/source/chapter2/0intro.rst index c8c7ea9..fdb1b08 100644 --- a/source/chapter2/0intro.rst +++ b/source/chapter2/0intro.rst @@ -37,8 +37,8 @@ .. code-block:: console - $ cd uCore-Tutorial-Code-2024A - $ git clone https://github.com/LearningOS/uCore-Tutorial-Test-2024A.git user + $ cd uCore-Tutorial-Code-2025S + $ git clone https://github.com/LearningOS/uCore-Tutorial-Test-2025S.git user 上面的指令会将测例仓库克隆到代码仓库下并命名为 ``user`` ,注意 ``/user`` 在代码仓库的 ``.gitignore`` 中,因此不会出现 ``.git`` 文件夹嵌套的问题,并且你 ``checkout`` 代码仓库时也不会影响测例仓库的内容。 diff --git a/source/chapter2/2application.rst b/source/chapter2/2application.rst index 92ac567..c66d754 100644 --- a/source/chapter2/2application.rst +++ b/source/chapter2/2application.rst @@ -22,10 +22,10 @@ user文件夹以及测例简介 .. code-block:: console - $ git clone https://github.com/LearningOS/uCore-Tutorial-Code-2024A.git - $ cd uCore-Tutorial-Code-2024A + $ git clone https://github.com/LearningOS/uCore-Tutorial-Code-2025S.git + $ cd uCore-Tutorial-Code-2025S $ git checkout ch2 - $ git clone https://github.com/LearningOS/uCore-Tutorial-Test-2024A.git user + $ git clone https://github.com/LearningOS/uCore-Tutorial-Test-2025S.git user 上面的指令会将测例仓库克隆到代码仓库下并命名为 ``user`` ,注意 ``/user`` 在代码仓库的 ``.gitignore`` 文件中,因此不会出现 ``.git`` 文件夹嵌套的问题,并且你在代码仓库进行 checkout 操作时也不会影响测例仓库的内容。 diff --git a/source/chapter3/5exercise.rst b/source/chapter3/5exercise.rst index 1f85955..0360697 100644 --- a/source/chapter3/5exercise.rst +++ b/source/chapter3/5exercise.rst @@ -90,9 +90,9 @@ ch3 中,我们的系统已经能够支持多个任务分时轮流运行,我 问答作业 -------------------------------------------- -1. 正确进入 U 态后,程序的特征还应有:使用 S 态特权指令,访问 S 态寄存器后会报错。请同学们可以自行测试这些内容(参考 `前三个测例 `_ ,描述程序出错行为,同时注意注明你使用的 sbi 及其版本。 +1. 正确进入 U 态后,程序的特征还应有:使用 S 态特权指令,访问 S 态寄存器后会报错。请同学们可以自行测试这些内容(参考 `前三个测例 `_ ,描述程序出错行为,同时注意注明你使用的 sbi 及其版本。 -2. 请结合用例理解 `trampoline.S `_ 中两个函数 `userret` 和 `uservec` 的作用,并回答如下几个问题: +2. 请结合用例理解 `trampoline.S `_ 中两个函数 `userret` 和 `uservec` 的作用,并回答如下几个问题: 1. L79: 刚进入 `userret` 时,`a0`、`a1` 分别代表了什么值。 diff --git a/source/chapter4/0intro.rst b/source/chapter4/0intro.rst index e60e443..68837f4 100644 --- a/source/chapter4/0intro.rst +++ b/source/chapter4/0intro.rst @@ -64,9 +64,9 @@ github 多仓库使用讲解 .. code-block:: console - $ cd uCore-Tutorial-Code-2024A + $ cd uCore-Tutorial-Code-2025S # 你可以将 upstream 改为你喜欢的名字 - $ git remote add upstream https://github.com/LearningOS/uCore-Tutorial-Code-2024A.git + $ git remote add upstream https://github.com/LearningOS/uCore-Tutorial-Code-2025S.git # 更新仓库信息 $ git fetch upstream # 查看已添加的远程仓库;应该能看到已有一个 origin 和新添加的 upstream 仓库 diff --git a/source/chapter6/1fs-interface.rst b/source/chapter6/1fs-interface.rst index 824b38e..1357d37 100644 --- a/source/chapter6/1fs-interface.rst +++ b/source/chapter6/1fs-interface.rst @@ -73,8 +73,8 @@ Blocks 给出 ``os`` 目录也占用 8 个块进行存储。实际上目录也 有了目录之后,我们就可以将所有的文件和目录组织为一种被称为 **目录树** (Directory Tree) 的有根树结构(不考虑软链接)。树中的每个节点都是一个文件或目录,一个目录下面的所有的文件和子目录都是它的孩子。可以看出所有的文件都是目录树的叶子节点。目录树的根节点也是一个目录,它被称为 **根目录** (Root Directory)。目录树中的每个目录和文件都可以用它的 **绝对路径** (Absolute Path) 来进行索引,该绝对路径是目录树上的根节点到待索引的目录和文件所在的节点之间自上而下的路径上的所有节点的文件或目录名两两之间加上路径分隔符拼接得到的。例如,在 Linux 上,根目录的绝对路径是 ``/`` ,路径分隔符也是 ``/`` ,因此: -- ``main.c`` 的绝对路径是 ``/home/oslab/workspace/UCORE/uCore-Tutorial-2024A/os/main.c`` ; -- ``os`` 目录的绝对路径则是 ``/home/oslab/workspace/UCORE/uCore-Tutorial-2024A/os`` 。 +- ``main.c`` 的绝对路径是 ``/home/oslab/workspace/UCORE/uCore-Tutorial-2025S/os/main.c`` ; +- ``os`` 目录的绝对路径则是 ``/home/oslab/workspace/UCORE/uCore-Tutorial-2025S/os`` 。 上面的绝对路径因具体环境而异。 diff --git a/source/chapter8/0intro.rst b/source/chapter8/0intro.rst index 4eb113c..c6aed6f 100644 --- a/source/chapter8/0intro.rst +++ b/source/chapter8/0intro.rst @@ -66,10 +66,10 @@ .. code-block:: console - $ git clone https://github.com/LearningOS/uCore-Tutorial-Code-2024A.git - $ cd uCore-Tutorial-Code-2024A + $ git clone https://github.com/LearningOS/uCore-Tutorial-Code-2025S.git + $ cd uCore-Tutorial-Code-2025S $ git checkout ch8 - $ git clone https://github.com/LearningOS/uCore-Tutorial-Test-2024A.git user + $ git clone https://github.com/LearningOS/uCore-Tutorial-Test-2025S.git user 或者你也可以在自己原来的仓库里 fetch 它,记得更新测例仓库的代码。 diff --git a/source/conf.py b/source/conf.py index 8ac66c6..c956635 100644 --- a/source/conf.py +++ b/source/conf.py @@ -17,8 +17,8 @@ # -- Project information ----------------------------------------------------- -project = 'uCore-Tutorial-Guide-2024A' -copyright = 'OS2024Apring' +project = 'uCore-Tutorial-Guide-2025S' +copyright = 'OS2025Spring' author = 'Yifan Wu' language = 'zh_CN' html_search_language = 'zh' @@ -37,7 +37,7 @@ comments_config = { "utterances": { - "repo": "LearningOS/uCore-Tutorial-Guide-2024A", + "repo": "LearningOS/uCore-Tutorial-Guide-2025S", "issue-term": "pathname", "label": "comments", "theme": "github-light", diff --git a/source/index.rst b/source/index.rst index 9610920..16ed0e2 100644 --- a/source/index.rst +++ b/source/index.rst @@ -1,4 +1,4 @@ -.. uCore-Tutorial-Guide-2024A documentation master file, created by +.. uCore-Tutorial-Guide-2025S documentation master file, created by sphinx-quickstart on Thu Oct 29 22:25:54 2020. You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. @@ -45,7 +45,7 @@ uCore-Tutorial-Guide 2024 Autumn 指导书简介 ---------------------------- -该指导书为 `THU` `OS` 课程实验 `C` 版实验指导书,旨在帮助同学们快速熟悉框架并完成书面和编程任务, `配套代码 `_ 。 +该指导书为 `THU` `OS` 课程实验 `C` 版实验指导书,旨在帮助同学们快速熟悉框架并完成书面和编程任务, `配套代码 `_ 。 此外,还推荐有余力同学们参考 `rCore-Tutorial 指导书 `_。该书为一本从零开始写一个 OS 的教材,虽然是 rust 语言编写的,但对于 OS 的宏观特征和部分细节有更详细的描述。本指导书大量引用了该书的部分章节。 @@ -64,7 +64,7 @@ uCore-Tutorial-Guide 2024 Autumn - :doc:`/setup-sphinx` 介绍了如何基于 Sphinx 框架配置文档开发环境,之后可以本地构建并渲染 html 或其他格式的文档; - :doc:`/rest-example` 给出了目前编写文档才用的 ReStructuredText 标记语言的一些基础语法及用例; -- `该文档仓库 `_ +- `该文档仓库 `_ - 时间仓促,本项目还有很多不完善之处,欢迎大家积极在每一个章节的评论区留言,或者提交 Issues 或 Pull Requests,让我们 一起努力让这本书变得更好!