《操作系统原理》学习操作系统的通用原理和算法,主要内容包括:进程管理、内存管理、设备管理、文件系统等核心内容。通过理论学习和实践环节,能掌握操作系统的基本功能、结构、原理和算法,具备分析和设计简单操作系统的能力,具备阅读、分析和裁剪现有开源操作系统的能力;培养大型程序设计方法和技巧,提高编制清晰、合理、可读性好的系统程序。课程概念清晰,内容丰富,通俗易懂,实践性与实用性较很强。每章课后有大量的习题、开放性思考题,上机编程题。
掌握操作系统的基本概念、核心原理、关键技术。通过理论学习和实践环节,能掌握操作系统的基本功能、结构、原理和算法,具备分析和设计简单操作系统的能力,具备阅读、分析和裁剪现有开源操作系统的能力;培养大型程序设计方法和技巧,提高编制清晰、合理、可读性好的系统程序。
第一章 操作系统概述
1.1 操作系统初步认识
1.2 操作系统功能和定义
1.3 操作系统发展历史
1.4 分时技术与分时操作系统
1.5 典型操作系统类型
第1章 单元作业(2)-开放性思考题
第1章 单元作业(1)
第二章 操作系统逻辑结构
2.1 操作系统逻辑结构
2.2 CPU的态
2.3 中断机制
第2章 单元作业(1)
第2章 单元作业(3)-推荐实验编程内容
第2章 单元作业(2)-开放性思考题
第三章 操作系统用户界面
3.1 操作系统启动过程——3.1.1 BIOS和主引导记录MBR
3.1 操作系统启动过程——3.1.2 操作系统启动过程
3.2 操作系统生成
3.3 操作系统用户界面——3.3.1 操作系统用户界面
3.3 操作系统用户界面——3.3.2 Shell脚本编程
3.4 系统调用
第3章 单元作业(2)
第3章 单元作业(5)-推荐实验编程内容
第3章 单元作业(3)
第1-3章单元测试
第四章 进程管理
4.1进程概念——4.1.1进程概念
4.1进程概念——4.1.2进程状态
4.1进程概念——4.1.3进程控制块PCB
4.2进程控制——4.2.1进程控制的概念
4.2进程控制——4.2.2Windows进程控制
4.2进程控制——4.2.3Linux进程控制
4.3线程——4.3.1线程概念
4.3线程——4.3.2线程典型应用场景
4.4临界区和锁——4.4.1临界资源与临界区
4.4临界区和锁——4.4.2锁机制
4.5同步和P-V操作——4.5.1同步和互斥的概念
4.5同步和P-V操作——4.5.2P-V操作概念
4.5同步和P-V操作——4.5.3P-V操作解决互斥问题
4.5同步和P-V操作——4.5.4P-V操作解决同步问题
4.5同步和P-V操作——4.5.5经典同步问题
4.6Windows和Linux同步机制——4.6.1Windows同步机制
4.6Windows和Linux同步机制——4.6.2Linux父子进程同步
4.7进程通信——4.7.1匿名管道通信
4.7进程通信——4.7.2Linux信号通信
第4章 单元作业(3)
第4章 单元作业(6)-推荐实验编程内容
第4章 单元作业(1)
第五章 死锁
5.1 死锁概念
5.2 死锁起因
5.3 死锁预防策略
第5章 单元作业(1)
第六章 进程调度
6.1 进程调度概念
6.2 典型调度算法
6.3 Linux进程调度
第4-6章单元测试
第七章 存储管理
7.1 内存管理功能——7.1.1 内存管理功能(一)
7.1 内存管理功能——7.1.2 内存管理功能(二)
7.2 物理内存管理——7.2.1 分区存储管理
7.2 物理内存管理——7.2.2 分区放置策略
7.2 物理内存管理——7.2.3 内存覆盖技术
7.2 物理内存管理——7.2.4 内存交换技术
7.2 物理内存管理——7.2.5 内存碎片
7.3 虚拟内存管理——7.3.1 页式虚拟内存管理
7.3 虚拟内存管理——7.3.2 页表和页式地址映射
7.3 虚拟内存管理——7.3.3 快表技术和页面共享技术
7.3 虚拟内存管理——7.3.4 缺页中断
7.3 虚拟内存管理——7.3.5 页面淘汰
7.3 虚拟内存管理——7.3.6 缺页因素与缺页系统缺点
7.3 虚拟内存管理——7.3.7 段式和段页式虚拟存储
7.4 Intel CPU与Linux内存管理——7.4.1 Intel CPU物理结构
7.4 Intel CPU与Linux内存管理——7.4.2 Intel CPU段机制
7.4 Intel CPU与Linux内存管理——7.4.3 Linux页面机制
7.4 Intel CPU与Linux内存管理——7.4.4 Linux对段的支持
第7章 单元作业(2)
第7章 单元测验
第7章 单元作业(4)
第7章 单元作业(3)
第八章 设备管理
8.1 设备管理概念
8.2 Spooling系统
8.3 设备驱动——8.3.1 Linux模块机制
8.3 设备驱动——8.3.2 Linux驱动程序
8.3 设备驱动——8.3.3 Windows驱动程序
第8章 单元作业(2)
第8章 单元作业(4)-推荐实验编程内容
第九章 文件管理
9.1 文件系统概念
9.2 文件物理结构
9.3 FAT文件系统
9.4 文件存储管理和目录
第9章 单元作业(1)
(1)要求掌握《汇编语言》,《C语言程序设计》,《计算机组成原理》等先修课程的内容。
(2)要求对计算机的基本结构有一定的感性认识,能较熟练使用 Windows,Linux等常用操作系统,熟悉其命令,操作,基本编程环境。
(3)如果缺少上述基础,课程的部分内容可能会较难理解,读者会感到抽象,晦涩难懂。
(4)建议读者按章节顺序逐步学习,尽量不要跳跃,否则有些知识点可能会难以理解。
[1] 苏曙光,《操作系统原理》,人民邮电出版社,2022年
样书链接:https://www.ryjiaoyu.com/book/details/44735
[2] Andrew S.Tanenbaum.《现代操作系统》,机械工业出版社
[3] Gary Nutt, 孟祥山译.《操作系统现代观点》,机械工业出版社
[4] Abraham Silberschatz.Operating System Concepts Essentials,John Wiley & Sons. Inc
Q01: 有没有教材和PPT课件对应?
A01: 人民邮电出版社2022年出版的《操作系统原理》(作者:苏曙光)是与课件最吻合的教材。样书链接:https://www.ryjiaoyu.com/book/details/44735
Q02: PPT课件是否可以下载?
A02: 可以。PPT课件和视频并列放在一起,用户可以下载。
Q03: 每章有没有课后练习或作业或测验?
A04: 每节课(知识点)有开放型的讨论,每章课后有“作业题”,有“开放型思考题”,每2-3章有单元测验。
Q05: 适合我学习吗?
A05: 如果你有一定的C语言基础,对计算机的基本操作和编程有一定的了解,对计算机的基本结构和工作原理有一定了解,你可以学习本门课程。
Q06: 我是高校教师或我以前学过《操作系统原理》,适合看吗?
A06: 你可以根据自己兴趣挑着看或跳着看。