文章
36
粉丝
0
获赞
0
访问
2.2k
评分及理由
(1)信号量定义(满分2分)
得分:2分
理由:学生定义了四个信号量,与标准答案一致。mutex用于缓冲区互斥,empty用于空缓冲区计数,numOdd和numEven分别对应奇数和偶数的同步信号量(相当于标准答案中的odd和even)。信号量含义清晰正确。
(2)P1进程实现(满分2分)
得分:1分
理由:P1进程基本逻辑正确,有P(empty)和P(mutex)保护,V(mutex)释放,并根据奇偶性V相应的信号量。但缺少关键的put()操作将数据放入缓冲区,这是一个严重的逻辑错误,扣1分。
(3)P2进程实现(满分1.5分)
得分:1.5分
理由:P2进程实现完全正确,有P(numOdd)等待奇数信号,P(mutex)保护缓冲区,getodd()取出奇数,countodd()统计,V(mutex)释放,V(empty)增加空位。
(4)P3进程实现(满分1.5分)
得分:1.5分
理由:P3进程实现完全正确,有P(numEven)等待偶数信号,P(mutex)保护缓冲区,geteven()取出偶数,counteven()统计,V(mutex)释放,V(empty)增加空位。
题目总分:2+1+1.5+1.5=6分
登录后发布评论
暂无评论,来抢沙发