首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
假设有一个进程拥有两个线程(编号为0和1)需要去访问同一个共享资源,为了避免竞争状态的问题,必须实现一种互斥机制,使得在任何时候只能有一个线程在访问这个资源。假设有如下的一段代码: int flag[2]; /*flag数组,初始化为FALSE*/ En
假设有一个进程拥有两个线程(编号为0和1)需要去访问同一个共享资源,为了避免竞争状态的问题,必须实现一种互斥机制,使得在任何时候只能有一个线程在访问这个资源。假设有如下的一段代码: int flag[2]; /*flag数组,初始化为FALSE*/ En
admin
2017-11-20
40
问题
假设有一个进程拥有两个线程(编号为0和1)需要去访问同一个共享资源,为了避免竞争状态的问题,必须实现一种互斥机制,使得在任何时候只能有一个线程在访问这个资源。假设有如下的一段代码:
int flag[2]; /*flag数组,初始化为FALSE*/
Enter_Critica1_Section(int my_thread_id),int other_thread_id)
{
while (flag [other_thread_id]==TRUE);/*空循环语句*/
flag[my_thread_id]=TRUE;
}
Exit_Critica1_Section(int my_thread_id),int other_thread_id)
{
flag[my_thread_id]=FALSE;
}
当一个线程想要访问临界资源时,就调用上述的这两个函数。比如,线程0的代码可能是这样的:
Enter_Critica1_Section(0,1);
……使用这个资源……
Exit_Critica1_Section(0,1);
……做其他的事情……
试问:
如果把Enter Critical Section()函数中的两条语句互换一下位置,结果会如何?
选项
答案
可能会出现死锁。 考虑如下的情形: 1)初始化的时候,flag数组的两个元素值均为FALSE。 2)线程0先执行,flag[0]=TRUE,假设这个时候来了一个时钟中断,则打断它的运行。 3)线程1去执行,flag[1]=TRUE,在执行while循环语句的时候,由于flag[0]=TRUE,所以在这个地方被卡住了,直到时间片用完。 4)线程0再执行的时候,由于flag[1]=TRUE,它也在while循环语句的地方被卡住了,这样,这两个线程都无法执行下去,从而死锁。 本题出现死锁的原因是两个线程都可以直接进入Enter Critical Section()函数,并立即对flag[]进行修改,使flag[0]和flag[1]的值都为TRUE;又因为无法保讦Enter_Critica1_Section()函数执行的原子性,导致了两个进程在停止while()语句的条件判断上,发生死锁。
解析
转载请注明原文地址:https://jikaoti.com/ti/vtfjFFFM
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
最早测量子午线的长度,并主持修订了当时最先进历法《大衍历》的是僧人()。
近代中国第一个系统介绍西方思想与文化名著的翻译家和启蒙思想家是()。
与前两次工业革命相比,第三次科技革命在能源结构上的主要变化是()
改革开放以来,乡镇企业的异军突起,其重要意义包括()①改变了公有制经济的主体地位②推动了农村产业结构的现代化进程③加快了农村的现代化进程④开辟了农民致富的新途径
近代思想家如何传播西方思想革新中国政治的?
1945年,联合国成立之时,创始会员国共有()个国家。
北宋在统一南方割据势力的过程中特设(),把征南所得的财富统一存放,以作日后恢复幽燕之费。
三个进程P1、P2、P3互斥使用一个包含N(N>O)个单元的缓冲区。P1每次用produce()生成一个正整数并用put()送入缓冲区某一空单元中;P2每次用getodd()从该缓冲区中取出一个奇数并用countodd()统计奇数个数;P3每次用getev
给定单链表的结点结构typedefstructnode*link;structnode{intitem,linknext;);将两个升序单链表归并为一个升序单链表。
一台主机申请了一个到www.ab@C@edu.cn的连接,为了获取服务器的IP地址,首先要进行DNS查询,下图为本次查询的过程,请回答如下问题:(1)由个人主机发送给本地DNS服务器的数据是采用什么传输层协议发送的?利用了哪个端口?(2
随机试题
女,55岁。掌指关节和腕关节反复肿痛5年。近2周病情加重,晨起出现关节僵硬,活动后可缓解。该患者应首先考虑的诊断是
服务项目招标采购的流程中,关于接收建议书的表述,不正确的是()。
某电建公司承担某发电厂安装工程。主要工作包括:锅炉、汽机、发电机、变压器、开关设备、架空线、控制设备等的安装。其中架空线由电建公司按设计要求组织采购。在施工过程中油浸变压器突然出现火苗,现场施工人员即时采取了有效措施,避免了事故发生。考虑发电企业技术密集性
甲向乙借款5万元,并以一辆汽车作抵押,办理了抵押登记。随后,甲又将该汽车质押给丙。丙在占有该汽车期间,将其交给丁修理,因拖欠修理费而被丁留置。下列说法正确的有()。
求助者一般资料:男性,33岁,大学毕业,国家公务员。求助者主诉:婚姻不美满,妻子有外遇,自己想与妻子离婚但又怕给孩子造成负面的影响,对妻子既不满又怨恨,情绪低落一个半月。心理咨询师在充分了解求助者的基本生活情况后,决定对他进行合理情绪疗法。
甲公司欠银行贷款500万,后该公司将其部分资产分离出去,另成立乙公司。对于公司分立后这笔债务的清偿责任,存在以下几种意见,其中哪个是正确的?()
我们通常说的晕车和晕船,是因为体内平衡感受器受到了刺激,使人感到眩晕和不适,这个平衡感受器位于()。
公安机关的专政职能与民主职能是相互重叠的关系。()
A、 B、 C、 D、 D每个图形中圆的位置关系都有相交、相离、相切三种。选项中只有D同时具备这三种位置关系。
下面三个题基于学生一课程数据库中的3个基本表:学生信息表:s(sno,sname,sex,age,dept)主码为sno课程信息表:c(cno,cname,teacher)主码为cno学生选课信息表:sc(sno,cno,grade
最新回复
(
0
)