进程控制
- 概念:进程是程序在一个数据集合上的运行过程,是操作系统进行资源分配和调动的独立单位;由程序块,控制块、数据块三个部分组成。(了解)
- 控制:在系统中,所有进程呈创建到消亡的整个过程的有效控制,由操作系统中内核的原语控制的。
原语
- 概念:指由若干条机器指令组成的,用于完成特定功能的程序。
- 具有原子性,执行过程不可分割,要么做要么都不做
互斥
-独木桥模型:一次只能通过一个人
同步
A不做,B做不了
临界资源
- 一次只能给一个进程使用的资源。
临界区
- 要使用临界资源的这一段程序代码就叫做临界区。
信号量
-
在P、V、S机制中,S指的是信号量。
-
信号量是一个整型的变量,根据不同的环境发生变化。
-
分类(根据控制对象不同)
-
公用信号量:
用于实现进程间的互斥,初始的值一般等于1或互斥资源的数量 -
私用信号量 :
用于实现进程间的同步,初始的值一般等于0或某一个整数,与环境有关。
-
-
含义(根据控制对象不同)
- 当S>=0时,代表系统有资源分配给这个进程,也就是说即资源是可用的状态。
- 当S<0时,其绝对值表示在阻塞队列里等待该资源的进程数。
PV操作
-
P操作
概念:申请资源的操作。每执行一次P操作,使信号量的值减1。 -
V操作
概念:释放资源的操作。每执行一次V操作,使信号量的值加1。 -
PV操作的作用
可以实现多个进程的协作运行。 -
考点注意
注意下PV操作是否是成对出现的,不成对,容易死锁
根据P之后。V之前的语句判断S指的是什么内容
例题
- 圆圈是指进程,里面的Pi指的是名字
- 长方形里面有几个球,说明有几个资源
表示进程申请一个资源,箭头指向长方形 - 箭头指向圆圈,表示系统分配一个资源给进程
- 箭头线有几条,就是申请几个资源
解析
- R3只分配一个出去,共两个球,还剩一个,P3申请时就不会堵塞
- R2分配3个出去,共3个球,P1申请时会堵塞
- R1分配2个出去,共2个球,P2申请时会堵塞