操作系统中的抢先式与非抢先式调度
内容
OS中的抢占式和非抢占式调度之间的主要区别在于,抢占式调度发生在进程从运行状态运行到就绪状态时,而非抢占式调度发生在进程终止时。
操作系统是用户与软件之间的桥梁,操作系统是计算机科学中最重要的概念。在操作系统中,抢占式和非抢占式调度是最重要的概念。
有一个CPU调度程序,负责将进程分配给CPU。 CPU调度程序等待CPU释放,并且当CPU资源释放时,它将进行其他处理。当进程从运行状态运行到就绪状态时,发生抢占式调度,而当进程终止时,发生非抢占式调度。在抢占式调度中,可以调度进程,而不能在非抢占式调度进程中调度。抢占式调度是在进程从运行状态切换到就绪状态时发生的。在抢先式调度中,CPU周期分配给进程,并且周期有限。需要等待的进程处于就绪队列中,并且等待CPU突发。进程必须保持在就绪队列中,直到CPU准备执行为止。然后是优先级,高优先级的流程将首先获得资源,然后优先级较低的流程将获得资源。这整个过程称为抢先式调度。 Robin Robin是抢占式调度的一个示例。
当进程终止时,发生非抢占式调度。当进程由CPU占用资源并且该进程使用该资源时,该进程将由CPU终止。抢占式调度会在具有高优先级的进程到来时立即中断进程,在非抢占式调度的情况下,不会出现中断,并且在进程完成时终止进程。当执行具有较长CPU突发时间的进程时,该进程将必须等待,这样平均等待时间会增加。
内容:操作系统中的抢占式和非抢占式调度之间的区别
- 比较表
- 抢占式调度
- 非抢占式调度
- 关键差异
- 结论
- 解释性视频
比较表
基础 | 抢占式调度 | 非抢占式调度 |
含义 | 当进程从运行状态运行到就绪状态时,将发生抢占式调度 | 当进程终止时,发生非抢占式调度。
|
打断 | 抢先式调度中断 | 非抢占式调度不会中断 |
灵活 | 抢占式调度非常灵活 | 非抢占式调度不灵活 |
成本 | 抢先调度具有成本效益 | 非抢占式调度的成本效益不高 |
抢占式调度
当进程从运行状态切换到就绪状态时,将发生抢占式调度。在抢占式调度中,将CPU周期分配给进程,即在有限的时间段内。需要等待的进程处于就绪队列中,并且等待CPU突发。进程必须保持在就绪队列中,直到CPU准备执行为止。然后是优先级,高优先级的流程将首先获得资源,然后是优先级较低的流程。这整个过程称为抢先式调度。 Robin Robin是抢占式调度的一个示例。
非抢占式调度
当进程终止时,发生非抢占式调度。当进程由CPU占用资源并且该进程使用该资源时,该进程将由CPU终止。抢占式调度会在具有高优先级的进程到来时立即中断进程,在非抢占式调度的情况下,不会出现中断,并且在进程完成时终止进程。当执行具有较长CPU突发时间的进程时,该进程将必须等待,这样平均等待时间会增加。
关键差异
- 当进程从运行状态运行到就绪状态时,发生抢占式调度,而当进程终止时,发生非抢占式调度。
- 抢先式调度会中断,而非抢先式调度不会中断。
- 抢占式调度是灵活的,而非抢占式调度是不灵活的。
- 抢先式调度具有成本效益,而非抢先式调度则不具成本效益
结论
在上面的本文中,我们通过示例看到了抢先式和非抢先式调度之间的明显区别。