先发制人(preemptive)和非抢占式调度及其实例(non-preemptive scheduling with example)的区别

处理器调度(CPU调度)根据调度模型(如抢占式和非抢占式调度)确定分配给CPU和从CPU中删除哪些进程。CPU调度充分利用了CPU,形成了一个快速高效的系统。...

处理器调度(CPU调度)根据调度模型(如抢占式和非抢占式调度)确定分配给CPU和从CPU中删除哪些进程。CPU调度充分利用了CPU,形成了一个快速高效的系统。

007Ys3FFgy1gwtrwe608oj30dn0auglv

通常,计算机系统中的任务是根据优先级分配的。在某些情况下,尽管某个任务正在运行,但必须先运行另一个任务。因此,正在运行的任务会中断一段时间,并在优先任务完成执行后恢复。这就是所谓的抢占式调度。当进程从运行状态切换到就绪状态或从等待状态切换到readystate时,使用抢占式调度。

在非抢占式调度中,调度不会中断执行过程中CPU的运行过程。相反,它等待进程完成其CPU突发时间,然后可以将CPU分配给另一个进程。非抢占式调度是可以在某些硬件平台上使用的唯一方法,因为它不需要抢占式调度所需的特殊硬件(例如计时器)。

区别

  1. 抢占式调度是指优先执行优先级较高的进程。进程可以在执行过程中被另一进程中断。另一方面,非抢占式调度是指一旦CPU分配给进程,进程将保持CPU,直到通过终止或切换到等待状态释放CPU。
  2. 非抢占式调度可以说是严格的,因为即使关键进程进入就绪队列,运行CPU的进程也不会中断。另一方面,抢占式调度可以描述为灵活的,因为它允许关键进程在进入就绪队列时访问CPU,而不管当前正在执行什么进程。
  3. 在抢占式调度中,如果优先级较高的进程进入就绪队列,则优先级较低的进程将被删除,而在非抢占式调度中,一旦进程分配给CPU,它将完成其执行。
  4. 在非抢占式调度中,进程不能被调度,而在抢占式调度中,进程可以被调度。
  5. 抢占式调度可能导致两个进程共享数据的问题,因为在更新共享数据结构的过程中可能会中断。这通常不是非抢占式调度的情况。
  6. 非抢占式调度没有将进程从运行状态切换到就绪状态的开销,而抢占式调度则有将进程从就绪状态切换到运行状态、运行状态到就绪状态的开销。
  7. 在抢占式调度中,CPU利用率高于非抢占式调度。
  8. 在非抢占式调度中,如果CPU被分配给具有较大突发时间的进程,则具有较小突发时间的进程可能不得不饿死。相反,在抢占式调度中,如果高优先级进程经常到达就绪队列,那么低优先级的进程必须等待很长时间,并且可能会饿死。
  9. 与非抢占式调度相比,抢占式调度成本较高,因为它必须保持共享数据的完整性。

Also Read: Difference Between Vectored And Non-vectored Interrupts

表格形式的抢占式调度与非抢占式调度

比较基础 抢占式调度 非抢占式调度
描述 抢占式调度是指优先执行优先级较高的进程。进程可以在执行过程中被另一进程中断。 非抢占式调度是指,一旦CPU分配给进程,进程将保持CPU,直到通过终止或切换到等待状态释放CPU。
替代描述 抢占式调度可以描述为灵活的,因为它允许关键进程在进入就绪队列时访问CPU,而不管当前正在执行什么进程。 非抢占式调度可以说是严格的,因为即使关键进程进入就绪队列,运行CPU的进程也不会中断。
进程执行 在抢占式调度中,如果优先级较高的进程进入就绪队列,则优先级较低的进程将被删除。 在非抢占式调度中,一旦进程分配给CPU,它将完成其执行。
进程调度 在抢占式调度中,可以对进程进行调度。 在非抢占式调度中,无法调度进程。
数据共享问题 抢占式调度可能导致两个进程共享数据时的问题,因为在更新共享数据结构的过程中可能会中断。 非抢占式调度通常不是这种情况。
切换进程的开销 抢占式调度具有将进程从就绪状态切换到运行状态、从运行状态切换到就绪状态的开销。 非抢占式调度没有将进程从运行状态切换到就绪状态的开销
CPU利用率 在抢占式调度中,CPU利用率高于非抢占式调度。 在非抢占式调度中,CPU利用率低于抢占式调度。
处理 在抢占式调度中,如果高优先级进程频繁地到达就绪队列,那么低优先级的进程必须等待很长时间,并且可能会饿死。 在非抢占式调度中,如果CPU被分配给具有较大突发时间的进程,则具有较小突发时间的进程可能不得不饿死。
费用 与非抢占式调度相比,抢占式调度成本较高,因为它必须保持共享数据的完整性。 与抢占式调度相比,非抢占式调度的成本更低,因为它不必维护共享数据的完整性。

Also Read: Difference Between Process And Thread

抢占式调度与非抢占式调度的优缺点

