进程与线程的切换流程?

进程切换分两步:

1、切换页表以使用新的地址空间,一旦去切换上下文,处理器中所有已经缓存 的内存地址一瞬间都作废了。
2、切换内核栈和硬件上下文。

对于 linux 来说,线程和进程的最大区别就在于地址空间,对于线程切换,第 1 步是不需要做的,第 2 步是进程和线程切换都要做的。 因为每个进程都有自己的虚拟地址空间,而线程是共享所在进程的虚拟地址空 间的,因此同一个进程中的线程进行线程切换时不涉及虚拟地址空间的转换。

回复

我来回复
  • 暂无回复内容

免费咨询
免费咨询
扫码关注
扫码关注
联系站长

站长Johngo!

大数据和算法重度研究者!

持续产出大数据、算法、LeetCode干货,以及业界好资源!

2022012703491714

微信来撩,免费咨询:xiaozhu_tec

分享本页
返回顶部