文章
119
粉丝
0
获赞
3
访问
6.4k

评分及理由
(1)信号量定义得分及理由(满分2分)
得分:1分
理由:学生定义了empty=1000(空位数)和mutex=1(互斥信号量),这两个信号量的含义和初值正确。但缺少full信号量(产品数),且题目要求一个消费者连续取10件产品后其他消费者才能取,这需要额外的互斥信号量来控制,学生没有定义。因此扣1分。
(2)生产者进程实现得分及理由(满分2分)
得分:1分
理由:生产者使用了P(empty)和P(mutex)来获取空位和互斥访问,思路正确。但生产者的V操作有误:应该V(full)表示增加产品,而不是V(empty)。此外,生产者一次放入10个产品的循环逻辑错误,不符合题目要求(应一次放一个)。因此扣1分。
(3)消费者进程实现得分及理由(满分4分)
得分:1分
理由:消费者使用了mutex实现互斥,且通过循环连续取10件产品,符合题目部分要求。但缺少对缓冲区产品数的同步操作(没有P(full)),且V(empty)的位置和次数错误(应在每次取产品后V(empty))。此外,没有实现"一个消费者连续取10件后其他消费者才能取"的完整控制(缺少专门信号量)。因此扣3分。
题目总分:1+1+1=3分
登录后发布评论
暂无评论,来抢沙发