大纲修定历史:
操作系统是计算机系统中负责管理各种软硬件资源的核心系统软件,掌握操作系统的基本原理及其设计实现技术是研究型大学计算机专业本科毕业生的基本要求。
本课程是计算机专业核心课,从计算机系统的视角进行内容组织与调整,以教学操作系统rcore和risc-v CPU为实验环境,讲授操作系统的概念、基本原理和实现技术,并介绍部分当前操作系统研究热点和论文,帮助学生了解和掌握大型复杂系统软件的分析方法和核心设计思路,并为学生充分利用操作系统功能进行应用软件研究和开发打下扎实的基础。
下面的每一讲是两个课时
- 实验目的:了解和熟悉操作系统实验的编译方法和流程、基于硬件模拟器的操作系统内核调试方法,复习Rust语言和RISC-V汇编语言。
- 实验内容:安装Linux操作系统、Rust编译工具和QEMU硬件模拟器,并熟悉这些系统和工具的使用方法。
- 实验目的:了解:在裸机上的执行环境,让应用与硬件隔离,简化了应用访问硬件的难度和复杂性。
- 实验内容:直接与硬件交互的系统程序的编译运行、 输出字符的方法、调试系统程序的方法。
- 实验目的:了解:操作系统利用硬件特权级机制,实现对操作系统自身的保护;应用在用户态通过系统调用得到内核态的内核服务; 操作系统批处理机制支持多个程序的自动加载和运行。
- 实验内容:特权级机制、应用程序实现、批处理机制、特权级切换。
- 实验目的:了解:操作系统通过协作机制/抢占机制支持程序主动/被动放弃处理器,提高系统效率。
- 实验内容:多道程序的放置与加载、任务切换、协作式调度、抢占式调度。
- 实验目的:了解:操作系统通过动态内存分配机制、页表的虚实内存映射机制,加强内存安全,简化应用开发。
- 实验内容:动态内存分配、地址空间(Address Space)抽象、多级页表
- 实验目的:了解:操作系统建立了进程创建、执行、切换和结束的动态管理过程。
- 实验内容:进程(Process)抽象、进程管理。
- 实验目的:了解:操作系统通过进程间通信(Inter-Process-Comm)机制,让应用之间建立了有效的联系。
- 实验内容:进程间通信机制、管道(PIPE)机制。
- 实验目的:了解:操作系统通过文件系统完成对程序和数据的持久保存与灵活的访问。
- 实验内容:基于inode方式的文件系统的设计与实现。
- 实验目的:了解:为支持更丰富的应用需求,操作系统需要改进与完善;通过完成一个完整的OS kernel的设计与实现,形成面向操作系统的系统思维。
- 实验内容:操作系统各组成部分关联关系的完善、操作系统各组成部分的改进与优化、对应用的进一步服务与支持。