文章

101

粉丝

0

获赞

2

访问

11.8k

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


评分及理由

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

得分:1分

理由:学生定义了正确的信号量,包括empty、full、mutex、odd和even,含义清晰,与标准答案一致(标准答案使用empty、odd、even、mutex,但full信号量的功能可以通过odd和even实现,学生的定义也是合理的)。

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

得分:1分

理由:P1进程基本正确,但在生成数据并放入缓冲区后多了一个V(full)操作。根据题目要求,P2和P3分别消费奇数和偶数,应该通过odd和even信号量来同步,不需要额外的full信号量。这个多余的V(full)会导致逻辑错误,扣1分。

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

得分:1分

理由:P2进程有两个问题:一是多了一个P(full)操作,这会导致与P1的V(full)不匹配,可能造成死锁或逻辑错误;二是countodd()应该在释放互斥锁之后执行,但这不是严重错误。由于多了一个P(full),扣1分。

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

得分:1分

理由:P3进程同样多了一个P(full)操作,与P2相同的问题。counteven()的位置也不是最优,但主要问题是多余的P(full),扣1分。

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

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发