软考-软件设计师:进程管理-进程资源图 作者:马育民 • 2025-04-04 08:57 • 阅读:10008 # 进程资源图 [](https://www.malaoshi.top/upload/0/0/1GWsl3KECzN.png) ### 技巧 `R -> P`,表示 **资源分配给进程**,这是 **确定的** `R <- P`,表示 **进程申请资源**,但系统 **不一定有资源** 分配给该进程,所以是 **不确定的** # 重要概念 ### 非阻塞节点 和 阻塞节点 节点:即进程 系统资源数量,**满足进程的需要**,该进程为 **非阻塞节点** 系统资源数量,**不满足进程的需要**,该进程为 **阻塞节点** ### 可化简 和 非死锁 当部分 **非阻塞节点**,执行 并 **释放资源** 后,能使得 **所有节点** 都能 **执行**,就说该图是 **可化简**、**非死锁**;反之,为不可化简的、死锁的 # 题 在如下所示的进程资源图中,哪个说法正确() [](https://www.malaoshi.top/upload/0/0/1GWslI2UHbo.png) A、P1、P2、P3都是非阻塞节点,该图可以化简,所以是非死锁的 B、P1、P2、P3都是阻塞节点,该图不可以化简,所以是死锁的 C、P1、P2是非阻塞节点,P3是阻塞节点,该图不可以化简,所以是死锁的 D、P2是阻塞节点,P1、P3是非阻塞节点,该图可以化简,所以是非死锁的 ### 分析 先执行 **确定的**,即:`R -> P` 资源分配给进程 将分配的资源划掉,如下图: [](https://www.malaoshi.top/upload/0/0/1GWslKy90Bv.png) 从上图可知:`R1` 资源已经分配完了,无法分配给 `P2` **结论:**`P2` 是 **阻塞节点** ### 分析第二步 执行 **不确定的**,即:`R <- P`,**进程申请资源**,但系统 **不一定有资源** [](https://www.malaoshi.top/upload/0/0/1GWslePAIhV.png) 从上图可知:资源 `R2` 还剩1个,`P1` 和 `P3` 都申请 `R2`,看上去资源不够分配 其实,`P1` 和 `P3` 无论哪个进程申请到资源,执行并释放资源后,都满足另一个进程执行 **结论:**`P1` 和 `P3` 是 **非阻塞节点** ### 分析第三步 `P1` 和 `P3` 是 执行并 **释放资源** 后,能够满足 `P2` 执行 **结论:** 所有节点都可执行,所以该图是 **可化简**、**非死锁** 参考: https://blog.csdn.net/qq_71654538/article/details/132819749 原文出处:http://malaoshi.top/show_1GWsliM9coe.html