教育教学

相关链接:

教室安排

课程信息

当前位置: 首页 > 教育教学 > 研究生教育 > 课程信息

操作系统高级教程  091M5025H

学期:2016-2017学年秋 | 课程属性:专业普及课 | 任课教师:杨力祥
课程编号: 091M5025H 课时: 40 学分: 2.0
课程属性: 专业普及课 主讲教师:杨力祥
英文名称: Advance Operating system

教学目的、要求

主要目的是以开源操作系统Linux的真实源代码为基础,以操作系统的实际运行为主线,结合操作系统的基本原理与源代码,详细讲解一个真实操作系统从开机到系统怠速的全过程。通过几个实例程序的运行,详细讲解用户进程从创建到退出的全过程。通过分析源代码深刻剖析进程调度、内存管理、缓冲区原理,使学生从理论和实际两个方面全面了解、掌握操作系统。

预修课程

C程序设计语言、汇编语言、计算机体系结构、编译原理

教 材

杨力祥 著,《Linux 内核设计的艺术》第二版,机械工业出版社,北京,2013。

主要内容

第一章从开机加电到执行main函数之前的过程
1.1 启动bios,准备实模式下的中断向量表和中断服务程序
1.2 加载操作系统内核程序并为保护模式做准备
1.3 开始向32位模式转变,为main函数的调用做准备
第二章	设备环境初始化及激活进程0
2.1 设置根设备、硬盘
2.2 规划物理内存格局,设置缓冲区、虚拟盘、主内存
2.3 设置虚拟盘空间并初始化
2.4 内存管理结构mem_map初始化
2.5 异常处理类中断服务程序挂接
2.6 初始化块设备请求项结构
2.7 与建立人机交互界面相关的外设的中断服务程序挂接
2.8 开机启动时间设置
2.9 初始化进程0
2.10 初始化缓冲区管理结构
2.11 初始化硬盘
2.12初始化软盘
2.13 开中断
2.14 进程0由0特权级翻转到3特权级,成为真正的进程
第三章 	进程1的创建及执行
3.1 进程1的创建	
3.2 内核第一次作进程调度
3.3 轮转到进程1执行
第六章	用户进程与内存管理
6.1 线性地址的保护
6.2 分页
6.3  一个用户进程从创建到退出的完整过程
6.4  多个用户进程同时运行
第七章缓冲区和多进程操作文件
7.1 缓冲区的作用
7.2 缓冲区的总体结构
7.3  b_dev、b_blocknr及requset的作用
7.4  uptodate和dirt的作用
7.5  count、 lock、wait、request的作用
7.6  实例1:关于缓冲块的进程等待队列
7.7  总体的来看缓冲块和请求项
7.8  实例2:多进程操作文件的综合实例

参考文献

〔美〕Intel 著,《IA-32 Intel Architecture Software Developer’s Manual-Volume Basic Architecture》
赵炯 著,《linux内核完全注释》,机械工业出版社,北京,2004。

授课时间: 星期一, 第7、8节
授课地点: 教1-101
授课周次: 2、3、4、5、6、7、8、9、10、11、12

授课时间: 星期三, 第7、8节
授课地点: 教1-101
授课周次: 2、3、4、5、6、7、8、9、10、11、12

版权所有©中国科学院大学

地址:北京市怀柔区雁栖湖东路1号 邮编:101408