上下文切换是O(1)过程,还是上下文切换量取决于各种局部因素,这些因素可能会影响上下文切换所需的时间?
发布于 2012-06-12 23:20:27
不,出于许多不同的原因。主要的一个是在同一进程的两个线程之间切换上下文,以及在不同进程的两个线程之间切换上下文意味着地址空间的改变。对于缓存和内存来说,更改地址空间总是代价高昂的操作。在x86上你将需要重新加载页面目录,在PowperPC上你将需要无效并重新加载TLB...
从线程转到内核时,更改地址空间不是强制性的。为了保持这一点,我认为Linux总是加载内核地址空间(使用PAE工具,并将包含4个条目的PDBR条目与内核地址空间锁定,从AS的较高半部分开始,位于0xc0000000)。
https://stackoverflow.com/questions/10999360
复制相似问题