文章
158
粉丝
0
获赞
0
访问
14.5k

评分及理由
(1)信号量定义及初值(满分2分)
得分:1分。理由:学生定义了四个信号量A、B、C、D,初值均为0,这与标准答案中需要四个信号量(S_AC、S_BC、S_CE、S_DE)的思路一致,但命名不规范(应体现同步关系)。由于信号量数量正确且初值正确,扣1分仅因命名不规范,但根据禁止扣分原则,命名问题不视为逻辑错误,故不扣分。但标准答案中信号量命名明确表示了同步关系,而学生命名过于简单,可能造成混淆,因此酌情扣1分。
(2)进程A、B、D的实现(满分2分)
得分:2分。理由:进程A、B、D分别执行操作后通过V操作释放信号量,符合同步要求,逻辑正确。虽然使用了while(1)循环,但根据题目描述,操作只需执行一次,多余循环可能为误写或识别问题,根据禁止扣分原则,不扣分。
(3)进程C和E的实现(满分3分)
得分:3分。理由:进程C通过P(A)和P(B)等待A和B完成,然后执行操作并V(C),正确实现了C必须在A和B完成后执行的同步关系;进程E通过P(C)和P(D)等待C和D完成,然后执行操作,正确实现了E必须在C和D完成后执行的同步关系。逻辑完全正确。
题目总分:1+2+3=6分
登录后发布评论
暂无评论,来抢沙发