我被告知我可以使用/proc/[pid]/pagemap
找到与虚拟地址对应的物理地址。
我读到这个 pagemap 文件是一个64位条目的数组,其中0-54位对应于页面帧号。我不知道如何实现从虚拟到物理的跨越。部分地,我不知道如何在这个文件中找到我想要的条目;似乎没有人指定它们的索引方式。
另外,我不知道PFN是虚拟的还是物理的。无论如何,我不知道如何处理PFN。我该怎么办?
由于
答案 0 :(得分:0)
将VA除以页面大小(通常为4096),将其用作/ proc / self / pagemap的偏移量。然后取这个数字(页面),乘以pagesize(4096),然后用你的VA%4094抵消。
拉里