首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
假设有一个进程拥有两个线程(编号为0和1)需要去访问同一个共享资源,为了避免竞争状态的问题,必须实现一种互斥机制,使得在任何时候只能有一个线程在访问这个资源。假设有如下的一段代码: int flag[2];/*flag数组,初始化为FALSE*/
假设有一个进程拥有两个线程(编号为0和1)需要去访问同一个共享资源,为了避免竞争状态的问题,必须实现一种互斥机制,使得在任何时候只能有一个线程在访问这个资源。假设有如下的一段代码: int flag[2];/*flag数组,初始化为FALSE*/
admin
2014-04-17
135
问题
假设有一个进程拥有两个线程(编号为0和1)需要去访问同一个共享资源,为了避免竞争状态的问题,必须实现一种互斥机制,使得在任何时候只能有一个线程在访问这个资源。假设有如下的一段代码:
int flag[2];/*flag数组,初始化为FALSE*/
Enter_critical_section(int my_thread_id),int other_thread_id)
while (flag[other_thread-id]=TRuE); /*空循环语句*/
flag[my_thread_id]=TRUE;
}
Exit_Critical_Seetion(int my_thread_id),int other_thread_id)
{
flag[my_thread_id]=FALSE;
}
当一个线程想要访问临界资源时,就调用上述的这两个函数。例如,线程0的代码可能是这样的:
Enter_Critical_Section(0,1);
……使用这个资源……
Exit_Critical_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 Criticall Section()函数,并立即对flag[]进行修改,使flag[0]和flag[1]的值都为TRUE;又因为无法保证Enter CriticaL Section()函数执行的原子性,导致了两个进程在停止while()语句的条件判断上发生死锁。
解析
转载请注明原文地址:https://kaotiyun.com/show/fixi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
1998年,中共中央决定在县级以上党政领导班子、领导干部中深入开展()。
1971年9月美苏英法四国签署(),肯定了西柏林的占领制度,柏林问题得以解决。
关于荷马时代的叙述,不正确的是()。
20世纪初出现的法西斯主义实质上也是一种恐怖主义。它与传统的资本主义政治制度的不同主要体现在()。①实行一党专政②抛弃了议会民主制③对外争夺殖民地④强化思想文化的控制
美洲是一块古老的大陆,长期以来与世隔绝。把它与世界开始联系起来的重大转折时刻是()
建立中国道教史上第一个成熟的神仙系统的是()。
简析义和团的“扶清灭洋”口号。
最早把印度绘在大西洋对岸的地理学家是()。
在阿拉伯()统治时期,阿拉伯军队曾与当时中国的唐朝军队发生冲突。
某一个计算机系统采用虚拟页式存储管理方式,当前在处理机上执行的某一个进程的页表如下所示,所有的数字均为十进制,每一项的起始编号是0,并且所有的地址均按字节计址,每页的大小为1024字节。(1)计算下列逻辑地址转换为物理地址,并说明为什么
随机试题
双胍类降糖药的作用机制是非磺尿类降糖药的作用机制是
A.二尖瓣脱垂综合征B.三尖瓣关闭不全C.左心室功能衰竭D.肺动脉高压E.三尖瓣狭窄心尖部收缩期喀喇音见于
一般情况下X线片上不显示,在病理状态下才能见到的影像是
(2009年)七段显示器的各段符号如图8-49所示,那么,字母“E”的共阴极七段显示器的显示码abcdefg詹应该是()。
根据《水利工程设计概(估)算编制规定》,直接工程费由()组成。
(2009年考试真题)A公司为2004年在上海交易所上市的上市公司,其公司章程中明确规定:公司可对外提供担保,金额在100万元以上1000万元以下的担保,应当经公司董事会决议批准,甲为A公司的董事长,未持有A公司股票。2006年12月,A公司的股价跌人低谷
第一次来华的英国人杰克,在中国境内无住所,2019年度在中国居住的时间为1月1日~6月30日,该年度杰克应计征个人所得税的项目包括()。
发行人申请公开发行股票、可转换为股票的公司债券,依法采取承销方式的,或者公开发行法律、行政法规规定实行保荐制度的其他证券的,应当聘请具有保荐资格的机构担任保荐人。()
Wewere________bythenewsofhissuccess.
StringBuffer类提供【】字符串对象的表示。
最新回复
(
0
)