操作系统面试题1

为什么进程切换比线程切换慢?

1.每个进程都占据独立的虚拟内存空间,而访问真正的数据需要虚拟地址到物理地址的转换。 2.虚拟地址到物理地址的转换需要CPU中的MMU和内存中的页表,而为了提高访问页表的效率,利用局部性原理,把经常要访问的页表项放入cache中的TLB中。而因为TLB中的页表项数量有限,进程切换就会导致TLB缓存不命中概率变大,从而频繁访问内存中的慢表,而线程共享虚拟地址空间,不会发生虚拟地址的切换。

全部评论

相关推荐

11-05 07:29
贵州大学 Java
点赞 评论 收藏
分享
点赞 1 评论
分享
牛客网
牛客企业服务