| process | allocation | need | avaiable |
| p0 | 0 0 3 2 | 0 0 1 2 | 1 6 2 2 |
| p1 | 1 0 0 0 | 1 7 5 0 | |
| p2 | 1 3 5 4 | 2 3 5 6 | |
| p3 | 0 3 3 2 | 0 6 5 2 | |
| p4 | 0 0 1 4 | 0 6 5 6 |
| 资源 进程 | work(可提供的) | need(需要的) | allocation(已分配的) |
work+allocation (提供的+已分配的) | finish(是否可用) |
| p0 | 1 6 2 2 | 0 0 1 2 | 0 0 3 2 | 1 6 5 4 | true |
| p3 | 1 6 5 4 | 0 6 5 2 | 0 3 3 2 | 1 9 8 6 | true |
| p1 | 1 9 8 6 | 1 7 5 0 | 1 0 0 0 | 2 9 8 6 | true |
| p2 | 2 9 8 6 | 2 3 5 6 | 1 3 5 4 | 3 12 13 10 | true |
| p4 | 3 12 13 10 | 0 6 5 6 | 0 0 1 4 | 3 12 14 14 | true |
所以安全序列应该为p0--p3--p1--p2--p4,当然了,不唯一,只要在选择进程时满足finish可用即可。
本文详细解析了一个关于资源分配和进程管理的安全序列算法案例。通过跟踪进程的need、allocation和available状态,确定了安全序列p0--p3--p1--p2--p4,确保系统在资源有限的情况下能够安全运行。
1758

被折叠的 条评论
为什么被折叠?



