原因:

    1. 竞争资源
    2. 程序推进顺序不当

    必要条件:

    1. 互斥条件
    2. 请求和保持条件
    3. 不剥夺条件
    4. 环路等待条件

    处理死锁基本方法:

    1. 预防死锁(摒弃除1以外的条件)
    2. 避免死锁(银行家算法)
    3. 检测死锁(资源分配图)
    4. 解除死锁
      1. 剥夺资源
      2. 撤销进程

    死锁概念处理策略详细介绍:https://wizardforcel.gitbooks.io/wangdaokaoyan-os/content/10.html