文章

133

粉丝

0

获赞

0

访问

13.4k

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


评分及理由

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

学生答案中指出了三个修改点:

  • ① 将 bool lock = FALSE 改为 bool lock = TRUE — 这是错误的修改。标准答案中 lock 初始值应为 FALSE,表示初始时没有线程在临界区。学生此处修改错误,扣1分。
  • ② 将 bool key = TRUE 改为 bool key = FALSE — 这是错误的修改。标准答案中 key 初始值应为 TRUE,用于在循环中测试。学生此处修改错误,扣1分。
  • ③ 将 if (key == TRUE) 改为 while (key == TRUE) — 这是正确的修改,符合标准答案,得1分。

此外,学生没有指出退出区中 lock = TRUE 应改为 lock = FALSE 的错误,这是标准答案中的第二个关键修改点,扣1分。

本小题得分:1分(正确修改while得1分,其他错误和遗漏扣3分)

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

学生回答"不可以",与标准答案一致,得1分。

理由部分:学生指出"swap指令是原子操作",这是正确的,得1分;但学生说"保证共享变量lock能正确的被修改为TRUE"表述不准确,标准答案强调的是原子交换操作不被中断,而不是修改为TRUE这个具体值。学生没有详细说明函数调用可能导致的并发问题,理由阐述不够完整,扣0.5分。

本小题得分:2.5分

题目总分:1+2.5=3.5分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发