本系列文章是学堂在线清华大学操作系统慕课,课程实验-实现uCore内核的讲义总结及个人攻略,如果有对课程感兴趣的朋友建议看原课程。
前置知识(即提前要掌握的知识):
实验内容:
Lab1. uCore-OS启动、中断与设备管理: 0200~1800行
Lab2. uCore-物理内存管理: 1800~2500行
Lab3. uCore-虚拟内存管理: 2500~3200行
Lab4. uCore-内核线程管理: 3200~3600行
Lab5. uCore-用户进程管理: 3600~4300行
Lab6. uCore-进程调度: 4300~5100行
Lab7. uCore-同步互斥: 5100~6400行
Lab8. uCore-文件系统: 6400~9999行
效果
好的方面:
- 理论和实验能够较好地结合起来,不再感到OS课是一个只要死记硬背的课程
- 理解了一个OS的全局设计实现,而不是一个个分离的知识点
- 掌握了许多OS原理上没有涉及或涉及不够的东西,比如中断/系统调用的实现,X86的段页机制,进程上下文如何切换的,内核态和用户态的具体区别是什么
- 这是大学期间碰到的最复杂的软件,学习了分析和设计大型系统软件的方法
实验所用电子书:uCore实验指导书