当前位置:首页 > 操作系统(02326) > 正文内容

利用信号量实现进程的 ①________ ,应为临界区设置一个信号量 mutex。其初值为②________ ,表示该资源尚未使用,临界区应置于 ③ ______和 ④______ 原语之间。

高老师2年前 (2024-03-26)操作系统(02326)12

利用信号量实现进程的 ①________ ,应为临界区设置一个信号量 mutex。其初值为②________ ,表示该资源尚未使用,临界区应置于 ③ ______和 ④______ 原语之间。

①互斥,②1,③P(mutex),④V(mutex)
【解析】一次仅允许一个进程使用的资源称为临界资源,对临界资源实施操作的那段程序称为临界区。对于具有临界区问题的并发进程,它们之间必须互斥,以保证不同时进入临界区。利用信号量和 P-V 原语能方便地解决临界区问题。mutex 为互斥公用信号量,初值为 1, 临界区的代码被置于 P(mutex)、V(mutex)原语之间时,任何欲进入临界区的进程,必须在公用信号量 mutex 上执行 P 原语,在完成对临界资源的访问后再执行 V 原语。由于 mutex 初值为 1,当第一个进程执行 P 原语后减为 0,表示临界资源空闲,可分配给该进程使之进入临界区,在第一个进程没有退出临界区之前,若此时第二个进程想进入临界区,也应先执行 P 原语。而结果是 mutex 变为负值,就意味着临界资源已被占用,因此,第二个进程被阻塞。直到第一个进程执行 V 原语,释放该临界资源 mutex 到 0 后,方可唤醒第二个进程, 使之进入临界区,待它完成对临界资源的访问后,又执行 V 原语,使 mutex 恢复到初始值。

扫描二维码免费使用微信小程序搜题/刷题/查看解析。

版权声明:本文由翰林刷题小程序授权发布,如需转载请注明出处。

本文链接:https://doc.20230611.cn/post/434596.html

分享给朋友: