文章

65

粉丝

0

获赞

0

访问

1.6k

头像
2009年(408)计算机学科专业基础综合试题 - 第45题回答
操作系统
发布于2025年11月14日 16:28
阅读数 38


评分及理由

(1)信号量定义得分及理由(满分1分)

得分:1分

理由:学生定义了四个信号量Empty、odd、even、mutex,与标准答案含义一致,信号量初始值正确。

(2)P1进程实现得分及理由(满分2分)

得分:1分

理由:P1进程基本框架正确,有P(empty)和P(mutex)操作,V(mutex)位置正确,通过if判断使用V(odd)或V(even)通知消费者。但存在以下问题:
- 缺少put()操作将数据放入缓冲区
- 在第二次识别结果中,V(odd)/V(even)操作在V(mutex)之前,这是正确的,但第一次识别结果中这些操作在V(mutex)之后,存在逻辑错误
综合考虑两次识别结果,扣1分

(3)P2进程实现得分及理由(满分2分)

得分:2分

理由:P2进程逻辑正确,有P(odd)等待奇数信号,P(mutex)保护临界区,getodd()获取数据,countodd()统计,V(mutex)释放锁,V(empty)通知生产者。第一次识别中的"-getodd++"可能是识别错误,不影响核心逻辑。

(4)P3进程实现得分及理由(满分2分)

得分:2分

理由:P3进程逻辑正确,有P(even)等待偶数信号,P(mutex)保护临界区,geteven()获取数据,counteven()统计,V(mutex)释放锁,V(empty)通知生产者。

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

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发