文章

44

粉丝

0

获赞

0

访问

2.6k

头像
【2023年】408计算机统考真题模拟考试 - 第45题答案笔记
操作系统
发布于2024年10月9日 16:56
阅读数 52

(1)进入区:"if (key == TRUE) "存在错误,修改为"while (key == TRUE) ";

           退出区:"lock = TRUE;"存在错误,修改为“lock = FALSE;".

(2)Swap指令为原子操作。但用函数调用语句“newSwap(&key, &lock)”代替指令“swap key, lock”后,因为多个线程可以并发执行newSwap(),newSwap()执行时传递给形参b的是共享变量lock的地址,在newSwap()中对lock既有读操作又有写操作,并发执行时不能保证实现两个变量值的原子交换,从而会导致并发执行的线程同时进入临界区。

         

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发