代码之家  ›  专栏  ›  技术社区  ›  GurdeepS

什么是上下文切换?

  •  15
  • GurdeepS  · 技术社区  · 16 年前

    我在读关于 debuggerstepperboundary 属性和一个站点说它在上下文切换中很有用。

    上下文切换到底是什么?我假设它是从一个线程切换到另一个线程,或者在执行或安全上下文中?然而,这些猜测并不是很有根据,所以我在这里问。

    4 回复  |  直到 10 年前
        1
  •  8
  •   Diego    12 年前

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

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

    Wikipedia

        2
  •  18
  •   Brian Liang    16 年前

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

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

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

        3
  •  4
  •   Adam Rosenfield    16 年前

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

        4
  •  1
  •   Larsenal    16 年前

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