TLB Hit - 检查页面是否在进程的内存空间内

问题描述 投票:1回答:2

我一直在阅读有关虚拟地址到物理地址的转换。据我所知,TLB是一个硬件缓存,驻留在CPU的内存管理单元中,包含最近访问过的页面的映射。

但是,有一个TLB命中 - 操作系统如何确保进程实际访问页面(在进程的分配地址空间内)?

我相信这样做的一种方法是检查进程的页表,但这似乎打败了使用TLB的整个目的。任何见解?

memory-management operating-system tlb
2个回答
1
投票

这取决于操作系统正在使用的内存管理策略。例如,在OS使用反向分页表的情况下,页表中的每个条目包含拥有该页面的进程(PID)的id。

对于“正常”寻呼,每个寻呼条目可以包含用于存储器保护和共享的额外位。


0
投票

在基本级别,TLB仅包含ram中的页面,并且只要从ram中删除页面,os就会清除TLB。

© www.soinside.com 2019 - 2024. All rights reserved.