抢占式调度允许调度器通过将CPU从其认为运行时间过长的进程中移出来控制响应时间,以便让另一个进程运行。与非抢占式调度相比,它会产生更多的开销,因为它必须处理上下文切换进程的开销,而不是允许进程运行到完成或运行到下一个I/O操作或其他系统调用。但是,它允许更高程度的并发性和更好的交互性能。

  • 发表于 2021-11-27 16:09
  • 阅读 ( 183 )
  • 分类:IT

你可能感兴趣的文章

先发制人(preemptive)和操作系统中的非强制调度(nonpreemptive scheduling in os)的区别

...占式和非抢占式调度都是在计算机上调度进程的机制。 先发制人(preemptive)和操作系统中的非强制调度(nonpreemptive sche****ng in os)的区别 操作系统中的抢占与非抢占调度 抢占式调度是一种进程调度机制,通过该机制,...

  • 发布于 2020-10-15 01:16
  • 阅读 ( 625 )

作业调度(job scheduling)和cpu调度(cpu scheduling)的区别

关键区别–作业调度与cpu调度 进程是正在执行的程序。计算机系统中有多个进程并行运行。最大化CPU利用率很重要。操作系统可以通过在进程之间切换CPU来提高计算机的生产效率。为了最大限度地利用CPU,每次运行一些进程...

  • 发布于 2020-10-15 01:23
  • 阅读 ( 379 )

调度程序(scheduler)和调度员(dispatcher)的区别

...格形式显示调度程序与调度程序 6. 摘要 什么是调度程序(scheduler)? 操作系统中有三种类型的调度程序。它们是长期调度器、短期调度器和中期调度器。长期调度程序也称为作业调度程序。在计算机系统中,有许多进程等待执行...

  • 发布于 2020-10-19 00:29
  • 阅读 ( 832 )

我可以使用任务调度器来监视我的计算机的电池吗?

...现笔记本电脑上电池电量变化: I need to create a task in Task Scheduler based on battery level changes. For example, say my laptop’s battery drops from 67 percent to 66 percent charge remaining. How can I run a task based on this event? Does Windows log this at all? I was unable to fi...

  • 发布于 2021-04-08 11:04
  • 阅读 ( 257 )

长期调度程序(long term scheduler)和短期调度程序(short term scheduler)的区别

...操作系统,短期调度程序 什么是长期调度程序(long term scheduler)? 长期计划程序也称为作业计划程序。在计算机中,有许多进程等待执行。这些进程在作业队列中。长期计划程序从作业队列或辅助内存中选择一个进程,并将该进...

  • 发布于 2021-07-01 15:08
  • 阅读 ( 320 )

先发制人(preemptive)和非抢占核(nonpreemptive kernel)的区别

...间时,非抢占式内核不像抢占式内核那样具有响应性。 先发制人(preemptive)和非抢占核(nonpreemptive kernel)的区别 定义 抢占式内核是一种允许进程在内核模式下运行时被删除或替换的内核。相反,非抢占式内核是一种允许以内核模...

  • 发布于 2021-07-01 22:07
  • 阅读 ( 277 )

先发制人(preemptive)和协同多任务(cooperative multitasking)的区别

...理的区别-主要区别比较 关键术语 合作多任务,多任务,先发制人多任务 什么是先发制人的多任务处理(preemptive multitasking)? 在抢占式多任务处理中,操作系统可以启动从正在运行的进程到另一个进程的上下文切换。换句话说...

  • 发布于 2021-07-01 22:08
  • 阅读 ( 1719 )

先发制人(preemptive)和操作系统中的非抢占式调度(non-preemptive scheduling in os)的区别

操作系统中抢占式调度和非抢占式调度的关键区别在于,抢占式调度发生在进程从运行状态运行到就绪状态时,而非抢占式调度发生在进程终止时。 操作系统是连接用户和软件的桥梁,操作系统是计算机科学中最重要的概念。...

  • 发布于 2021-07-08 11:15
  • 阅读 ( 377 )

预定银行(scheduled banks)和非表列银行(non-scheduled banks)的区别

...划内银行之间的所有相关差异。 内容:预定银行(content: scheduled bank) vs. 非定期银行(n***cheduled bank) 对比图 定义 关键区别 结论 对比图 Basis for ComparisonScheduled BanksNon-Scheduled Banks 意义表列银行是一家最低实收资本为50万卢...

  • 发布于 2021-07-08 17:13
  • 阅读 ( 312 )

影响(impact)和非撞击式打印机及其示例(non-impact printers with examples)的区别

...。 Also Read: Difference Between Plotter And Printer 影响(impact)和非冲击式打印机(non-impact printers)的区别 比较基础冲击式打印机非冲击式打印机描述冲击式打印机通过将打印锤或打印轮等机械装置敲击着墨的色带,在纸上留下图像,...

  • 发布于 2021-11-27 08:53
  • 阅读 ( 218 )
Q97341877359
Q97341877359

0 篇文章

相关推荐