Svnapot
“Svnapot” Standard Extension for NAPOT Translation Contiguity, Version 1.0
在Sv39、Sv48和Sv57中,当PTE 的N位等于1时,此时的PTE表示一个区域内的连续虚拟地址到物理地址的转换,并且这个区域的PTE[5:0]比特位均相同,说明这个需要连续转换的页面的属性相同。此类范围必须是自然对齐的 2 的N次方 (NAPOT) 粒度,大于基本页面大小。
Svnapot扩展依赖于Sv39
在地址转换算法中,NAPOT pte的行为与非NAPOT pte相同,但有一些点不同:
-
如果根据表 5.1,pte 中的编码是有效的,那么 NAPOT PTE 的隐式读取不会返回 pte 的原始值,而是返回 pte 的副本,其中 pte.ppn[pte.napot_bits-1 : 0] 被替换为vpn[i][pte.napot_bits-1 : 0]。 如果是表 5.1 中保留 的pte编码,则必须引发页面错误异常。因为这里pte.napot_bits为3,所以在64KiB里面索引的时候,需要16位