进程互斥的要求与实现方法

匿名 (未验证) 提交于 2019-12-02 23:49:02

临界资源:进程独占型的硬件和共享的数据结构和文件。临界区:使用临界资源的程序段。

要求:

实现方法:

  1. 软件 :通过全局变量来控制程序执行,但是程序在检测标志变量后,修改标志变量前发生中断,然会有多个进程进入临界区。
  2. 硬件:
    • 关闭总中断
    • 将软件的方法使用机器指令封装好,然后再调用,解决了因中断导致的错误。但是会有忙等现象。
    • 机器指令包括:test&set 以及exchange
  3. 信号量
    • 信号量是一个信号灯一样的结构体变量,其成员包括:一个整型变量和一个队列。
    • 使用wait和signal指令,wait指令申请资源,signal指令释放资源。
    • 将暂时不能执行的程序放入阻塞队列。(这样解决了忙等问题)
  4. 管程
  5. 消息传递

文章来源: https://blog.csdn.net/li15528180102/article/details/96475871
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!