“交换”和“上下文切换”之间的区别

时间:2013-06-01 14:53:08

标签: parallel-processing operating-system

在操作系统中,“交换”和“上下文切换”之间有什么区别?我在教科书中发现的唯一区别是,在交换中有一个中期调度程序。对它有所了解。

5 个答案:

答案 0 :(得分:1)

  • 交换处理内存,交换了多少内存。
  • 上下文切换处理进程,其状态为暂停或任何情况。

实际上它们可能是相同的。

答案 1 :(得分:0)

交换正在保存从物理内存到二级存储(通常是HDD)的进程的当前计算状态(当被抢占或出于某种其他原因时)。和/或将进程的当前计算状态从HDD加载到物理内存。

当操作系统将CPU从一个进程分配到另一个进程时,计算需要有意义的是,在CPU从当前运行的进程切换到另一个进程之前,当前正在运行的进程的当前计算状态必须保存到半永久性存储,即HDD,以便下次获取CPU时可以从它离开的地方恢复执行。此操作需要一些时间,例如t单位。保存过程状态后,必须将要分配CPU的进程状态从HDD带入物理内存。这也需要一些时间,p单位。这些t + p = z(比如说)是上下文切换。因此,上下文切换实际上是交换和换出操作所需的时间。

答案 2 :(得分:0)

交换:将进程内存交换到主内存到辅助内存,反之亦然。 上下文切换:过程状态被传送到过程控制块PCB,另一个程序的状态从PCB加载。

答案 3 :(得分:0)

交换是操作系统中在谈论主内存和磁盘之间的交换时通常使用的术语。 例如:当前正在cpu上运行的进程需要在磁盘中存储更多的页面。因此,交换器将其他进程(正在等待,已终止..)页面的页面从主内存中交换到磁盘中,同时交换所需的页面。

另一方面,

上下文切换将进程从运行状态切换到就绪状态,而在调度程序的帮助下将cpu分配给就绪队列中存在的进程。

注意:这是上下文切换的简单示例。操作系统的复杂性越高,上下文切换期间要做的工作就越多。

答案 4 :(得分:0)

交换等待队列在进程的等待阶段,进程从 RAM 中删除,稍后进程重新引入主内存,并从停止处重新开始执行,这种情况称为交换