操作系统高级教程

  • 创建于 2015-10-13
  • 2325
Name:操作系统高级教程
No.:S081201ZJ001Semester:春季学期
Hour:40Credit:2.0
Teacher:杨力祥
Introduction:
 
本课程的主要教学目的是以开源操作系统Linux的真实源代码为基础,以操作系统的实际运行为主线,操作系统的基本原理与操作系统真实源代码相结合,详细讲解一个真实操作系统实际执行的时候,在内存中的运行时结构,并详细讲解操作系统的基本技术、基本方法及设计指导思想。使学生从理论和实际两个方面了解、掌握操作系统,为更好的学习后续计算机课程、更深刻的理解计算机体系打下坚实的基础。
Content:
 
内容提要: 
第一章 从开机加电到执行main函数之前的过程
1.1 启动bios,准备实模式下的中断向量表和中断服务程序
1.2 加载操作系统内核程序并为保护模式做准备
1.3 开始向32位模式转变,为main函数的调用做准备
第二章 从main函数到怠速
2.1 开中断之前的准备工作
2.2 进程创建的最基本动作
2.3 加载根文件系统
2.4 打开终端设备文件及复制文件句柄
2.5 创建进程2
2.6 进程1等待进程2退出
2.7 shell程序的加载
2.8 系统实现怠速
第三章 安装文件系统
3.1 获取硬盘设备号
3.2 获取虚拟盘上的挂接点
3.3 得到hd1设备文件的超级块
3.4 将hd1设备文件与mnt目录文件的i节点挂接
第四章 文件操作
4.1 打开文件
4.2 读文件
4.3 新建文件
4.4 写文件
4.5 修改文件
4.6 关闭文件
4.7 删除文件
第五章 用户进程与内存管理
5.1 用户进程的创建
5.2 为用户进程str1的加载做准备
5.3 对缺页中断的处理
5.4  str1用户进程的退出
5.5 多个用户进程“同时”运行
5.6 进程的调度与切换
5.7 内核的分页
5.8 页写保护
第六章 多个进程“同时”操作一个文件
6.1 三个进程操作同一个文件
6.2 缓冲区与外设的数据同步
第七章 IPC问题
7.1 管道机制
7.2 信号机制
第八章 操作系统的设计指导思想
8.1 运行一个最简单的程序,看操作系统为程序运行做了哪些工作
8.2 操作系统的设计指导思想—主奴机制
8.3 实现主奴机制的三种关键技术
8.4 建立主奴机制的决定性因素—先机
8.5 软件和硬件的关系:主机与进程、外设与文件
8.6 父子进程共享页面
8.7 操作系统的全局中断与进程的局部中断—信号
Material:
 
教材:杨力祥 著,《Linux 内核设计的艺术》,机械工业出版社,北京,2011
References:
 
主要参考书:
〔美〕Intel 著,《IA-32 Intel Architecture Software Developer’s Manual-Volume Basic Architecture》
〔美〕Maurice J. Bach著,《The Design of the UNIX Operating System》,机械工业出版社,2002。
〔美〕Andrew S. Tanenbaum & Albert S. Woodhull 著,《Operating Systems – Design and Implementation》, 电子工业出版社,2002。 赵炯 著,《linux内核完全注释》,机械工业出版社,北京,2004。