README
清华大学操作系统课程(2016春季)
操作系统是计算机系统中负责管理各种软硬件资源的核心系统软件,为应用软件运行提供良好的环境。掌握操作系统的基本原理及其核心技术是研究型大学计算机专业本科毕业生的基本要求。
本课程是计算机专业核心课,以主流操作系统为实例,以教学操作系统ucore为实验环境,讲授操作系统的概念、基本原理和实现技术,为学生从事操作系统软件研究和开发,以及充分利用操作系统功能进行应用软件研究和开发打下扎实的基础。
## 本课程学习流程(for拿清华学分的同学)
for (i=1; i<=13; i++) {
1. 完成第i周课前视频学习
2. 完成第i周基本练习
3. 上SPOC课并完成课上练习
4. 在deadline前,按序完成ucore_lab实验
5. if (i==7) 参加期中考试;
6. if (i==13) 参加期末考试;
7. if (碰到问题) 到piazza的论坛上提问;
}
课程参考书
- Operating Systems: Three Easy Pieces 操作系统:三大简易元素
- Operating System Concepts 操作系统概念
- Operating Systems:Internals and Design Principles 操作系统:精髓与设计原理
课前视频学习
请务必在上本周SPOC课前完成本周视频学习,建议下载到本地看
翻转课堂 (2016春季SPOC课,1-13周,一周两次课)
- 星期一 上午 第1节,(08:00-09:35) 操作系统 30240243 (2) 四教4102
- 星期三 下午 第4节,(15:20-16:55) 操作系统 30240243 (2) 四教4102
请带上笔记本电脑,用于在课堂上完成SPOC练习
课程实验 ucore os lab
- 上述信息会持续更新
- 在线实验环境基于"实验楼"在线平台
- 相关参考资料用于学习和了解更多实验相关的背景/软件/硬件/编程等细节
- 一周七天每天都有助教在线答疑交流
课程学习相关信息
课程安排
2016年春季开课,12周完成
- 第1讲 操作系统概述
- 第2讲 实验环境准备(实验0)
- 第3讲 中断与系统调用
- 第4讲 OS启动和中断处理 (实验1)
- 第5讲 物理内存管理:连续内存分配
- 第6讲 物理内存管理:非连续内存分配
- 第7讲 物理内存管理的实现 (实验2)
- 第8讲 虚拟存储:缺页中断
- 第9讲 虚拟存储:置换算法
- 第10讲 虚拟内存管理的实现 (实验3)
- 第11讲 进程状态与控制
- 第12讲 线程管理与内核线程实现 (实验4)
- 期中考试:第7周星期一或星期三
- 第13讲 用户进程设计实现 (实验5)
- 第14讲 处理机调度
- 第15讲 处理机调度设计与实现(实验6)
- 第16讲 同步互斥
- 第17讲 信号量和管程
- 第18讲 内核信号量和条件变量(实验7)
- 第19讲 进程间通信和死锁
- 第20讲 文件系统
- 第21讲 Simple FS的设计实现 (实验8)
- 第22讲 I/O子系统
- 期末考试 期末考试: 第13周星期三(待定)
- 课程设计报告:第6周周四
以往在线视频
常见问题
在线习题和作业
更深入了解OS
课程资料网盘备份
课程交流
- 清华大学计算机系OS课程维基页面
- 学堂在线OS课
- OS课程技术细节的主要问答和交流区
- QQ群 181873534 主要用于紧急事件通知,一般性OS问题,非OS问题的聊天等
操作系统课联系方式
助教
- 招募新人: 请上过此MOOC课程,且对当助教有兴趣的同学给老师发电邮。我们很欢迎!
- 已退休:茅俊杰、何嘉权、曹睿东、武祥晋、辛云星、刘聪、常铖
教学平台技术支持
张禹(继续坚持)、郭旭(光荣退休)、陈土其(光荣退休)
教师
- 向勇老师 email: xyong AT tsinghua.edu.cn
- 陈渝老师 email: yuchen AT tsinghua.edu.cn
如果有各种意见或建议,请给我们发信息。谢谢!