死锁部分的题目

  1. 死锁的四个必要条件中无法破坏的是互斥使用资源
    0CBkjg.png
  2. 引入多道程序技术的前提条件之一是系统具有中断功能
  3. 资源分配图中无法判断是否处于死锁状态:
    • 出现了环路(只满足了循环等待这一必要条件,不是充分条件)
    • 每个进程结点至少有一条请求边(资源数未知因此不可以判断是否为死锁状态)
  4. 接上,可以用于判断是否处于死锁状态
    • 没有环路(破坏了必要条件因此可以知道是非死锁的)
    • 每种资源只有一个,且出现环路(充要条件可知为死锁)
  5. 关于定量判断是否发生死锁的题
    1. 不会发生死锁的最少资源数
    2. 不会发生死锁的最大进程数
    3. 公式:资源m个,n个进程,每个最大需求k,m≥n(k-1)+1时不会死锁
    4. 解法都是先给到每个进程比最大请求量少一个的资源数,如果是求最少资源,则是刚刚分配的加上1(3个进程,每个都要四个资源,分成3,3,3,然后再来一个给谁都能安全),如果是求进程数,则看能分成几块(比如11个资源,X个进程,每个最多3个,则分成2,2,2,2,2,余一个,给谁都能安全)
  6. 限制用户申请资源的顺序的只有死锁预防,死锁避免和死锁检测与解除都不会限制
  7. 死锁检测和解除时,系统为进程分配资源时不会采取任何措施来限制
  8. 关于三种策略对进程并发性的影响:并发性由大到小::无策略>死锁检测与解除>死锁避免>死锁预防,是与对分配干预的程度相一致的