• s5-1 CPU调度



    基本概念

    通过多道程序设计得到 CPU 的最高利用率

    (CPU-- I/O 脉冲周期 - - 进程的执行包括进程在 CPU 上执行和等待 I/O )
    进程的执行以 CPU 脉冲开始,其后跟着 I/O 脉冲.进程的执行就是在这两个状态之间进行转换.


    cpu和I/O burst的交替序列

    image

    cpu-burst

    CPU 脉冲的分布, 在系统中, 存在许多短 CPU 脉冲,只有少量的长 CPU 脉冲
    比如: I/O 型作业具有许多短 CPU 脉冲, 而 CPU 型作业则会有几个长 CPU 脉冲,这个分布规律对 CPU 调度算法的选择是非常重要的.

    image



    CPU Scheduler
    cpu调度

    当CPU空闲时,OS就选择内存中的某个就绪进程,并给其分配CPU


    cpu调度器

    image



    (CPU调度可能发生在以下情况下):
    1.Switches from running to waiting state(从运行转到等待).
    2.Switches from running to ready state(从运行转到就绪).
    3.Switches from waiting to ready(从等待转到就绪).

    4.Terminates(终止运行).
    Scheduling under 1 and 4 is nonpreemptive (发生在1、4两种情况下的调度称为非抢占式调度).
    All other scheduling is preemptive (其他情况下发生的调度称为抢占式调度).


    cpu调度方案
    非抢占方式(nonpreemptive)
    把处理机分配给某进程后,便让其一直执行,直到该进程完成或发生某事件而被阻塞时,才把处理机分配给其它进程,不允许其他进程抢占已经分配出去的处理机。
    优点:实现简单、系统开销小,适用于大多数批处理系统环境
    缺点:难以满足紧急任务的要求,不适用于实时、分时系统要求


    抢占方式(Preemptive mode)
    允许调度程序根据某个原则,去停止某个正在执行的进程,将处理机重新分配给另一个进程。


    抢占的原则

    时间片原则:各进程按时间片运行,当一个时间片用完后,便停止该进程的执行而重新进行调度。这个原则适用于分时系统。

    优先权原则:通常对一些重要的和紧急的进程赋予较高的优先权。当这种进程进入就绪队列时,如果其优先权比正在执行的进程优先权高,便停止正在执行的进程,将处理机分配给优先权高的进程,使之执行

    短作业优先原则:当新到达的作业比正在执行的作业明显短时,将暂停当前长作业的执行,将处理机分配给新到的短作业,使之执行。

  • 相关阅读:
    linux添加自定义命令
    linux 将自己的服务添加到系统service服务
    制作linux下的.run安装包
    Wowza 相关
    深入理解 Vue Computed 计算属性
    养狗相关知识整理
    柯基犬体重对照图
    window下tomcat的内存溢出问题
    postMan测试https接口
    beego获取用户请求参数的方法
  • 原文地址:https://www.cnblogs.com/fadewalk/p/10587508.html
Copyright © 2020-2023  润新知