文章

104

粉丝

0

获赞

0

访问

7.8k

头像
2024年计算机学科专业基础综合试题 - 第46题回答
操作系统
发布于2025年10月20日 19:59
阅读数 33


评分及理由

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

得分:2分

理由:学生正确指出实现C1的代码是临界区,并给出了正确理由——进程P1和P2不能同时执行C1。这与标准答案中关于临界区的定义和解释一致。

(2)得分及理由(满分3分)

得分:1分

理由:学生定义了两个信号量(mutex和empty),其中mutex初值正确,但empty初值应为1(表示缓冲区为空)而非0。代码中存在逻辑错误:

  • 第一次识别中出现了重复的P1()和P2()定义,且第一个P1()缺少同步操作
  • 第二次识别中第一个P1()和P2()的代码逻辑错误(P2执行C1而非C2)
  • 第二个P1()中signal(empty)和wait(mutex)的顺序错误,应该先wait(mutex)再执行C1,最后signal(empty)
  • 同步逻辑不完整,缺少表示缓冲区满的信号量

但学生正确理解了需要互斥信号量,并部分实现了同步逻辑,因此给予部分分数。

(3)得分及理由(满分3分)

得分:3分

理由:学生正确使用了互斥信号量mutex,初值设为1正确,P1和P2的代码逻辑正确——通过wait(mutex)和signal(mutex)实现了对C3操作的互斥访问,符合题目要求。

题目总分:2+1+3=6分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发