Introduction
第零章:实验环境说明
第一章:独立式可执行程序
[安装 nightly rust]
使用包管理器 cargo 创建 rust binary 项目
移除标准库依赖
[移除 runtime 依赖]
总结与展望
第二章:最小化内核
使用目标三元组描述目标平台
编译、生成内核镜像
使用链接脚本指定内存布局
[重写程序入口点 -start]
[使用 Qemu 运行内核]
封装 SBI 接口
[实现格式化输出]
总结与展望
第三章:中断
rv64 中断介绍
[手动触发断点中断]
程序运行上下文环境
[实现上下文环境保存与恢复]
[时钟中断]
总结与展望
第四章:内存管理
[物理内存探测与管理]
[动态内存分配]
总结与展望
第五章:内存虚拟化
页表:从虚拟内存到物理内存
[内核初始映射]
内核重映射
内核重映射实现之一:页表
内核重映射实现之二:MemorySet
[内核重映射实现之三:完结]
总结与展望
第六章:内核线程
线程状态与保存
线程切换
内核线程初始化
[内核线程创建与切换测试]
总结与展望
第七章:线程调度
线程池与线程管理
内核调度线程 idle
线程调度之 Round Robin 算法
[线程调度测试]
总结与展望
第八章:进程
[编写用户程序]
合并内核与应用程序
在内核中实现系统调用
创建虚拟内存空间
[创建进程]
总结与展望
第九章:文件系统
[使用文件系统]
[实现记事本]
[实现终端]
[文件读写]
总结与展望
第十章:同步互斥
练习题
1. 中断异常
2. 物理内存管理
3. 虚拟内存管理
4. 线程管理
5. 用户进程(+ 虚拟内存管理 + 线程管理)
6. CPU 调度
7. 同步互斥
8. 文件系统
附录
内联汇编
安装 rust
Published with GitBook
总结与展望
总结与展望
本章我们介绍了物理内存管理:即物理页帧分配、回收;以及内核内部的动态内存分配,在
.
b
s
s
\text{.bss}
.bss
端上一段预留的内存上进行。后面各章都会使用到这两个工具。
results matching "
"
No results matching "
"