课程概述

        操作系统原理课程是计算机大类的平台课,也是信息管理与信息系统专业的学科基础课。本课程的教学其目的是使学生了解操作系统的基本概念,掌握操作系统的基本原理、基本设计与实现技术,培养学生分析、开发、维护、设计和操作系统底层相关的程序的基本能力,为进一步学习其它课程打下必要的基础。

   课程内容分六个部分。第1部分介绍操作系统的基本概念和发展过程;第2部分讲解计算机中最重要的资源:CPU的管理;第3部分引入进程的概念,并详细讲解进程同步与进程间的通信过程;第4部分讲解内存的各种管理技术,从固定分区到段页式分配,再到虚拟存储器;第5部分讲述设备管理的任务和过程,以及相关算法;第6部分讲述我们接触最多的文件系统,讲解它们的实现原理和特点。

证书要求

为积极响应国家低碳环保政策, 2021年秋季学期开始,中国大学MOOC平台将取消纸质版的认证证书,仅提供电子版的认证证书服务,证书申请方式和流程不变。

 

电子版认证证书支持查询验证,可通过扫描证书上的二维码进行有效性查询,或者访问 https://www.icourse163.org/verify,通过证书编号进行查询。学生可在“个人中心-证书-查看证书”页面自行下载、打印电子版认证证书。

 

完成课程教学内容学习和考核,成绩达到课程考核标准的学生(每门课程的考核标准不同,详见课程内的评分标准),具备申请认证证书资格,可在证书申请开放期间(以申请页面显示的时间为准),完成在线付费申请。

 

认证证书申请注意事项:

1. 根据国家相关法律法规要求,认证证书申请时要求进行实名认证,请保证所提交的实名认证信息真实完整有效。

2. 完成实名认证并支付后,系统将自动生成并发送电子版认证证书。电子版认证证书生成后不支持退费。


预备知识
  1. 能够熟练使用某一种操作系统。

  2. 有Linux使用经验更好。

  3. 有程序设计基础。

授课大纲

第1章 操作系统的概念(第1-2周)

实验补充:Linux用户及权限简单介绍

实验补充:Linux路径的基本概念

1 操作系统的概念 16:43

2 操作系统的逻辑结构和运行模型 11:43

3 操作系统的形成与发展 17:40

4 主要操作系统类型(1) 9:43

5 主要操作系统类型(2) 15:35

6 操作系统安全性概述 6:47

7 CPU工作状态 10:35

8 中断及系统调用 10:18

第1章测验

第2章 CPU管理(第3-5周)

1 程序的顺序执行和并发执行 18:18

2 进程的概念 17:9

3 两状态、三状态进程模型及状态转换 8:42

4 五状态进程模型及状态转换 13:8

5 进程切换 9:47

6 进程控制原语 15:57

7 作业和进程的关系 7:57

8 处理器的三级调度及模型 17:23

9 进程调度的方式和时机 12:22

10 进程调度算法评价标准 8:11

11 先来先服务、短作业优先调度算法 16:31

12 时间片轮转、高响应比优先调度算法 13:47

13 优先级、多级反馈队列调度算法 15:15

14 实时调度 11:4

第2章测验

第3章 进程同步与通信 (第6-9周)

1 进程间的同步与互斥 16:10

2 临界资源与临界区 12:34

3 实现互斥的硬件方法 13:4

4 实现互斥的软件方法 12:34

5 信号量 14:11

6 用信号量实现进程互斥 10:2

7 用信号量实现进程同步 19:40

8 生产者、消费者问题(1) 14:07

9 生产者、消费者问题(2) 8:59

10 哲学家进餐问题 18:13

11 读者-写者问题 17:47

12 睡眠理发师问题 12:10

13 缓冲区问题 9:10

14 吃水果问题 8:40

15 进程通信的概念 5:23

16 共享内存通信、消息缓冲通信方式 11:52

17 信箱通信方式、管道通信方式 10:31

