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

评分及理由
(1)信号量设置及初值(满分2分)
得分:0分
理由:学生设置了metux、a、b、c四个信号量,但理解完全错误。metux被误用作互斥信号量,而实际上这里需要的是同步信号量来控制操作间的执行顺序。信号量a、b、c的用途和初值设置都不符合题目要求的同步关系。标准答案需要的是控制A→C、B→C、C→E等同步关系的信号量。
(2)线程T1的同步实现(满分3分)
得分:0分
理由:T1中的代码逻辑混乱,使用了while循环和if条件判断来模拟同步,这不是正确的信号量用法。wait(a)和signal(c)的位置和逻辑都不正确,无法正确实现A→C→E→F的执行顺序。特别是使用a&&b这样的条件判断不符合信号量的同步机制。
(3)线程T2的同步实现(满分3分)
得分:0分
理由:T2中的同步实现同样错误。signal(b)后立即signal(metux),然后使用if(a&&b)条件判断,这种逻辑无法保证C在A和B都完成后执行。D操作的执行位置和同步关系也不正确,没有体现C→D的约束。
题目总分:0+0+0=0分
登录后发布评论
暂无评论,来抢沙发