步骤 3 / 7
保存现场
内核把程序 A 停下时的运行现场保存起来。
“现场”(上下文)就是程序运行到哪一步、手头的中间结果是什么。 内核把它存进 A 自己的记录里,就像游戏存档。 存档完整,A 以后就能原样接着跑,察觉不到自己被打断过。
操作系统
一个 CPU 核心同一时刻只能跑一个程序,Linux 靠快速轮换制造“同时运行”的效果。
以一个 CPU 核心上轮流运行两个程序为例。
步骤 3 / 7
内核把程序 A 停下时的运行现场保存起来。
“现场”(上下文)就是程序运行到哪一步、手头的中间结果是什么。 内核把它存进 A 自己的记录里,就像游戏存档。 存档完整,A 以后就能原样接着跑,察觉不到自己被打断过。
| 当前状态 | 发生了什么 |
|---|---|
| A 运行中 | 程序 A 正在使用 CPU |
| 进入内核态 | 时钟到点,CPU 陷入内核 |
| 内核态 | 保存程序 A 的上下文 |