我试图找到已经分配了存储在Linux RAM磁盘中的文件的确切机器内存页面。例如,对于进程,有/ proc / pid / pagemap可以准确地告诉您进程正在使用哪些机器页。我正在为RAM磁盘寻找类似的东西。您知道内核模块或数据结构可能包含分配给RAM磁盘的页面列表吗?
例如,如果我创建一个1MB大小的RAM磁盘(假设4KB页面),这意味着应该有256个机器页面分配给该RAM磁盘(2 ^ 22/2 ^ 14 = 256)。
RAM磁盘构建在Linux的页面缓存之上,所以似乎是一个很好的开始,但我不确定如何关联哪些页面缓存条目对应于RAM磁盘。
答案 0 :(得分:2)
我认为它不是/ proc / pid / pagemap中显示给你的确切内存位置。 这些是虚拟内存映射(帧)。
pagemap是内核中允许的一组新的(从2.6.25开始)接口 用户空间程序通过检查页表和相关信息 在/ proc。中读取文件。
了解更多信息