mirror of
https://github.com/LearningOS/rust-based-os-comp2022.git
synced 2026-05-05 20:59:48 +08:00
update guide index, ch3:5exercise
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
chapter3练习
|
||||
=======================================
|
||||
|
||||
编程作业
|
||||
Lab1 编程作业
|
||||
--------------------------------------
|
||||
|
||||
获取任务信息
|
||||
@@ -43,13 +43,13 @@ ch3 中,我们的系统已经能够支持多个任务分时轮流运行,我
|
||||
实验要求
|
||||
+++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
- 完成分支: ch3。
|
||||
- `lab1(os3)参考框架: <https://github.com/LearningOS/rust-based-os-comp2022/tree/main/os3-ref>`
|
||||
|
||||
- 实验目录要求
|
||||
|
||||
.. code-block::
|
||||
|
||||
├── os(内核实现)
|
||||
├── os3(内核实现)
|
||||
│ ├── Cargo.toml(配置文件)
|
||||
│ └── src(所有内核的源代码放在 os/src 目录下)
|
||||
│ ├── main.rs(内核主函数)
|
||||
@@ -77,11 +77,11 @@ ch3 中,我们的系统已经能够支持多个任务分时轮流运行,我
|
||||
--------------------------------------------
|
||||
|
||||
1. 正确进入 U 态后,程序的特征还应有:使用 S 态特权指令,访问 S 态寄存器后会报错。
|
||||
请同学们可以自行测试这些内容 (运行 `Rust 三个 bad 测例 (ch2b_bad_*.rs) <https://github.com/LearningOS/rCore-Tutorial-Test-2022S/tree/master/src/bin>`_ ,
|
||||
请同学们可以自行测试这些内容 (运行 `Rust 三个 bad 测例 (ch2b_bad_*.rs) <https://github.com/LearningOS/rust-based-os-comp2022/tree/main/user/src/bin>`_ ,
|
||||
注意在编译时至少需要指定 ``LOG=ERROR`` 才能观察到内核的报错信息) ,
|
||||
描述程序出错行为,同时注意注明你使用的 sbi 及其版本。
|
||||
|
||||
2. 深入理解 `trap.S <https://github.com/LearningOS/rCore-Tutorial-Code-2022S/blob/ch3/os/src/trap/trap.S>`_
|
||||
2. 深入理解 `trap.S <https://github.com/LearningOS/rust-based-os-comp2022/blob/main/os3-ref/src/trap/trap.S>`_
|
||||
中两个函数 ``__alltraps`` 和 ``__restore`` 的作用,并回答如下问题:
|
||||
|
||||
1. L40:刚进入 ``__restore`` 时,``a0`` 代表了什么值。请指出 ``__restore`` 的两种使用情景。
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
You can adapt this file completely to your liking, but it should at least
|
||||
contain the root `toctree` directive.
|
||||
|
||||
rCore-Tutorial-Guide 2022 春季学期
|
||||
2022年开源操作系统训练营
|
||||
==================================================
|
||||
|
||||
.. toctree::
|
||||
@@ -45,7 +45,7 @@ rCore-Tutorial-Guide 2022 春季学期
|
||||
|
||||
本教程展示了如何 **从零开始** 用 **Rust** 语言写一个基于 **RISC-V** 架构的 **类 Unix 内核** 。
|
||||
|
||||
用于 2022 年春季学期操作系统课堂教学。
|
||||
用于 2022年开源操作系统训练营。
|
||||
|
||||
导读
|
||||
---------------------
|
||||
@@ -61,7 +61,7 @@ rCore-Tutorial-Guide 2022 春季学期
|
||||
|
||||
鸣谢
|
||||
----------------------
|
||||
本项目基于 `2021 年秋季学期操作系统实验指导书 <https://github.com/LearningOS/rCore-Tutorial-Guide-2021A>`_ ,重构的目标是在保留结构的基础上屏蔽不必要的细节,缩短篇幅,优化语言,降低阅读成本。
|
||||
本项目基于 `2022 年春季学期操作系统实验指导书 <https://github.com/LearningOS/rCore-Tutorial-Code-2022S>`_ ,重构的目标是在保留结构的基础上屏蔽不必要的细节,缩短篇幅,优化语言,降低阅读成本。
|
||||
|
||||
如果你觉得本教程某些章节不够细致或不够连贯,可以参考上学期实验指导书的对应章节。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user