RISC-V 分页:什么决定了脏位和访问位的管理方式?

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

RISC-V 特权 ISA 规范第 4.3.1 节(“寻址和内存保护”)规定允许使用两种管理叶页上的脏位和访问位的方案:

  • 在访问/写入没有相应位设置的页面时,实现会产生页面错误(以便页面错误处理程序可以“修复”该问题),
  • 或者这些位由 hart 实现自动管理和设置(关于内存顺序的一些断言)。

从操作系统实现者的角度来看,谁决定我应该使用(并依赖)其中的哪种方案?更具体地说,我如何发现脏位能够“管理自己”并且我不需要做任何事情,或者我必须在页面错误处理程序中提供功能?

我在规范中没有发现任何此类信息;所以希望有一个通知可以澄清这一点,或者也许是两种方案中回退的安全方法。

memory-management operating-system paging riscv riscv32
1个回答
0
投票

咨询#riscv IRC频道后,我得到了

<geist>
的答复(谢谢!):

有扩展

Svade
(以前的
Ssptead
)和
Svadu
可以正确设置行为,并且可以从 ISA 字符串进行检查。

据我了解,如果不存在任何扩展,则行为完全未指定。

详细信息可在扩展网站 https://github.com/riscv/riscv-svadu 和配置文件列表中获取 https://github.com/riscv/riscv-profiles/blob/main/profiles .adoc .

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