能否根据pgd 和mm_struct 等结构将不是当前进程的内存信息手工算出来。
lieye_leaves 发表于 2014-07-09 11:08 static/image/common/back.gif
那举个例子,如果我想从控制台上用cat mem显示内存信息时,我基本上是不可能的,因为系统后台在进行调度,当 ...
你具体想干嘛???? 本帖最后由 lieye_leaves 于 2014-07-09 12:38 编辑
我想了解各个进程的内存使用情况。 lieye_leaves 发表于 2014-07-09 12:35 static/image/common/back.gif
我想了解各个进程的内存使用情况。
物理内存,还是虚拟地址空间?
/proc/pid/smaps
/proc/pid/maps
中提供的信息应该比较清楚了吧。。。。 本帖最后由 lieye_leaves 于 2014-07-09 13:23 编辑
humjb_1983 发表于 2014-07-09 12:43 static/image/common/back.gif
物理内存,还是虚拟地址空间?
/proc/pid/smaps
/proc/pid/maps
比较详细,但是主要都是虚拟地址空间中的数值,能否有虚拟地址和物理地址之间的映射信息。 lieye_leaves 发表于 2014-07-09 13:09 static/image/common/back.gif
比较详细,但是主要都是虚拟地址空间中的数值,能否有虚拟地址和物理地址之间的映射信息。
你是说页表中的内容么? 那个信息能看到吗?当前进程能通过MMU映射,非当前进程能否计算出来,有的虚拟地址可能没有映射到物理内存的。 lieye_leaves 发表于 2014-07-09 14:05 static/image/common/back.gif
那个信息能看到吗?当前进程能通过MMU映射,非当前进程能否计算出来,有的虚拟地址可能没有映射到物理内存的 ...
每个进程的task_struct.pgd中都存放了其页目录的地址,通过pgd能逐个推算出每个PTE的内容,我记得网上应该有现成的内核模块可以实现相关功能。
humjb_1983 发表于 2014-07-09 14:37 static/image/common/back.gif
每个进程的task_struct.pgd中都存放了其页目录的地址,通过pgd能逐个推算出每个PTE的内容,我记得网上应该 ...
请问楼上,这个模块叫什么名字,或搜什么关键字能搜到,谢谢了 大概搜了一下,看似有这个功能了?
http://lwn.net/Articles/267837/
google关键字 dump page table
页:
1
[2]