计算机操作系统算法题(最全).docxVIP

  • 28
  • 0
  • 约1.95万字
  • 约 33页
  • 2017-08-20 发布于安徽
  • 举报
 PAGE \* MERGEFORMAT 33 6. 算法题(共32个题目) 200348. 在信号量机制中,若P(S)操作是可中断的,则会有什么问题? 此题答案为:答: P(S)的操作如下: ?? Begin ??????? S.Value:= S.Value-1;???????? ① ??????? If S.Value0 Then??????????? ② ??????????? Begin ??????????? Insert(*,S.L); ??????????? Block(*)???????????????? ③ ??????????? End ?? End. 若P(S)可中断的,例如进程A在执行了语句①之后从CPU上退下了,假定此时S.Value=0;这时换另一进程B,B又将S.Value的值减1使之为-1,在执行语句③时,B被阻塞;然后又换回A执行,由于A的断点是语句①之后,当它执行语句②时,由于这时S.Value已经是-1,故进程继续执行而被阻塞。这就出现了错误:本来A操作P(S)操作后,S.Value=0,是不应该被阻塞的,现在却被阻塞了。 200350. 何谓临界区?下面给出的两个进程互斥的算法是安全的吗?为什么? ??? #define true; ??? # define false; ????? Int flag[2]; ????? flag

文档评论(0)

1亿VIP精品文档

相关文档