Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
哪些内存页被分配到Linux RAM磁盘中的文件_Linux_Ramdisk_Tmpfs - Fatal编程技术网

哪些内存页被分配到Linux RAM磁盘中的文件

哪些内存页被分配到Linux RAM磁盘中的文件,linux,ramdisk,tmpfs,Linux,Ramdisk,Tmpfs,我试图找到准确的机器内存页,这些页被分配回存储在Linux RAM磁盘中的文件。例如,对于一个进程,有/proc/pid/pagemap可以准确地告诉您一个进程正在使用哪个机器页面。我正在为RAM磁盘寻找类似的东西。您知道内核模块或数据结构中可能有分配给RAM磁盘的页面列表吗 例如,如果我创建一个1MB大小的RAM磁盘(假设4KB页面),这意味着应该有256个机器页面分配给该RAM磁盘(2^22/2^14=256) RAM磁盘构建在Linux的页面缓存上,因此似乎是一个很好的起点,但我不确定如何

我试图找到准确的机器内存页,这些页被分配回存储在Linux RAM磁盘中的文件。例如,对于一个进程,有/proc/pid/pagemap可以准确地告诉您一个进程正在使用哪个机器页面。我正在为RAM磁盘寻找类似的东西。您知道内核模块或数据结构中可能有分配给RAM磁盘的页面列表吗

例如,如果我创建一个1MB大小的RAM磁盘(假设4KB页面),这意味着应该有256个机器页面分配给该RAM磁盘(2^22/2^14=256)


RAM磁盘构建在Linux的页面缓存上,因此似乎是一个很好的起点,但我不确定如何关联哪些页面缓存条目对应于RAM磁盘。

我认为它不是/proc/pid/pagemap中显示给您的确切内存位置。 这些是虚拟内存映射(帧)

pagemap是内核中的一组新接口(从2.6.25开始),允许 用户空间程序,通过 正在读取/proc中的文件

更多信息如下


你为什么在乎?内核可能会将页面从某个RAM移动到另一个RAM!