TLB、页表、Cache、主存之间的访问关系

TLB、页表、Cache、主存之间的访问关系

首先,程序员应该给出一个逻辑地址。通过逻辑地址去查询TLB和页表(一般是同时查询,TLB是页表的子集,所以TLB命中,页表一定命中;但是页表命中,TLB不一定命中),以确定该数据是否在主存中。因为只要TLB和页表命中,该数据就一定被调入主存。如果TLB和页表都不命中,则代表该数据就不在主存,所以必定会导致Cache访问不命中。现在,假设该数据在主存中,那么Cache也不一定会命中,因为Cache里面的数据仅仅是主存的一小部分。

TLB、页表、Cache、主存之间的访问关系