- 第一章 操作系统引论
- (一)操作系统的介绍
- 1.定义
- (1)操作系统是一组用于控制和管理计算机系统硬件和软件资源、合理地对各类作业进行调度,以及方便用户使用的程序集合。
- 2.地位
- (1)操作系统是裸机之上的第一层软件,是建立其他所有软件的基础。它是整个系统的控制中心,既管理硬件,又管理软件,它为其他软件提供运行环境。
- 3.基本特征
- (1)并发:是指两个或者多个活动在同意给定的时间间隔中进行
- (2)共享:是指计算机系统中的资源被多个进程所共用。
- (3)异步:进程以不可预知的速度向前推进
- (4)虚拟:把一个物理上的实体变为若干个逻辑上的对应物。
- (5)最基本的特征是:并发和共享(两者互为存在条件)
- 4.主要功能
- (1)处理机管理
- 主要功能包括进程控制、进程同步、进程通信、死锁处理、处理机调度等。
- (2)存储器管理
- 主要包括内存分配、地址映射、内存保护与共享和内存扩充等功能
- (3)设备管理
- 主要包括缓冲管理、设备分配、设备处理和虚拟设备等功能。
- (4)信心管理(文件管理)
- 包括文件存储空间的管理、目录管理以及文件读写管理和保护等。
- (5)用户接口
- (1)处理机管理
- 5.发展
- (1)手工操作阶段(此阶段无操作系统)
- 缺点:人机速度矛盾
- (2)批处理阶段(操作系统开始出现)
- ①单道批处理阶段
- ②多道批处理阶段(操作系统正式诞生)
- 目的:提高系统资源的利用率
- 优:多道程序并发执行,资源利用率高
- 缺:不提供人机交互能力(缺少交互性)
- (3)分时操作系统(不可插队,有了人机交互)
- 优:提供人机交互(交互性)
- 缺:不能优先处理紧急事务
- (4)实时操作系统(可以插队)
- ①硬实时系统:必须在被控制对象规定的时间内完成(火箭发射)
- ②软实时系统:可以松一些(订票)
- 优:能优先处理紧急任务
- (5)个人计算机操作系统、网络操作系统、分布式操作系统
- 总:从可靠性看实时操作系统更强,从交互性看分时操作系统更强
- (1)手工操作阶段(此阶段无操作系统)
- 1.定义
- (二)不得不知的慨念
- 1.两种指令
- (1)特权指令:不允许用户程序使用(只允许操作系统使用),如IO指令、置中断指令
- (2)非特权指令:普通运算指令
- 2.两种程序
- (1)内核程序:系统的管理者,可执行一切指令、运行在核心态
- (2)应用程序:普通用户程序只能执行非特权指令,运行在用户态
- 3.原语
- (1)处于操作系统的最底层,是最接近硬件的部分
- (2)这些程序的运行具有原子性,其操作只能一气呵成
- (3)这些程序的运行时间都比较短,而且调用频繁
- 4.中断和异常
- (1)内中断(异常、信号来自内部):①资源中断----指令中断②强迫中断(硬件中断,软件中断)
- (2)外中断(中断,信号来自外部)①外设请求②人工干预
- 5.系统调用
- 系统给程序员(应用程序)提供的唯一接口,可获得OS的服务。在用户态发生,核心态处理
- 6.体系机构
- (1)大内核(2)微内核
- 7.处理机状态
- (1)用户态(目态):CPU只能执行非特权指令
- (2)核心态(又称为管态、内核态):可以执行所有指令
- (3)用户态到核心态:通过中断(是硬件完成的)
- (4)核心态到用户态:特权指令psw的标准位0用户态1核心态
- 1.两种指令
- (一)操作系统的介绍
- 第二章进程调度
- (一)进程管理
- 1.引入进程目的:为了更好地描述和控制并发执行,实现操作系统地并发性和共享性(进程是动态的,程序是静态的)
- 2.定义:是计算机中程序关于某数据集合上地一次运行活动,是系统进行资源分配和调度地基本单位
- 3.组成
- (1)PCB(保存进程运行期间相关的数据,是进程存在地唯一标准)
- (2)程序段:能被进程调度到CPU的代码
- (3)数据段
- 4.进程的状态
- (1)状态种类:
- a.运行态——进程正在占用CPU
- b.就绪态——进程已处于准备就绪的状态,即进程获得了除处理机外的一切所需资源,一旦得到处理机即可运行
- c.阻塞态
- d.创建状态——进程正在被创建
- e.结束状态——进程正在从系统消失
- (2)状态变化:就绪态->运行态、运行态->就绪态、运行态—>阻塞态、阻塞态->就绪态
- (1)状态种类:
- 5.线程
- (1)引入目的:为了更好的使用多道程序并发执行,提高资源利用率和系统吞吐量
- (2)特点:是程序执行的最小单位,基本不拥有任何系统资源(调度的基本单位)
- (二)处理机调度
- 1.慨念:是对处理机进行分配,即从就绪队列中按照一定的算法(公平,高效)选择一个进程并将处理机分配给它运行,以实现进程并发的执行
- 2.分类
- (1)高级调度(作业调度)(次数少)
- (2)中级调度(内存对换)(次数中等)
- (3)低级调度(进程调度)(次数多)
- 3.调度方式 —— 剥夺式,非剥夺式
- 4.调度准则 ——CPU利用率、系统吞吐量、周转时间、等待时间、响应时间
- 5.算法
- (1)先来先服务(FIFO)
- (2)短作业优先
- (3)优先级调度算法
- (4)高响应比优先调度算法
- (5)时间片轮转
- (6)多级反馈队列调度算法
- (三)进程同步
- 1.引入原因:协调进程之间的相互制约关系
- 2.制约关系
- (1)同步:直接制约关系,是指为完成某种任务而建立的两个或者多个进程,这些进程因为需要在某些位置上协调它们的工作次序而等待,传递信息所产生的制约关系
- (2)互斥:间接制约关系,当一个进程进入临界区使用临界资源时,另一个进程必须等待,当占用临界资源的进程退出临界后,另一个进程才允许去访问此临界资源。
- 3.临界资源 —— 一次仅允许一个进程使用的资源(打印机,共享缓冲区,共享变量,公用队列)
- 4.临界区——在每一个进程访问临界资源的那段程序
- 5.临界区互斥
- (1)原则:空闲让进(一次允许一个进程进入)、忙则等待、有限等待(有限时间中退出)、让权等待(避免出现“忙等”现象)
- (2)基本方法——信号量 利用PV操作实现互斥
- (四)死锁
- 1.产生的原因:非剥夺资源的竞争和进程的不恰当推进顺序(与饥饿区别)
- 2.定义:多个进程因竞争资源而造成的一种僵局,如果没有外力,这些进程无法推进
- 解决的方法:
- (1)预防死锁——破坏互斥条件、破坏不剥夺条件、破坏请求和保持条件、破坏循坏等待条件
- (2)避免死锁——安全状态和银行家算法
- (3)检测死锁:利用死锁定理
- (4)解除死锁——资源剥夺法、撤销进程法、进程回退法
- (一)进程管理
操作系统:第一章,第二章总结
最新推荐文章于 2023-04-25 23:42:54 发布