文切换时也需要做地址空间的切换）。用户态线程之间也会发生类似的上下文切换，但这样的切换非常轻量。
交换时机.有三种可能的情况会发生上下文交换，分别为：
多工.最常见的，在一些排程(scheduling)算法内，其中行程有时候需要暂时离开CPU，让另一个行程进来CPU运作。在先佔式多工系统中，每一个行程都将轮流执行不定长度的时间，这些时间段落称为时间片。如果行程并非自愿让出CPU(例如执行I/O操作时，行程就需放弃CPU使用权)，当时限到时，系统将产生一个定