了解的过程多少内存页的使用在Linux上(Find out how many pages of me

2019-10-18 09:34发布

我需要找出的内存进程分配多少页? 每一页是4096,我有一些问题,定位正确的值进程的内存使用。 当我看在国美系统监测也有从下存储器映射选择几个值。

谢谢。

这样做的一点是要除以页数的内存使用和验证页面大小。

Answer 1:

很难推测正确分配的存储器确切量:有与其他进程(库的R / O份),没用过存储器通过分配共享页brk和匿名mmap由于高效的处理,mmaped文件,该文件不是从磁盘中取出完全该触摸文件等的只有小部分的算法,换出的页面,脏页写上盘是-等

如果你想处理所有这些复杂性,并找出网页真实计数,详细的信息,请访问/proc/<pid>/smaps ,有工具,如mem_usage.pysmem.pl (易googlable)至把它变成更多或更少可用摘要。



Answer 2:

这将是“驻留集大小”,假设你过程中不使用掉。

需要注意的是一个过程可以分配更加存储器(“虚拟内存大小”),但只要它不写入内存,它不受物理内存来表示,无论是在内存或磁盘上。

一些系统工具,比如顶部,显示“交换”为每个进程一个巨大的价值 - 这当然是完全地错误的,价值是VMS和RSS,最有可能那些未使用的,但分配的内存页面之间的差异。



文章来源: Find out how many pages of memory a process uses on linux