进程的调度算法/CPU调度方式

进程的调度算法有哪些?

  • 先来先服务调度算法: 按照请求的顺序进行调度。有利于长作业,但不利于短作业,因为可能出现短作业一直等待前面的长作业执行完毕才执行的问题。(非抢占式的调度算法)
  • 短作业优先调度算法: 按估计运行时间最短的顺序进行调度。如果一直有短作业到来,那么长作业可能永远得不到调度。(非抢占式的调度算法)
  • 最短剩余时间优先调度算法: 按剩余运行时间的顺序进行调度。 当一个新的作业到达时,其整个运行时间与当前进程的剩余时间作比较。如果新的进程需要的时间更少,则挂起当前进程,运行新的进程。
  • 优先级调度算法: 为每个进程分配一个优先级,按优先级进行调度。
  • 时间片轮转调度算法: 将所有就绪进程按先来先服务的原则排成一个队列,每次调度时,把 CPU 时间片分给队首的进程,该进程可以执行一个时间片。当时间片用完时,由计时器发出时钟中断,调度程序便停止该进程,并将它送到队列的末尾,同时继续把 CPU 时间片分给队首的进程。时间片轮转算法的效率和时间片的大小有关,如果时间片太小,会导致进程切换得太频繁,在进程切换上就会花过多时间。如果时间片过大,实时性就得不到保证。

猜你喜欢

转载自blog.csdn.net/weixin_43338519/article/details/107590533