文章

327

粉丝

40

获赞

2

访问

39.9k

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

(1) wait和signal都是原子性操作的指令,用于实现互斥访问临界区,如果多进程并发访问下没有对信号量实现互斥执行,同时读写可能会同时持有信号量的同一个值,先后进行修改覆盖读或者写的值,造成脏数据

(2)方法一中的关中断到开中断之间,其他进程无法修改S,导致while无法退出

方法二正确

(3)用户程序不能使用开/关中断实现临界区互斥,因为中断指令是特权指令,用户态下不可以用


评分及理由

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

学生回答正确,指出了信号量S是共享变量,多进程并发访问时可能造成数据不一致(如脏数据),这体现了互斥的必要性。答案与标准答案一致,但表述略有不同(标准答案强调“读、写操作”,学生提到“同时读写可能会同时持有信号量的同一个值”),核心逻辑正确。得2分。

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

学生正确指出方法1的错误原因(关中断后其他进程无法修改S,导致死循环),并正确判断方法2正确。但未详细说明方法2的正确性(如方法2在循环内临时开中断允许其他进程修改S,避免死循环),不过核心判断正确。扣0.5分(因未完整说明方法2的机制)。得2.5分(满分3分)。

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

学生回答正确,指出开/关中断是特权指令,用户程序不能使用。答案与标准答案一致。得2分。

题目总分:2+2.5+2=6.5分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发