操作系统
1、进程
进程是程序的一次执行,进程通常是由程序、数据和进程控制块(PCB)组成;
三态五态模型
同步和互斥
同步:多个进程并发执行,每个进程都以各自独立的、不可预知的速度向前推进,需要在某些确定的点上协调相互合作进程间的工作;
互斥:系统中多个进程因征用临界资源而互斥执行;
临界资源:一次只能供一个进程使用的资源;
临界区:进程中对临界资源实施操作的那段程序;
信号量:一个整型变量,根据控制对象的不同被赋予不同的值。信号量分为两类:
- 共用信号量:实现进程间的互斥,初始值为1或资源的数目;
- 私用信号量:实现进程间的同步,初始值为0或某个正整数;
PV操作
PV操作是实现进程同步与互斥的常用方法;P操作和V操作是低级通信原语,在执行期间不可分割;P操作表示申请一个资源,V操作表示释放一个资源(有等待,则唤醒);
P操作的定义为:S=S-1,若S>=0,则执行P操作的进程继续执行;若S<0,则该进程为阻塞状态(因为无可用资源),并将其插入阻塞队列;
V操作的定义是:S=S+1,若S>0,则执行V操作的进程继续执行;若S<=0,则从阻塞状态唤醒一个进程,并将其插入就绪队列,然后执行V操作的进程继续;
调度算法
1、先来先服务 FCFS;
2、时间片轮转:固定时间片、可变时间片;
3、优先级调度:静态优先级、动态优先级;
4、多级反馈调度:时间片轮转和优先级算法的综合与发展;
死锁
指两个以上的进程互相都要求对方已经占有的资源导致无法进行下去的现象;
产生死锁的四个必要条件:互斥、保持请求、不可剥夺和环路等待条件;
死锁的处理策略:
- 鸵鸟策略:不理睬策略;
- 预防策略:预先静态分配法和资源有序分配法;破坏四个条件中的一个或几个;
- 避免策略:不严格要求破坏四个必要条件;银行家算法,对资源请求命令加以检测,如果发现分配资源后系统进入不安全状态,则不分配;
- 检测与解除策略:检测-系统运行一个定时程序,判断是否发生死锁;解除-资源剥夺法和撤销进程法;
2、存储管理
页式存储
将程序与内存划分为同样大小的块,以页为单位将程序调入内存;
逻辑地址 = 页号 + 页内地址
物理地址 = 页帧号 + 页内地址;页帧号 = 物理块号;
优点:利用率高,碎片小,分配及管理简单;
缺点:增加了系统开销;可能产生抖动现象;
段式存储
按用户作业中的自然段来划分逻辑空间,然后调入内存,各段长度不等;
优点:多道程序共享内存,各段程序修改互不影响;
缺点:内存利用率低,内存碎片大;
段页式存储
先分段,再分页;
优点:空间浪费小,存储共享容易,存储保护容易,能动态连接;
缺点:由于管理软件的增加,复杂性和开销也随之增加,需要的硬件以及占用的内容有所增加,使得执行速度大大下降;
页面置换算法
- 最佳置换算法
- 随机算法
- 先进先出置换算法(FIFO)
- 最近最少未使用置换算法(LRU)
- 最近未用置换算法(NUR)
磁盘管理
存取时间 = 寻道时间 + 等待时间,寻道时间是指磁头移动到磁道所需要的时间,等待时间是为等待读写的扇区转到磁头下方所用的时间;
调度算法:
- 先来先服务(FCFS)
- 最短寻道时间优先(SSTF)
- 扫描算法(SCAN)
- 循环扫描(CSCAN)
3、作业管理、文件管理和设备管理
作业调度算法
- 先来先服务
- 时间片轮转
- 短作业优先
- 最高优先权优先
- 高响应比优先
数据传输控制方式
- 程序控制方式(查询):无条件传送和程序查询方式两种;方法简单,硬件开销小,但 I/O 能力不高,CPU暂停等待,严重影响 CPU 的利用率;
- 程序中断方式:中断后,CPU可以去处理其他任务,无需等待,提高了传输请求的响应速度;
- DMA方式:数据在主存与 I/O 设备间直接成块传送;传输过程不需要CPU的任何干涉;
- 通道方式
- I/O 处理机
效率从上到下,越来越高