11. 自制操作系统: risc-v Svnapot/Svpbmt标准扩展

本文介绍了RISC-V架构中的Svnapot和Svpbmt标准扩展,Svnapot用于连续虚拟地址到物理地址的NAPOT转换,减少TLB压力;Svpbmt则提供了基于页面的内存类型,覆盖主内存页的PMA,影响内存访问的排序规则。这两个扩展都依赖于Sv39,旨在优化地址转换和内存管理效率。
摘要由CSDN通过智能技术生成

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位࿰

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

byd yes

你的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值