文章

281

粉丝

40

获赞

2

访问

24.2k

头像
2023年计算机学科专业基础综合试题 - 第45题回答
操作系统
发布于2025年9月11日 20:18
阅读数 81

(1) 

有两个错误

第一个错误,if(key == true)这句话错了,需要判断的不是key,是lock

第二个错误是lock = true,退出区需要把lock 置为false,让其他进程可以进入

(2)

不可以,因为swap指令是原子指令,需要保证原子性,newswap不具备原子性

可能会违反忙则等待的条件


评分及理由

(1)得分及理由(满分4分)

学生指出两个错误:一是if条件判断错误(应判断lock而非key),二是退出区lock赋值错误(应为FALSE而非TRUE)。但学生未正确修改第一处错误:标准答案要求将if改为while循环以实现轮询,而学生仅指出判断对象错误(实际判断key是正确的,但条件应为TRUE时循环)。学生正确指出退出区应改为lock=FALSE(得2分)。第一处错误修改不完整(应改为while循环且条件为key==TRUE),扣2分。本小题得2分。

(2)得分及理由(满分3分)

学生正确回答“不可以”(得1分),并指出原因是swap是原子操作而newSwap不是(得1分),且提到可能违反“忙则等待”(即互斥条件,得1分)。理由完整,符合标准答案。本小题得3分。

题目总分:2+3=5分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发