操作系统
【考点1】进程的三态模型
传统上,每个进程在任何时刻总是处予三种基本状态:(即运行Running、就绪Ready、阻塞Blocked)的某一 种基本 状态。在不少系统中,还增加了两种基本状态:新建态、终止态。
【考点2】同步与互斥
同步是进程间的直接制约问题,互斥是进程间的间接制约问题。PV操作是实现进程同 步与互斥的常用方法,PV操作是低级通信原语,在执行期间不可分割。其中,P操作表示申请一个资源,V操作表示释放一个资源。
信号量PV操作
-
Wait操作(P操作)
-
申请资源,减量操作,S.value:=S.value-1
-
当S.value<0时,表示资源分配完,进行自我阻塞
-
Signal操作(V操作)
-
释放资源,增量操作,S.value:=S.value+1当S.values=0,唤醒S.L链表中的等待进程
案例分析1
假设系统有n个进程共享资源R,且资源R的可用数为3,其中n≥3。若采用PV操作,则信号量S的取值范围应为( )。
答案:- ( n - 3 ) ~ 3案例分析2
进程P1、P2、P3、P4和P5的前趋图如下,若用PV操作控制进程P1-P5并发执行的过程,则需要设置6个信号量S1、S2、S3、S4、S5和S6,且信号量S1~S6的初值都等于零。下图中a和b处应分别填写(23 C);c和d处应分别填写(24 B ) ,e和f处应分别填写( 25 C)。
笔记:a 是P1执行完毕,所以要释放资源,V(S1)和V(S2),同样b也同理,V(S3)和V(S4),c是在P3的位置,执行前要占用资源,即P(S1)和P(S3),d是P3执行完,要释放资源V(S5)和V(S6),e和f都是执行前的获取资源,P(S2)和P(S5)和P(S4)和P(S6)
【考点3】相对路径和绝对根路径
绝对路径:是从盘符开始的路径,形如:C:\windows\system32\cmd.exe
相对路径:是从当前路径开始的路径,假如当前路径为C:\windows,要描述上述路径,只需 输入 system32\cmd.exe
【考点4】死锁
-
死锁是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。
-
可把系统资源分为两类:
-
a.可剥夺性资源∶资源分配给进程后可以被高优先级的进程剥夺,如CPU、主存。不会产生死锁.
-
b.不可剥夺性资源︰分配给进程后只能在进程用完后才释放的资源,如磁带机、打印机等。
死锁发生的四个条件:
-
互斥条件:即一个资源每次只能被一个进程使用
-
保持和等待条件∶有一个进程获得了一些资源,但因正在请求其他资源而被阻塞不剥夺条件︰就是系统不是抢占式的,进程已获得的资源在未使用完之前,不能剥夺,只能在使用完后由自己释放
-
环路等待条件︰若干个进程形成环型链,每个都占用对方要申请的下一个资源
解决死锁的策略
-
死锁避免︰避免是指进程在每次申请资源时判断这些操作是否安全,典型避免死锁的算法是银行家算法
-
死锁检测︰判断系统是否处于死锁状态,如果是,则执行死锁解除策略
-
死锁解除︰就是剥夺,即将资源强行分配给别的进程
-
不产生死锁的条件︰资源数≥并发进程数*(每个进程所需资源-1)+1 ,即n ( m-1 )+1
-
例题:
-
某计算机系统中互斥资源R的可用数为8,系统中有3个进程P1、P2和P3竞争R,且每个进程都需要i个R,该系统可能会发生死锁的最小i值为( )。
-
A.1 B.2 C.3 D.4
-
笔记:3个进程P1、P2、P3,当i=1,3个进程数和为3<8
当i=2,6<8,也没问题
当i=3,9>8,不过3个进程按照3,3,2分配,当P1和P2分配3个进程可以顺利进行,执行完释放资源在执行P3,不管怎么分配,都会保证有一个进程能顺利执行完毕,然后释放资源执行下一个进程
当i=4,每个进程至少需要4个资源顺利执行,那么当你分配3,3,2的时候就会发生死锁,所有有可能会发生死锁。
【考点5】实存管理
- 存储管理的任务是存储空间的分配与回收。现代操作系统通常有∶
单一连续分配方法
固定分区分配方法
可变分区分配方法
【考点】虚存管理
虚存管理
例题分析:
段是不定长的,所以选择B
考点:
- 进程三态模型∶就绪、运行、阻塞
- 同步和互斥,PV操作、死锁n ( m-1 )+1
- 文件系统(绝对路径、相对路径)、图片容量计算