文章

63

粉丝

0

获赞

0

访问

3.1k

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

1.if(key==TRUE)改为while(key==TRUE);退出区中的lock=TRUE改为lock=false

2.不可以,因为swap指令是由硬件实现了互斥的,而函数调用语句可能会被多个进程同时调用,无法保证lock值在多个进程中相等,因此无法实现临界区的互斥功能

 


评分及理由

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

学生指出了两处错误:①将if(key==TRUE)改为while(key==TRUE);②将lock=TRUE改为lock=FALSE。这两处修改与标准答案完全一致,逻辑正确且完整。因此得4分。

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

学生回答“不可以”,并解释了原因:swap指令由硬件实现互斥,而函数调用可能被多个进程同时调用,无法保证lock值相等,因此无法实现临界区互斥。虽然表述上“lock值在多个进程中相等”不够精确(应为“无法保证原子性”),但核心观点正确,即函数调用无法保证原子交换,会导致互斥失败。因此扣1分,得2分。

题目总分:4+2=6分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发