第1章 实验0:操作系统实验准备
1.1 实验目的
1.2 准备知识
1.2.1 了解OS实验
1.2.2 设置实验环境
1.2.3 了解编程开发调试的基本工具
1.2.4 基于硬件模拟器实现源码级调试
1.2.5 了解处理器硬件
1.2.6 了解ucore编程方法和通用数据结构
第2章 实验1:系统软件启动过程
2.1 实验目的
2.2 实验内容
2.2.1 练习
2.2.2 项目组成
2.3 从机器启动到操作系统运行的过程
2.3.1 BIOS启动过程
2.3.2 bootloader启动过程
2.3.3 操作系统启动过程
2.4 实验报告要求
辅助材料A关于A20Gate
辅助材料B启动后第一条执行的指令
第3章 实验2:物理内存管理
3.1 实验目的
3.2 实验内容
3.2.1 练习
3.2.2 项目组成
3.3 物理内存管理概述
3.3.1 实验执行流程概述
3.3.2 探测系统物理内存布局
3.3.3 以页为单位管理物理内存
3.3.4 物理内存页分配算法实现
3.3.5 实现分页机制
3.3.6 自映射机制
3.4 实验报告要求
辅助材料A探测物理内存分布和大小的方法
辅助材料B实现物理内存探测
辅助材料C链接地址、虚拟地址、物理地址、加载地址以及edata/end/text的含义
第4章 实验3:虚拟内存管理
4.1 实验目的
4.2 实验内容
4.2.1 练习
4.2.2 项目组成
4.3 虚拟内存管理概述
4.3.1 基本原理概述
4.3.2 实验执行流程概述
4.3.3 关键数据结构和相关函数分析
4.4 Page Fault异常处理
4.5 页面置换机制的实现
4.5.1 页替换算法
4.5.2 页面置换机制
4.6 实验报告要求
辅助材料A:正确输出的参考
第5章 实验4:内核线程管理
5.1 实验目的
5.2 实验内容
5.2.1 练习
5.2.2 项目组成
5.3 内核线程管理
5.3.1 实验执行流程概述
5.3.2 设计关键数据结构——进程控制块
5.3.3 创建并执行内核线程
5.4 实验报告要求
辅助材料A实验4的参考输出
辅助材料B“原理”进程的属性与特征解析
第6章 实验5:用户进程管理
6.1 实验目的
6.2 实验内容
6.2.1 练习
6.2.2 项目组成
6.3 用户进程管理
6.3.1 实验执行流程概述
6.3.2 创建用户进程
……
第7章 实验6:调度器
第8章 实验7:同步互斥
第9章 实验8:文件系统