文章
179
粉丝
0
获赞
0
访问
8.8k

评分及理由
(1)信号量定义及含义(满分4分)
得分:2分
理由:学生定义了互斥信号量 metux(应为 mutex,但根据误写不扣分原则,视为正确)并赋初值1,含义正确(用于出入口互斥),这部分可得2分。同时定义了整型变量 empty=500 和 full=0,但题目要求使用信号量进行同步,empty 和 full 应定义为信号量而非整型变量,且信号量 empty 的含义(控制博物馆容量)未明确说明,因此扣2分。
(2)对mutex的P、V操作(满分2分)
得分:2分
理由:在两次识别结果中,学生对 metux 的使用基本正确:进门和出门操作前后都正确地使用了 P(metux) 和 V(metux) 进行互斥保护,符合出入口一次仅允许一人通过的要求。因此得满分2分。
(3)对empty(容量控制)的P、V操作(满分1分)
得分:0分
理由:学生对容量控制的逻辑存在严重错误。在第一次识别结果中,使用了 if (full) 条件判断,这不是信号量的标准用法,且后续的 P(empty) 和 V(empty) 位置混乱(例如在参观后执行 V(empty),在出门后又执行 P(full))。在第二次识别结果中,顺序为 P(full) P(empty) P(metux),但 full 初值为0,导致 P(full) 会直接阻塞,逻辑错误。整体上,未能正确使用信号量 empty 来控制博物馆内人数(应在进门前 P(empty) 减少空位,出门后 V(empty) 增加空位),因此不得分。
题目总分:2+2+0=4分
登录后发布评论
暂无评论,来抢沙发