第一章 绪论
1、什么是操作系统?
1、概念
操作系统(Operating System OS)是指控制和管理整个计算机系统的硬件和软件资源,并合理组织调度计算机的工作和资源分配,以提供给用户和其他软件方便的接口和环境,它是计算机系统中最基本的系统软件。
Tips:计算机软件分为系统软件和应用软件两大类,系统软件:操作系统、设备驱动程序、数据库管理系统等;应用软件:QQ、微信等。
2、功能
(1)管理系统资源
1、进程管理
2、处理机调度管理
3、内存管理
4、文件管理
5、设备管理
(2)作为用户和计算机硬件之间的接口
联机命令接口又称交互式命令接口,“你说一句,我做一句”。
脱机命令接口又称批处理命令接口,“你说一堆,我做一堆”。
(3)作为最接近硬件的层次
2、操作系统有哪些特征?
1、并发
2、共享
并发与共享的关系:
操作系统两个最基本的特征,二者互为存在条件。
3、虚拟
4、异步
3、操作系统的发展阶段和分类
1、手工操作阶段
2、批处理阶段
(1)单道批处理系统
(2)多道批处理系统
单道批与多道批:
3、分时操作系统
4、实时操作系统
5、其他操作系统
网络操作系统:例如,Windows系列、UNIX、Linux等。
分布式操作系统:主要特点是分布性和并行性,系统中的各台计算机地位相同,任何工作都可以分布在这些计算机上,由它们并行、协同完成任务。
4、内核
1、两种指令
特权指令:用于操作系统和其他系统软件,一般不允许用户程序使用,如内存清零指令(不允许用户程序使用)。
非特权指令:允许用户程序使用,如普通的运算指令。
2、两种处理器状态
用户态(目态):CPU只能执行非特权指令。
核心态(管态):特权指令和非特权指令都可以执行。
使用程序状态寄存器(PSW)标识当前处理器状态。
3、操作系统内核
大内核与微内核:
5、 中断
1、什么是中断?
2、中断的分类
自愿中断即陷阱、陷入(Trap),有意而为之的中断。
硬件故障即故障(Falut),由错误条件引起的,可能被故障处理程序修复。
软件中断即终止(Abort),不可恢复的致命错误造成的结果,终
止处理程序不再将控制返回给引发终止的应用。
3、外中断的处理过程
6、系统调用
系统调用的过程:
过程:
(1)进程传递系统调用参数,请求系统调用
(2)CPU执行内中断(陷入指令),进入核心态
(3)CPU执行系统调用相应服务程序
(4)返回用户进程
第二章 进程管理
1、什么是进程?
1、什么是进程?
进程(Process)是指一个具有一定独立功能的程序在一个数据集合上的一次动态执行过程
2、进程的组成部分
3、进程的组织方式
(1)链接方式
根据进程状态将所有PCB分为多个队列,操作系统持有指向各个队列的指针。
(2)索引方式
根据进程状态建立相应索引表,操作系统持有指向各个索引表的指针。
4、进程特征
(1)动态性:进程是程序的一次执行过程,是动态地产生、变化和消亡的,动态性是进程最基本特征。
(2)独立性:进程是能独立运行、独立获得资源、独立接受调度的基本单位,进程是资源分配的基本单位。
(3)并发性:内存中有多个进程实体,各进程可以并发执行。
(4)异步性:各进程按各自独立的、不可预知的速度向前推进。
(5)结构性:每个进程都会配置一个PCB,从结构上看,进程由程序段、数据段、PCB组成。
2、进程的生命周期
1、进程的状态
(1)创建态:进程正在被创建,操作系统为进程分配资源,初始化PCB等。
(2)运行态:占有CPU,并在CPU上运行。
(3)就绪态:已经具有除了CPU以外的所有资源,万事俱备,只欠CPU。
(4)阻塞态:缺少部分进程运行所需要的系统资源。
(5)终止态:进程正在从系统中终止,操作系统会回收进程拥有的系统资源、撤销PCB等。
3、 进程控制
1、什么是进程控制?
实现进程状态转换
1、什么是进程控制?
进程控制:实现进程状态转换。
2、如何实现进程控制?
用原语实现进程控制,原语的特点是执行期间不允许中断,即原子操作。
原语运行在核心态,执行特权指令,采用"关中断指令"和"开中断指令"实现。
2、原语
原语实现进程控制,原语的特点是执行期间不允许中断,即原子操作。原语运行在核心态,执行特权指令,采用"关中断指令"和"开中断指令"实现。
3、进程控制原语
(1)更新PCB中的信息(例如,修改进程状态标志、将运行环境保存到PCB或从PCB恢复运行环境等)
(2)将PCB插入到相应的队列或索引表
(3)分配或回收系统资源
4、进程创建
无 ——> 创建态 ——> 就绪态
创建原语:申请空白PCB;为新进程分配所需资源;初始化PCB;将PCB插入到就绪队列或索引表。
5、进程终止
就绪态、阻塞态、运行态 ——> 终止态
撤销原语:从PCB集合中找到终止进程的PCB;若进程正在运行,立即剥夺CPU,将CPU分配给其他进程;终止其所有子进程;将该进程拥有的所有资源归还给父进程或操作系统;撤销PCB。
6、进程阻塞&唤醒
阻塞原语:找到要阻塞的进程对应的PCB;保护进程运行现场,将PCB状态信息设置为阻塞态,暂时停止进程运行;将PCB插入相应事件的阻塞队列或索引表。
唤醒原语:在阻塞队列中找到PCB;将PCB从阻塞队列移除,更新PCB设置进程状态为就绪态;将PCB插入就绪队列或索引表,等待被调度。
4、进程同步
1、什么是进程同步?
在多道程序环境下,进程是并发执行的,不同进程之间存在着不同的相互制约关系。
5、进程互斥
1、什么是进程互斥?
间接制约关系
临界资源:某一时间段内只允许某一进程使用的资源
进程互斥:某一临界资源在同一时间下只允许某一个进程访问,其他进程则需等待进程结束释放该临界资源。
进程互斥的实现方法:
Q:考虑每种实现方法是否都遵循四项原则?