操作系统:进程与线程(三)死锁

一战成硕

    • [2.4 死锁](#2.4 死锁)
      • [2.4.1 死锁的概念](#2.4.1 死锁的概念)
      • [2.4.2 死锁的预防](#2.4.2 死锁的预防)
      • [2.4.3 死锁避免](#2.4.3 死锁避免)
      • [2.4.4 死锁的检测和接触](#2.4.4 死锁的检测和接触)

2.4 死锁

2.4.1 死锁的概念

  1. 死锁的定义

    多个进程因竞争资源而造成的一种僵局(互相等待)

    死锁发生条件:互斥、不可剥夺、请求和保持、循环等待

  2. 死锁产生的原因

    (1)系统资源的竞争

    (2)进程推进顺序非法

    (3)死锁产生的必要条件

  3. 死锁的处理策略

    1)预防死锁

    2)避免死锁

    3)死锁的检测及解除

2.4.2 死锁的预防

防止死锁发生只需破坏四个必要条件之一

  1. 破坏互斥条件
  2. 破坏不剥夺条件
  3. 破坏请求并保持条件
  4. 破坏循环等待条件

2.4.3 死锁避免

  1. 系统安全状态
  2. 银行家算法


2.4.4 死锁的检测和接触

  1. 资源分配图
  2. 死锁定理

  3. 死锁解除

相关推荐
花嫁代二娃11 小时前
Linux:计算机的层状结构
linux·操作系统
追赶sun1 天前
Ubuntu 添加系统调用
linux·ubuntu·操作系统·系统调用
喝醉的小喵2 天前
【mysql】并发 Insert 的死锁问题 第二弹
数据库·后端·mysql·死锁
linhhanpy2 天前
自制操作系统(二、输入输出和shell的简易实现)
汇编·操作系统·自制操作系统
LUCIAZZZ4 天前
JVM之虚拟机运行
java·jvm·spring·操作系统·springboot
迷茫不知归路5 天前
操作系统实验习题解析 上篇
c++·算法·操作系统·实验课设
LUCIAZZZ6 天前
JVM之内存管理(一)
java·jvm·spring·操作系统·springboot
ssslar6 天前
MIT XV6 - 1.6 Lab: Xv6 and Unix utilities -uptime
操作系统·risc-v·xv6
LUCIAZZZ7 天前
JVM之内存管理(二)
java·jvm·后端·spring·操作系统·springboot
尸僵打怪兽7 天前
软考错题集
java·python·计算机网络·操作系统·c·软考·计算机组成原理