Too young, too simple. Sometimes, naive & stupid

转换检测缓冲区大小

从页表中读取地址映射很耗时且资源宝贵,因此Linux操作系统提供最近使用地址的缓存:转换检测缓冲区(TLB)。但默认的TLB只能缓存一定量的的地址映射。如果需要的地址映射不存在TLB中(TLB miss),系统仍然需要读取页表以决定物理到虚拟的内存地址映射。

由于应用程序内存需求与用来缓存地址映射的页大小之间的关系,对于内存需求小的应用程序来说,对内存需求大的程序更容易受到TLB miss造成的性能下降。因此无论何时,避免TLB miss很重要。

部分Linux提供大型转换检测缓冲区(大型TLB),可以将内存分为大片段进行管理。这使大量的地址映射能同时进行缓存,降低TLB miss的可能性,提高需要大内存的应用程序的性能。