• 进程调度


    概念:在合适的时候以一定策略选择一个就绪进程运行

    原则:

      1.响应速度尽可能快

      2,进程处理时间尽可能短

      3,系统吞吐量尽可能大

      4.资源利用率尽可能高

      5.对所有进程要公平

      6.避免饥饿

      7.避免死锁

      //以上原则之间存在矛盾

    进程调度目标:

      1.周转时间/平均周转周期:

        周转时间:进程提交给计算机到最后完成所花费的时间:

        t = tc-ts  //意义说明进程在系统中停留时间的长短

        平均周转时间:

        t = (t1+t2+t3+....tn)/n   

        意义:平均周转时间越短,意味着这些进程在系统内停留的时间越短,因此系统吞吐量就越大,资源利用率也就越高,

      2.带权周转时间/平均带权周转时间:

         

    典型调度算法:

      1.先来先到服务:

        算法:按照作业进入系统的时间先来后到挑选作业,先进入系统的作业优先被运行

        特点:1.容易实现但是效率不高

           2.只考虑作业的等候时间,而没考虑运行时间的长短。因此一个晚来但是作业短的作业可能需要等待很长时间才能运行,不利于短作业。

      2.短作业优先调度算法:

        算法:参考运行时间,选取运行时间最短的作业投入运行。

        特点:易于实现,效率不高

           忽视了作业等待时间,容易出现资源饥饿现象。

      3.响应比高者优先调度算法:

        响应比定义:

          作业的相应时间和与运行时间的比值。

        响应比 = 响应时间/运行时间

            = (等待时间+运行时间)/运行时间

            = 1 + 等待时间/.运行时间

        算法:计算每个作业的响应比,选择响应比最高的作业优先投入运行

        如果作业等待时间相同,则运行时间短的先,

        如果运行时间相同,等待时间长的先

        如果运行世界长的可以随着等待时间增加而增加

      4.优先数调度算法

        算法: 

          根据进程优先数,把CPU分配给最高的进程

          进程优先数 = 静态优先数 + 动态优先数

        静态优先数:

          进程创建时确定,在整个进程运行期间不再改变

        动态优先数:

          动态优先数在进程运行期间可以改变

        静态优先数的确定:

          基于进程所需的资源多少

          基于进程运行时间的长短

          基于进程的类型(IO/CPU,前台/后台,核心/用户)

        动态优先数:

          当使用CPU超过一定时长时

          在进行I/O操作后

          当进程等待超过一定时长时

      5.循环轮转调度算法(Round-Robin)

        概念:把所有就绪进程按先进先出的原则排成队列。新来进程加到队列末尾。进程以时间片q为单位轮流使用CPU,刚刚运行一个时间片的进程排到队列末尾,等待下一轮运行。

        优点:

          公平性:每个就绪进程都有平等机会获得CPU

          交互性:每个进程等待(N-1)*q的时间就可以重新获得CPU

        时间片q的大小:

          q太大:交互性差

              甚至于退化成FCFS调度算法

          q太小:进程切换频繁,系统开销增加。

        改进:

          时间片的大小可变。

          组织多个就绪队列,

      6.可变时间片轮转调度法

      7.多重时间片循环调度法

  • 相关阅读:
    web前端学习(四)JavaScript学习笔记部分(8)-- JavaScript瀑布流
    localStorage对象简单应用
    html文档加载顺序简单理解
    回调函数理解(转载)
    web前端学习(四)JavaScript学习笔记部分(8)-- JavaScript 浏览器对象
    web前端学习(四)JavaScript学习笔记部分(7)-- JavaScript DOM对象控制HTML元素详解
    JS random函数深入理解(转载)
    web前端学习(四)JavaScript学习笔记部分(6)-- js内置对象
    下雪了-js下雪效果
    LESS笔记
  • 原文地址:https://www.cnblogs.com/beautiful7/p/12708976.html
Copyright © 2020-2023  润新知