导航
您当前的位置:首页 > 学历类 > 研究生考试
问题:

答案窝,daanwo.com
[应用题] 45.(7分)下表给出了整型信号量S的 wait()和 signal()操作的功能描述,以及采用开/关中断指令实现信号量操作互斥的两种方法。
功能描述
Semaphore S;
wait(S){
while(S<= 0);
S = S-1;
}
方法1
Semaphore S;
wait(S){
关中断;
while(S<= 0);
S = S-1;
开中断;
}
signal(S){
关中断;
S=S+l;
开中断;
}
方法2
Semaphore S;
wait(S){
关中断;
while(S<= 0)}
开中断;
关中断;
{
S=S-1;
开中断;
}
signal(S){
关中断;
S=S+1;
开中断;
}
请回答下列问题。
(1)为什么在 wait()和 signal()操作中对信号量S的访问必须互斥执行?
(2)分别说明方法 1 和方法 2是否正确。若不正确,请说明理由。
(3)用户程序能否使用开/关中断指令实现临界区互斥?为什么?
答案窝,daanwo.com
Tags:
答案解析:

相关问题
关于我们 | 用户指南 | 版权声明 | 给我留言 | 联系我们 | 积分商城 | 答案求助 | 网站地图
Copyright © 2024 www.daanwo.com All Rights Reserved