关于我们

质量为本、客户为根、勇于拼搏、务实创新

< 返回新闻公共列表

调度与死锁

发布时间:2023-06-26 14:00:32

调度与死锁

  • 调度类型与准则
    • 高级调度(作业调度):进程的创建一i退出
    • 中级调度(对换调度):挂起状态的切换
    • 低级调度:进程基本三状态
  • 进程调度方式:
    • 不可剥夺方式
      • 绝不允许其它进程抢占正在运行进程的处理机
      • 优点:实现简单,开销小
      • 缺点:难以满足紧急任务的进程调度
    • 可剥夺方式
      • 能够满足优先权选择
  • 进程调度的时机
    • 进程退出
    • 进程阻塞
    • 进程创建/进程阻塞/时钟中断
  • 进程的性能准则
    • 周转时间:服务时间+等待时间
    • 带权周转:周转时间/服务时间
  • 调度算法
特点FCFSSPNSRTHRRNRRPriorityMFQ
调度方式不可剥夺不可剥夺可剥夺均可可剥夺均可可剥夺
吞吐量不突出时间片短,则吞吐量低不强调可剥夺
响应时间有时可能高短进程响应时间比较高较高较高
系统开销最小较高较高较高较小较高较小
对进程影响对短进程不利对长进程不利对长进程不利较好平衡进程对I/O频繁的进程不利较好平衡进程可能对I/O频繁进程有利
饿死问题可能可能可能可能
  • 死锁的定义
    • 死锁可以定义为一组竞争系统资源或相互通信的进程互相的永久阻塞。若无外力作用,则这组进程永远不能继续执行。
  • 死锁产生的原因
    1. 资源不足
    2. 不合法的进程推进次序
  • 死锁产生的必要条件
    • 互斥条件
    • 请求和保持
    • 不可剥夺条件
    • 环路条件
  • 死锁的避免
    • 由于死锁的预防中,存在许多问题。而采用避免死锁
    • 避免死锁就是动态的决定是否允许进程当前的资源请求。避免死锁采用资源分配的动态拒绝策略
    • 什么时安全序列?
      • 至少存在一个安全序列,按照这个序列为进程分配所需要的资源。直到满足最大需求,使每个进程可以顺利完成。若系统不存在一个这样的序列,则系统处于不安全状态。
    • 避免死锁的实质就是如何使系统不进入不安全状态
  • 银行家算法
    • 由资源请求、安全检测两部分构成
    1. 首先检测本次请求资源是否满足系统资源总量
    2. 当前系统是否由足够资源来分配给本次请求
    3. 进行安全检测

/template/Home/leiyu/PC/Static