文章

179

粉丝

0

获赞

0

访问

7.9k

头像
2009年计算机学科专业基础综合试题 - 第45题回答
操作系统
发布于2025年9月23日 21:46
阅读数 57


评分及理由

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

得分:1分

理由:学生定义了mutex、odd、even、empty四个必要的信号量,含义正确。虽然额外定义了full信号量(标准答案未使用),但根据题目要求"多余的信息错误不扣分",且full信号量的使用在逻辑上是合理的,因此不扣分。

(2)P1进程实现(满分2分)

得分:1分

理由:存在严重逻辑错误。学生将V(odd)和V(even)操作放在了P(empty)和P(mutex)之前,这意味着在数据还未放入缓冲区时就通知消费者,可能导致消费者在数据未就绪时尝试访问。正确的顺序应该是先生产数据,再通知消费者。扣1分。

(3)P2进程实现(满分2分)

得分:1分

理由:存在两处错误:1)使用了P(full)但未在P1中对应使用V(full)的正确顺序;2)countodd()应该在getodd()之后,但学生代码中缺少getodd()操作,直接进行计数。扣1分。

(4)P3进程实现(满分2分)

得分:1分

理由:存在与P2相同的错误:1)同步信号量使用顺序问题;2)缺少geteven()操作,直接进行counteven()。扣1分。

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

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发