文章
92
粉丝
68
获赞
0
访问
11.2k
(1) 题 45(a) 图中伪代码中 lock = TRUE存在错误,正确应该是 lock = FALSE;
(2) 不可以,因为swap指令属于原子操作,保证不被打断,执行完毕。保障资源可靠互斥。
评分及理由
(1)得分及理由(满分4分)
学生指出了退出区中“lock = TRUE;”的错误,并正确修改为“lock = FALSE;”,得2分。
但是,学生没有发现进入区中“if (key == TRUE) swap key, lock;”的错误。原代码使用if语句,在并发执行时无法保证互斥,必须使用while循环进行忙等待。学生遗漏了此关键错误,因此扣2分。
本小题得分为:2分。
(2)得分及理由(满分3分)
学生正确回答了“不可以”,并指出了核心原因:swap指令是原子操作,保证了操作的完整性和互斥性,得3分。
虽然学生的解释比标准答案简略,但核心观点正确,因此不扣分。
本小题得分为:3分。
题目总分:2+3=5分
登录后发布评论
暂无评论,来抢沙发