考察:

  • 信号量与PV操作结合分析——语言描述,流程图
  • 看那些是同步,互斥信号量

进程调度

考点二:信号量与PV操作

进程管理——PV操作和互斥模型

PV操作和互斥模型的形式之一

【中级软考—软件设计师】2操作系统2.3进程调度【****】:2.3.2考点二:信号量与PV操作_信号量

  • 加锁,解锁成对出现
  • 信号量S初始值为1:这里指的是打印机资源——1台

进程管理——PV操作与同步模型

PV操作与同步和互斥模型的形式之一

  • 同步模型会涉及到多个进程之间有一个顺序的协调
  • 单与多缓冲区——指的是缓冲区的空间资源
  • 分析PV都是先忽略PV,再添加上PV来解决问题

先从生产者开始看的话

【中级软考—软件设计师】2操作系统2.3进程调度【****】:2.3.2考点二:信号量与PV操作_进程管理_02

  • 产品送缓冲区要先看是否有空间

先从消费者开始看的话

【中级软考—软件设计师】2操作系统2.3进程调度【****】:2.3.2考点二:信号量与PV操作_信号量_03

  • PV操作是成对出现的,但是不要求前后顺序

小结

  • 每次一加锁都在使用资源之前,每一次解锁都在使用资源之后
  • S1和S2是同步信号量
  • S1初始为1:是针对缓冲区来的
  • S2初始为0:是针对产品资源

进程管理——互斥与同步模型结合

【中级软考—软件设计师】2操作系统2.3进程调度【****】:2.3.2考点二:信号量与PV操作_软考_04

问:如何不能让两个进程同时使用缓冲区

  • 解决方法:在每次使用缓冲区的过程当中,都加锁;用完之后,立马解锁。
  • 这里S信号量控制的是:对临界资源的访问——对缓冲区的访问【同一时刻只能让一个进程用——可以理解为访问权】
  • 同步信号量:S1初值为1,S2初值为0
  • 互斥信号量S的初始值为0:谁有访问权,谁就用

问:当不是单缓冲区,而是空间为m的缓冲区

  • 此时同步信号量:S1初值为m

例题讲解

【中级软考—软件设计师】2操作系统2.3进程调度【****】:2.3.2考点二:信号量与PV操作_信号量_05


【中级软考—软件设计师】2操作系统2.3进程调度【****】:2.3.2考点二:信号量与PV操作_进程管理_06

  • 第一空选:C
  • 第二空选:D