暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

【软件评测师】考点37——PV操作的基础知识

昊洋与你一起成长 2021-09-08
1942

PV操作是软件评测师考试的高频考点,经常出现在上午场的客观选择题当中。对于系统中的每个进程,其工作的正确与否不仅取决于它自身的正确性,而且与它在执行中能否与其他相关进程正确地实施同步互斥有关,PV操作是实现进程同步与互斥的常用方法。下面就该知识点的基础知识结合例题进行总结学习。


一、信号量

信号量可以有效地实现进程的同步和互斥。在操作系统中,信号量是一个整数,当大于等于0时,代表可供并发使用的资源实体数;当小于0时,其绝对值表示正在等待使用临界区的进程数。建立一个信号量必须说明所建信号量所代表的意义和设置初值,以及建立相应的数据结构,以便指向那些等待使用临界区的进程。


二、同步与互斥

在多道程序环境的系统中存在多个可以并发执行的进程,故进程间必然存在资源共享和相互合作的问题,进程通信是指各个进程交换信息的过程,这时候就涉及到同步和互斥的问题。

(1)互斥:在多道程序系统环境中,各进程可以共享各类资源,但有些资源一次只能供一个进程使用,称为临界资源,如打印机、共享变量和表格等。进程间的互斥是指系统中各进程互斥使用临界资源。一组并发的进程中一个或多个程序段,因共享某一个公有资源而导致他们必须以一个不允许交叉执行的单位执行,所以互斥信号量的取值只能是1或0。简而言之,互斥是要保证临界资源在某一时刻只能被一个进程访问。



(2)同步:在计算机系统中,多个进程可以并发执行,每个进程都以各自独立的、不可预知的速度向前推进,但是需要在某些确定点上协调相互合作进程间的工作。例如,进程A向缓冲区送数据,进程B从缓冲区取数据加工,当进程B要取数据加工时,必须是进程A完成了向缓冲区送数据的操作,否则进程B必须停下来等待进程A的操作结束。可见,进程间的同步是指进程间完成一项任务时直接发生相互作用的关系。异步环境下的一组并发进程因直接制约而互相发送消息,进程互相合作和等待,使得各个进程按一定的速度执行的过程。简而言之,进程之间是异步执行的,同步是说使各个进程按一定的制约顺序和速度执行。

三、PV操作

对于系统中的每个进程,其工作的正确与否不仅取决于它自身的正确性,而且与它在执行中能否与其他相关进程正确地实施同步互斥有关。PV操作是实现进程同步与互斥的常用方法。P操作和V操作是低级通信原语,在执行期间不可分割。其中,P操作表示申请一个资源,V操作表示释放一个 资源。

(1)P操作:作用是将信号量减1,当信号量变成负数时,则停止调用P操作的进程,直到另一个进程对同一信号量执行V操作。若信号量S≥0,则执行P操作的进程继续执行;信号量若S<0,则置该进程为阻塞状态(因为无可用资源),并将其插入阻塞队列。P操作可用以下过程表示,其中,Semaphore表示所定义的变量是信号量。

(2)V操作:作用是将信号量加1,当信号量小于等于0时,从相应的队列中选择一个进程唤醒它。若信号量S>0,则执行V操作的进程继续执行;若S≤0,则从阻塞状态唤醒一个进程,并将其插入就绪队列,然后执行V操作的进程继续。V操作可用如下过程表示:

(3)利用PV操作实现进程的互斥

令信号量mutex的初值为1,当进入临界区时执行P操作,退出临界区时执行V操作。这样,利用PV操作实现进程互斥的代码段如下:


(4)利用PV操作实现进程的同步

进程的同步是由于进程间合作引起的相互制约的问题,要实现进程的同步可用一个信号量与消息联系起来。假定用信号量S表示某条消息,进程可以通过调用P操作测试消息是否到达,调用V操作通知消息已准备好。最典型的同步问题是单缓冲区的生产者和消费者的同步问题,例如一个生产者和一个消费者,缓冲区中可存放n件产品,生产者不断地生产产品,消费者不断地消费产品,如何用PV操作实现生产者和消费者的同步。可以通过设置3个信号量S、S1和S2,其中:

S是一个互斥信号量,初值为1,因为缓冲区是一个互斥资源,所以需要进行互斥控制;

S1表示是否可以将产品放入缓冲区,初值为n;

S2表示缓冲区是否存有产品,初值为0。

其同步过程如下图所示:



下面是近几年对该知识点考察过的真题,以后仍是考试出题的重点,大家要重视起来。

【2017年14题】假设系统有n(n5)个并发进程共享资源R,且资源R的可用数为2。若采用PV操作,则相应的信号量S的取值范围应为(  )。

A、-1~n-1

B、-5~2

C、-(n-1)~1

D、-(n-2)~2

解析:本题考查PV操作的基础知识。

当所有进程运行完成/未开始时,信号量S的取值为2,当所有进程同时并发时,S=2-n=-(n-2),如果取值是负数时,表示有进程在等待资源的分配。所以信号量的范围为:-(n-2)~2

故正确答案为:D


【2018年14题】假设系统有n(n≥6)个并发进程共享资源R,且资源R的可用数为3。若采用PV操作,则相应的信号量S的取值范围应为(  )。

A、-(n-3)~3       

B、-6~3     

C、-(n-1)~1

D、-1~n-1

解析:本题考查PV操作的基础知识。


当所有进程运行完成/未开始时,信号量S的取值为3,当所有进程同时并发时,S=3-n=-(n-3),如果取值是负数时,表示有进程在等待资源的分配。所以信号量的范围为:-(n-3)~3

故正确答案为:A


【2019年16题】假设系统有n(n≥5)个并发进程,它们竞争互斥资源R。若釆用PV操作,当有3个进程同时申请资源R,而系统只能满足其中1个进程的申请时,资源R对应的信号量S的值应为( )。

A、-1

B、-2

C、-3

D、0

解析:本题考查操作系统的基础知识。

3个进程同时申请,只能满足1个进程申请,则信号量S的值为:1-3=-2。信号量为-2表示有2个进程正在等待资源的分配。

故正确答案为:B



作者唯一官方个人微信公众号(昊洋与你一起成长):HYJY20180101

写于2021年9月8日

作者:昊洋讲师

版权所有,侵权必究


软件
文章转载自 昊洋与你一起成长,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

天下网标王网站建设优化seo广东省网站排名优化大连网站排名优化公司网站SEO优化目标模特网站优化如何通过网站优化来提高页面权重网站基本优化设置南充企业网站优化公司网站运营与优化竞价网站优化课程安丘网站优化怎么样湖州网站长尾关键词优化横沥鞋网站优化哪家快沧州网站搜索排名优化费用长沙网站优化认准智优营家邯郸服务好的网站优化与推广甘肃网站优化推广哪个公司可以做三明市网站优化公司郑州种植网站整站优化分析360网站排优化靠谱网站优化系统加盟代理平台湖北网站关键词排名优化报价兰州新区网站优化推广seo网站优化平台高新开发区网站优化机构哪家好阳江企业网站关键词优化报价长宁哪里有做网站优化比较好肇庆网站优化首页从江网站seo优化价格优化网站seo公司香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

天下网标王 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化