上下文切换(Context Switch)是操作系统将 CPU 从一个进程切换到另一个进程的过程:保存当前进程的执行状态,恢复新进程的执行状态。
| 对比项 | 模式切换 | 上下文切换 |
|---|---|---|
| 触发原因 | 系统调用、中断 | 进程调度 |
| 地址空间 | 不切换 | 可能切换 |
| TLB / Cache | 不失效 | 可能失效 |
| 开销 | 较小 | 较大 |
| 包含关系 | 是上下文切换的一部分 | 一定包含模式切换 |
| 开销来源 | 说明 |
|---|---|
| 保存/恢复寄存器 | 所有 CPU 寄存器写入/读取 PCB |
| 切换地址空间 | 切换页表基址寄存器(如 CR3) |
| TLB 刷新 | 新地址空间的 TLB 条目失效 |
| Cache 失效 | 旧进程 Cache 数据可能无用 |
| 调度开销 | 选择新进程的时间 |
↑ 以上为站内 HTML 相对链接(纯网页可浏览);本页右上「在 Obsidian 中打开」跳回源笔记。