文章

296

粉丝

0

获赞

0

访问

21.3k

头像
2022年(408)计算机学科专业基础综合试题 - 第46题回答
操作系统
发布于2025年11月23日 18:33
阅读数 16


评分及理由

(1)信号量定义部分(满分2分)

学生第一次识别结果定义了2个信号量(finA、finC),第二次识别结果定义了3个信号量(finA、finB、finC)。但实际需要的同步关系是:C需要等待A和B完成,E需要等待C完成。学生定义的信号量中:

  • finA正确表示了A完成的信号
  • finC正确表示了C完成的信号
  • 但缺少对B完成信号的正确处理(第二次识别中定义了finB但未使用)
  • 缺少对C需要等待B完成的同步控制

扣1分,因为缺少对B操作完成的同步控制。

得分:1分

(2)线程T1实现部分(满分3分)

T1中:

  • A操作后V(finA)正确
  • E操作前P(finC)正确,确保E在C完成后执行
  • F操作直接执行,没有等待E完成,这是逻辑错误

扣1分,因为F应该在E完成后执行,但代码中缺少这个同步关系。

得分:2分

(3)线程T2实现部分(满分3分)

T2中:

  • B操作完成后没有信号量操作,无法通知C可以执行,这是逻辑错误
  • C操作前只等待finA,没有等待B完成,这是逻辑错误
  • C操作后V(finC)正确
  • D操作直接执行,没有等待C完成,这是逻辑错误

扣2分,因为存在多个逻辑错误:缺少B完成的信号通知、C没有正确等待B完成、D没有正确等待C完成。

得分:1分

题目总分:1+2+1=4分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发