TLB,俗称快表,因为它确实快。TLB是MMU的一部分,实质是cache,它所缓存的是最近使用的数据的页表项(虚拟地址到物理地址的映射)。他的出现是为了加快访问数据(内存)的速度,减少重复的页表查找。当然它不是必须要有的,但有它,速度就更快。
TLB刷新与上下文切换
当进程地址空间进行了切换,比如现在是进程1运行,TLB中放的是进程1的相关数据的地址;突然切换到进程2,TLB中原有的数据不是进程2相关的,此时TLB需要刷新数据。怎么刷新数据?
目前两种方法:一,全部刷新。二,部分刷新。
全部刷新很简单,但花销大,很多不必刷新的数据也进行刷新,增加了无畏的花销。
部分刷新是根据标志位,刷新需要刷新的数据,保留不需要刷新的数据