文章
28
粉丝
0
获赞
0
访问
839

评分及理由
(1)信号量定义(满分2分)
得分:1分
理由:学生定义了mutex和empty信号量,功能正确。但full信号量应该分别用odd和even来区分奇偶数,这里使用单一的full信号量无法正确区分奇偶,会导致同步错误。扣除1分。
(2)P1进程实现(满分2分)
得分:1分
理由:P1进程基本结构正确,有生产数据和放入缓冲区的操作。但缺少对数据奇偶性的判断和相应的信号量释放(V(odd)或V(even))。扣除1分。
(3)P2进程实现(满分1.5分)
得分:0.5分
理由:P2进程有取奇数和统计的功能,但存在严重逻辑错误:在P(full)之前就P(mutex),可能导致死锁;使用全局变量n而不是从缓冲区获取数据;if语句缺少大括号。扣除1分。
(4)P3进程实现(满分1.5分)
得分:0.5分
理由:P3进程有取偶数和统计的功能,但存在与P2相同的逻辑错误:信号量获取顺序错误、使用全局变量n、if语句格式错误。扣除1分。
题目总分:1+1+0.5+0.5=3分
登录后发布评论
暂无评论,来抢沙发