小编Bit*_*han的帖子

地址间隔标识符 (ASID) 的用途

我目前正在学习 A Silberschatz、P Galvin、G Gagne 的操作系统。

我正在研究内存管理策略,以及他们介绍翻译后备缓冲区 (TLB) 的部分。

一些 TLB 在每个 TLB 条目中存储地址空间标识符 (ASID)。ASID 唯一标识每个进程并用于为该进程提供地址空间保护。当 TLB 尝试解析虚拟页号时,它会确保当前运行的进程的 ASID 与与虚拟页关联的 ASID 匹配。如果 ASID 不匹配,则将尝试视为 TLB 未命中。

以上是解释ASID的教科书的引述。

我有点困惑,因为 TLB 未命中意味着逻辑地址无法在 TLB 中匹配,因此必须使用页表检查它以前往物理内存。

话虽如此,ASID 是 TLB 中每个条目的额外位,用于检查正在访问该条目的进程是否属于该进程。

我想知道的是,当使用 ASID 拒绝进程时,它不应该捕获,而不是 TLB 未命中?TLB 未命中会将进程转发到页表,其中进程的逻辑地址将能够映射到主内存中的某个地址。

请帮助我理解错误的地方。

谢谢!

memory operating-system tlb

7
推荐指数
1
解决办法
4479
查看次数

标签 统计

memory ×1

operating-system ×1

tlb ×1