美文网首页
CPU调度算法

CPU调度算法

作者: 元素周期表的十七君 | 来源:发表于2017-09-15 11:42 被阅读0次

    1 先到先服务调度

    FCFS(first-come,first-served)

    当一个进程进入到就需队列,其pcb就被链接到队列的尾部,当CPU空闲时,CPU被分配给位于队列头的进程。接着,该运行进程从队列中被删除。

    FCFS策略的平均等待时间相当长

    FCFS调度算法是非抢占式的。

    2 最短作业优先调度

    SJF(shortest-job-first)

    SJF算法的真正困难时如何知道下一个CPU请求的长度。SJF调度经常用于长期调度。

    3 优先权调度

    每个进程都有一个优先权与其关联,具有最高优先权的进程会被分配到CPU。具有相同优先权的进程按FCFS顺序调度。

    优先权可以通过内部或外部方式来定义。

    优先权调度可以使可抢占的或者非抢占的。

    优先权调度算法的一个主要问题是无穷阻塞。解决办法是老化,老化是一种技术,以逐渐增加在系统中等待很长时间的进程的优先权。

    4 轮转法调度

    轮转法(RR)调度算法是专门为分时系统设计的。定义一个小时间单元,称为时间量或时间片。时间片通常为10ms到100ms。就绪队列作为循环队列处理。CPU调度程序循环就需队列,为每个进程分配不超过一个时间片间隔的CPU。

    如果上下文切换时间约为时间片的10%,那么约10%的CPU时间会浪费在上下文切换上。

    5 多级队列调度

    (multilevel queue-scheduling algorithm)

    不同队列可用于前台和后台进程,前台队列可能使用RR算法调度,而后台队列可能使用FCFS算法调度。

    6 多级反馈队列调度

    对于多级队列调度算法,通常进程进入系统时,被永久地分配到一个队列,进程并不在队列之间移动。

    相关文章

      网友评论

          本文标题:CPU调度算法

          本文链接:https://www.haomeiwen.com/subject/dvsssxtx.html