操作系统
分享
课程详情
课程评价
spContent=
—— 课程团队
课程概述

      本课程以“如何给一个拥有单核 CPU、内存、磁盘、键盘和显示器的基本计算机配备一个可实际运转的操作系统?”这一基本问题作为主线。本课程对一个基本操作系统中的六个基本模块,即 CPU 管理、内存管理、外设管理、磁盘管理与文件系统、用户接口和启动模块,以及这些模块之间的内在联系,进行了深入细致地原理教授、算法与数据结构设计,并借鉴开源操作系统 Linux 全面讲授了整个操作系统的代码实现。通过本系列课程的学习,学生可以体会一个完整的操作系统是如何良好运转的,据此培养学生设计和实现一个完整操作系统的能力,进而在未来从事计算机系统层面的工作时能应用这些能力和经验,最终逐渐形成计算机系统能力。同时本课程包含了进程设计与实现、虚存设计与实现、外设驱动与实现在内的12个配套实验,通过丰富的实践环节,使学生真正掌握设计、实现和分析完整操作系统的能力。

课程大纲

操作系统之基础

L1 什么是操作系统

L2 开始揭开钢琴的盖子

L3 操作系统启动

L4 操作系统接口

L5 系统调用的实现

L6 操作系统概述

L7 操作系统历史

L8 我们的任务

 

操作系统之进程与线程

L9 多进程图像

L11 用户级线程

L12 核心级线程

L13 核心级线程实现实例

L14 CPU调度策略

L15 一个实际的schedule函数

L16 进程同步与信号量

L17 对信号量的临界区保护

L18 信号量的代码实现

L19 死锁处理

 

操作系统之内存管理

L20 内存使用与分段

L21 内存分区与分页

L22 段页结合的实际内存管理

L23 请求调页内存换入

L24 内存换出

 

操作系统之外设与文件系统

L25 IO与显示器

L26 键盘

L27 生磁盘的使用

L28 用文件使用磁盘

L29目录与文件系统

L30 目录解析代码实现

证书要求

合格证书成绩要求 60≤ 得分 < 90分

优秀证书成绩要求 90≤ 得分