《操作系统实验指导》PDF下载

  • 购买积分:9 如何计算积分?
  • 作  者:陈渝,向勇编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2013
  • ISBN:9787302327776
  • 页数:193 页
图书介绍:本书是主教材的实验指导书。希望通过一步一步指导学生通过在实际硬件环境中设计并完成一个“五脏俱全”微型操作系统,来搭建操作系统理论与实际操作系统之间的桥梁。涉及内容包括“引导OS”、“设备驱动”、“内存管理”、“进程管理”、“进程调度”、“同步互斥”、“进程间通信”、“文件系统”等。

第1章 实验0:操作系统实验准备 1

1.1实验目的 1

1.2准备知识 1

1.2.1了解OS实验 1

1.2.2设置实验环境 2

1.2.3了解编程开发调试的基本工具 14

1.2.4基于硬件模拟器实现源码级调试 23

1.2.5了解处理器硬件 31

1.2.6了解ucore编程方法和通用数据结构 34

第2章 实验1:系统软件启动过程 41

2.1实验目的 41

2.2实验内容 41

2.2.1练习 41

2.2.2项目组成 45

2.3从机器启动到操作系统运行的过程 48

2.3.1 BIOS启动过程 48

2.3.2 bootloader启动过程 48

2.3.3操作系统启动过程 57

2.4实验报告要求 66

辅助材料A 关于A20 Gate 66

辅助材料B 启动后第一条执行的指令 68

第3章 实验2:物理内存管理 70

3.1实验目的 70

3.2实验内容 70

3.2.1练习 70

3.2.2项目组成 71

3.3物理内存管理概述 73

3.3.1实验执行流程概述 73

3.3.2探测系统物理内存布局 75

3.3.3以页为单位管理物理内存 75

3.3.4物理内存页分配算法实现 78

3.3.5实现分页机制 81

3.3.6自映射机制 88

3.4实验报告要求 90

辅助材料A 探测物理内存分布和大小的方法 90

辅助材料B 实现物理内存探测 91

辅助材料C 链接地址、虚拟地址、物理地址、加载地址以及edata/end/text的含义 92

第4章 实验3:虚拟内存管理 96

4.1实验目的 96

4.2实验内容 96

4.2.1练习 96

4.2.2项目组成 97

4.3虚拟内存管理概述 98

4.3.1基本原理概述 98

4.3.2实验执行流程概述 99

4.3.3关键数据结构和相关函数分析 100

4.4 Page Fault异常处理 102

4.5页面置换机制的实现 104

4.5.1页替换算法 104

4.5.2页面置换机制 105

4.6实验报告要求 108

辅助材料A:正确输出的参考 109

第5章 实验4:内核线程管理 111

5.1实验目的 111

5.2实验内容 111

5.2.1练习 111

5.2.2项目组成 112

5.3内核线程管理 114

5.3.1实验执行流程概述 114

5.3.2设计关键数据结构——进程控制块 115

5.3.3创建并执行内核线程 117

5.4实验报告要求 122

辅助材料A 实验4的参考输出 123

辅助材料B “原理”进程的属性与特征解析 124

第6章 实验5:用户进程管理 127

6.1实验目的 127

6.2实验内容 127

6.2.1练习 127

6.2.2项目组成 128

6.3用户进程管理 130

6.3.1实验执行流程概述 130

6.3.2创建用户进程 131

6.3.3进程退出和等待进程 136

6.3.4系统调用实现 137

6.4实验报告要求 141

辅助材料A“原理”用户进程的特征 141

第7章 实验6:调度器 145

7.1实验目的 145

7.2实验内容 145

7.2.1练习 145

7.2.2项目组成 146

7.3调度框架和调度算法设计与实现 147

7.3.1实验执行流程概述 147

7.3.2计时器的原理和实现 147

7.3.3进程状态 148

7.3.4进程调度实现 149

7.3.5调度框架和调度算法 150

7.3.6 Stride Scheduling 154

7.4实验报告要求 158

辅助材料A 执行priority大致的显示输出 158

第8章 实验7:同步互斥 160

8.1实验目的 160

8.2实验内容 160

8.2.1练习 160

8.2.2项目组成 161

8.3同步互斥的设计与实现 162

8.3.1实验执行流程概述 162

8.3.2同步互斥的底层支撑 163

8.3.3信号量 165

8.3.4管程和条件变量 167

8.4实验报告要求 171

辅助材料A 执行make run-matrix大致的显示输出 171

第9章 实验8:文件系统 173

9.1实验目的 173

9.2实验内容 173

9.2.1练习 173

9.2.2项目组成 173

9.3文件系统的设计与实现 176

9.3.1 ucore文件系统总体介绍 176

9.3.2通用文件系统访问接口 179

9.3.3 Simple FS文件系统 179

9.3.4文件系统抽象层——VFS 183

9.3.5设备层文件I/O层 185

9.3.6实验执行流程概述 189

9.3.7文件操作实现 190

9.4实验报告要求 193