文章

166

粉丝

0

获赞

0

访问

10.1k

头像
2020年计算机学科专业基础综合试题 - 第45题回答
操作系统
发布于2025年7月8日 18:20
阅读数 30

semaphore ac = 0;//ac执行同步
semaphore bc = 0;//bc同步
semaphore ce = 0;//ce同步
semaphore de = 0;//de同步
cobegin a{
  完成a;
  v(ac);
}
cobegin b{
  完成b;
  v(bc);
}
cobegin c{
  //c在a、b都完成后才能执行
  p(ac);
  p(bc);
  完成c;
  v(ce);//ce同步
}
cobegin d{
  完成d;
  v(de);
}
cobegin e{
  //e在c、d都完成后执行
  p(ce);
  p(de);
  完成e;
}

 


评分及理由

(1)得分及理由(满分7分)

得分:6分

理由:

  • 学生正确使用了信号量机制(ac、bc、ce、de)来表示同步关系,信号量初值设置正确(0分)。
  • 在操作A、B、D中正确使用了signal操作(V操作),符合同步要求(1分)。
  • 在操作C中正确使用了wait操作(P操作)来等待A和B完成,并随后执行signal操作(V操作)通知E(2分)。
  • 在操作E中正确使用了wait操作(P操作)来等待C和D完成(1分)。
  • 扣分点:代码格式不规范(如分号为中文分号“;”),且cobegin的语法使用错误(应为cobegin...coend包裹所有进程,而非每个进程单独使用cobegin)。扣1分。

题目总分:6分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发