Multithreading 什么是上下文切换?

Multithreading 什么是上下文切换?,multithreading,operating-system,Multithreading,Operating System,我在读关于debuggerstepperboundary属性的文章,一个网站说它在上下文切换中很有用 什么是上下文切换?我假设它是从一个线程切换到另一个线程,或者在执行或安全上下文中?但是,这些都不是经过专门教育的猜测,所以我在这里要问。它通常指线程或进程之间的切换。有更详细的描述。它是在CPU上的进程之间切换的过程。上下文切换(有时也称为进程切换或任务切换)是CPU(中央处理器)从一个进程或线程切换到另一个进程或线程 上下文切换可以更详细地描述为内核(即操作系统的核心)对CPU上的进程(包括线

我在读关于debuggerstepperboundary属性的文章,一个网站说它在上下文切换中很有用


什么是上下文切换?我假设它是从一个线程切换到另一个线程,或者在执行或安全上下文中?但是,这些都不是经过专门教育的猜测,所以我在这里要问。

它通常指线程或进程之间的切换。有更详细的描述。

它是在CPU上的进程之间切换的过程。

上下文切换(有时也称为进程切换或任务切换)是CPU(中央处理器)从一个进程或线程切换到另一个进程或线程

上下文切换可以更详细地描述为内核(即操作系统的核心)对CPU上的进程(包括线程)执行以下活动:(1)暂停一个进程的进程,并将该进程的CPU状态(即上下文)存储在内存中的某处,(2)从内存中检索下一个进程的上下文,并将其恢复到CPU的寄存器中,(3)返回到程序计数器指示的位置(即返回到进程中断的代码行),以恢复进程


上下文切换有时被描述为内核挂起CPU上一个进程的执行,并恢复先前挂起的其他进程的执行。尽管这一措辞有助于澄清概念,但它本身可能令人困惑,因为根据定义,进程是程序的执行实例。因此,暂停进程进程的措辞可能更可取。

上下文切换是CPU从一个进程/线程切换到另一个进程/线程

人们有时在特定的计算机世界之外使用上下文切换这个术语来反映他们在自己的生活中所做的事情。“如果我要回答这个问题,我需要从思考A转换到思考B”

将CPU核心切换到另一个进程需要执行一个状态 当前进程的保存和其他进程的状态还原 过程此任务称为上下文切换

摘自:操作系统概念,亚伯拉罕(恐龙封面)



但这不一定能帮助我理解这个概念。我喜欢在学习时看动画或图像。你的问题很有趣,请考虑添加更多的标签(操作系统、内核、进程…),并从中删除C标签。