首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
假设有一个进程拥有两个线程(编号为0和1)需要去访问同一个共享资源,为了避免竞争状态的问题,必须实现一种互斥机制,使得在任何时候只能有一个线程在访问这个资源。假设有如下的一段代码: int flag[2]; /*flag数组,初始化为FALSE*/ En
假设有一个进程拥有两个线程(编号为0和1)需要去访问同一个共享资源,为了避免竞争状态的问题,必须实现一种互斥机制,使得在任何时候只能有一个线程在访问这个资源。假设有如下的一段代码: int flag[2]; /*flag数组,初始化为FALSE*/ En
admin
2017-11-20
36
问题
假设有一个进程拥有两个线程(编号为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);
……做其他的事情……
试问:
以上的这种机制能够实现资源互斥访问吗?为什么?
选项
答案
这种机制不能实现资源的互斥访问。 考虑如下的情形: 1)初始化的时候,flag数组的两个元素值均为FALSE。 2)线程0先执行,在执行while循环语句的时候,由于flag[1]=FALSE,所以顺利结束,不会被卡住。假设这个时候来了一个时钟中断,则打断它的运行。 3)线程1去执行,在执行while循环语句的时候,由于flag[0]=FALSE,所以顺利结束,不会被卡住,然后就进入了临界区。 4)后来当线程0再执行的时候,也进入了临界区,这样就同时有两个线程在临界区。 不能成功的根本原因是无法保证Enter_Critical_Section()函数执行的原子性,从上面的软件实现方法中可以看出,对于两个进程间的互斥,最主要的问题就是标志的检查和修改不能作为一个整体来执行,因此容易导致无法保证互斥访问。
解析
转载请注明原文地址:https://jikaoti.com/ti/rtfjFFFM
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
1934年9月苏联加入国联,对此说法错误的一项是()。
下列不属于战时共产主义政策内容的是()。
1979年11月,中共中央委托()主持起草《关于建国以来党的若干历史问题的决议》。
乾隆时期,明确规定了驻藏大臣的地位与达赖班禅同等,并实行“金瓶掣签”制度的文件是()。
1543年,发表了解剖学专著《人体结构》的是()。
1534年英国议会宣布英国教会断绝与罗马教廷一切关系的文件是()。
尚书一职,秦置于宫禁;西汉沿置,为皇帝收发文书,传达记录诏命章奏;东汉置尚书台,“出纳王命,赋政四海,权尊势重”,成为朝廷的政务中心。这一过程反映了()
阅读下面史料,回答问题:材料一各缔约国主力舰替换总吨位按照标准排水量计算不得超过如下:合众国525000吨;英帝国525000吨;法国175000吨;意大利175000吨;日本315000吨。
在4×100米接力赛中,4个运动员之间存在如下关系:运动员1跑到终点把接力棒交给运动员2;运动员2一开始处于等待状态,在接到运动员1传来的接力棒后才能往前跑,他跑完100米后交棒给运动员3;运动员3也只有接到运动员2传来的接力棒后才能往前跑,他跑完100米
随机试题
谢朓诗歌意象的特点是【】
A.二尖瓣狭窄B.主动脉瓣关闭不全C.主动脉窦瘤破裂D.动脉导管未闭E.主动脉瓣狭窄
动脉导管未闭有显著肺动脉高压时可出现
患者,男,24岁。近3年来反复餐后3~4小时上腹痛,持续至下次进餐后才缓解。应首先考虑的是
绘制双代号时标网络计划,首先应()。
受力合理,在建筑和桥梁中被广泛应用,适宜建造体育馆、展览馆等建筑的是()。
当单位利益与社会公共利益发生冲突时,会计人员应首先考虑单位利益,然后考虑社会公共利益。()
下列属于证券投资基金技术风险的有()。Ⅰ.经济因素和政治因素导致的市场价格变化Ⅱ.基金投资者大量赎回导致的风险Ⅲ.交易网络出现异常导致的风险Ⅳ.注册登记系统瘫痪导致的风险
Mozartbegantostudymusic______Whichofthefollowingistrue?
A、Aninformationcardofarestaurant.B、Hisownbusinesscard.C、Mr.Cooper’sbusinesscard.D、Anoteofwhattodo.A男士说,他还给了女
最新回复
(
0
)