18 死锁的概念和成因 17:1

19 死锁的必要条件 8:11

20 死锁的预防 13:52

21 死锁的避免 9:25

22 银行家算法 15:42

23 死锁的检测与解除 10:44

第3章测验

第4章 存储管理(第10-12周)

1 程序的地址和程序的链接 8:38

2 地址转换 11:54

3 多级存储体系及内存共享、保护 9:10

4 单一连续分区存储管理和固定分区管理 16:1

5 可变分区存储管理 17:35

6 覆盖与交换技术 8:29

7分页存储管理基本技术 16:19

8 分页存储管理的快表和多级页表 9:43

9 分段存储管理基本原理 10:26

10 段共享、段保护和分段存储管理优缺点 10:0

11 段页式存储管理 10:20

12 虚拟存储器的概念 6:6

13 请求分页存储管理 16:27

14 请求分页的页面置换算法及置换策略(1) 10:47

15 请求分页的页面置换算法及置换策略(2) 12:15

16 请求分段存储管理 11:56

17 请求段页式存储管理 10:41

第4章测验

第5章 设备管理 (第13-14周)

1 设备分类 9:5

2 设备管理的目标、功能和软件结构 9:58

3 I/O系统的硬件组织1 13:51

4 I/O系统的硬件组织2 9:23

5 I/O系统的软件组织 16:15

6 程序直接I/O和中断控制方式 8:15

7 DMA控制方式 12:9

8 缓冲技术 15:28

9 虚拟设备技术 8:23

10 设备的分配与回收 15:25

11 存储设备概述 11:29

12 磁盘调度及提高磁盘I/O速度的方法(1) 12:9

13 磁盘调度及提高磁盘I/O速度的方法(2) 9:24

14 磁盘阵列 13:6

第5章测验

第6章 文件管理 (第15-16周)

1 文件系统基本概念 12:44

2 层次模型及虚拟文件系统 7:33

3 文件操作 8:53

4 文件的逻辑结构 9:29

5 文件的物理结构 15:13

6 文件目录 13:11

7 文件存储空间管理 16:47

8 文件共享 12:50

9 文件安全(1) 14:35

10 文件安全(2) 7:30

第6章测验

参考资料
  1. 胡元义,黑新宏,金海燕,杨凯峰,鲁晓锋.操作系统原理[M].电子工业出版社.2018

  2. 庞丽萍.操作系统原理(第四版)[M].华中科技大学出版社.2015

常见问题

Q :  为什么要学习这么课程?

A :  有的同学说,老师,将来我想设计操作系统,尤其是国产的、自主、可控的操作系统。这种想法是很正确的。要想设计操作系统,必须熟悉操作系统的工作原理。
    有的同学又说了,老师,将来我想为各种层出不穷的新硬件写驱动,所以我进入了这门课程。这种想法也是正确的,只有熟悉了操作系统的工作原理,才能够正确设计驱动程序。
有的同学又说了,老师,将来我想从事计算机安全工作,和各种计算机病毒、木马程序作斗争,所以我进入了这门课程,这种想法也是正确的。
    有的同学也说了,老师,将来我只想做互联网应用的设计工作,是不是可以不学习这门课程?回答是否定的。即使你将来不从事操作系统的设计工作、或者底层的设计工作,操作系统的很多基本思想在应用程序的设计中仍然能够派上大用场,比如缓冲区技术就是常用的技术,进程、线程技术能够提高你的程序的性能,也就是说,操作系统原理中的很多思想,在应用程序的设计中,仍然是用得上的。

Q :  怎么学习这门课程?
A :  要想学习这门课程,一个基本要求就是理论加实践。大家千万不要把它当成纯粹的理论学习了,要通过各种实验去体会、理解相关理论和技术。还有一个小要求就是,在学习的时候,不能光看视频,要拿出你们的小本子,顺着思路,进行推导、计算,才能够深入理解有些理论。