我一直在阅读有关将虚拟地址转换为物理地址的信息。据我所知,TLB是一个硬件缓存,驻留在CPU的内存管理单元中,包含最近访问过的页面的映射。
但是,有一个TLB命中 - 操作系统如何确保进程实际访问该页面(在进程的已分配地址空间内)?
我认为,这样做的一种方法是检查进程的页表,但这似乎打败了使用TLB的整个目的。任何见解?
答案 0 :(得分:1)
这取决于操作系统正在使用的内存管理策略。例如,如果操作系统使用反向分页表,则页表中的每个条目都包含拥有该页面的进程(PID)的ID。
对于"正常"寻呼,每个寻呼条目可能包含额外的位用于存储器保护和共享。
答案 1 :(得分:0)
在基本级别上,TLB仅包含ram中的页面,并且每当从ram中删除页面时,os都会清除TLB。