文章
52
粉丝
0
获赞
0
访问
4.4k
评分及理由
(1)信号量定义得分及理由(满分2分)
得分:1分
理由:学生定义了三个信号量:full(初值0,含义正确)、empty(初值1000,含义正确)、mutex(初值1,含义正确)。这三个信号量是经典生产者-消费者问题的标准设置,但题目要求"一个消费者进程从缓冲区连续取出10件产品后,其他消费者进程才可以取产品",这需要额外的互斥机制来保证。学生缺少控制消费者连续取产品的信号量(如标准答案中的mutex1),因此扣1分。
(2)生产者进程实现得分及理由(满分1分)
得分:1分
理由:生产者进程的实现完全正确。先P(empty)检查缓冲区空间,再P(mutex)互斥访问缓冲区,放入产品后V(mutex)释放互斥锁,最后V(full)增加产品计数。逻辑与标准答案一致。
(3)生产者与消费者同步操作得分及理由(满分2分)
得分:2分
理由:生产者使用P(empty)/V(full),消费者使用P(full)/V(empty),同步逻辑正确,实现了缓冲区空满状态的正确管理。
(4)消费者进程实现得分及理由(满分3分)
得分:0分
理由:消费者进程存在严重逻辑错误:
题目总分:1+1+2+0=4分
登录后发布评论
暂无评论,来抢沙发