Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/24.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_Memory_Linux Kernel - Fatal编程技术网

我们如何通过总结linux中进程占用的内存和可用内存来达到RAM大小?

我们如何通过总结linux中进程占用的内存和可用内存来达到RAM大小?,linux,memory,linux-kernel,Linux,Memory,Linux Kernel,我想知道如何计算总RAM,我们如何通过总结cat proc/meminfo命令的输出来达到RAM大小 Memtotal=MemFree+ 任何人都可以提供帮助要做到这一点,您需要一个考虑共享内存的工具 例如: PSS在这里是一个有趣的专栏,因为它将共享内存考虑在内。将RSS添加在一起将导致共享内存段被计数多次,因此数字不会相加 因此,用户区进程总共占用654Mb # smem -tw Area Used Cache Noncach

我想知道如何计算总RAM,我们如何通过总结cat proc/meminfo命令的输出来达到RAM大小

Memtotal=MemFree+


任何人都可以提供帮助

要做到这一点,您需要一个考虑共享内存的工具

例如:

PSS在这里是一个有趣的专栏,因为它将共享内存考虑在内。将RSS添加在一起将导致共享内存段被计数多次,因此数字不会相加

因此,用户区进程总共占用654Mb

# smem -tw
Area                           Used      Cache   Noncache 
firmware/hardware                 0          0          0 
kernel image                      0          0          0 
kernel dynamic memory        345784     297092      48692 
userspace memory             654056     181076     472980 
free memory                   15828      15828          0 
----------------------------------------------------------
                            1015668     493996     521672 
内核使用346Mb,还有16Mb的空闲空间。 总的来说,大约一半的内存用于缓存494Mb

因此1Gb内存总量=654Mb用户区进程,分解为+346Mb内核内存+16Mb空闲内存
给定或获取几Mb

当操作系统已导出此信息时,为什么要让进程计算可用的总内存?您必须使用dmidecode或cat/proc/meminfo | grep-i Total提供的输出。如何使用proc/meminfo命令输出详细信息。哪一个字段与process相关实际上,如果你想学习这些东西,一个非常好的练习就是重写smem。您将了解有关解析/proc数据、获取共享mem段信息、计算PSS等的所有内容
# smem -tw
Area                           Used      Cache   Noncache 
firmware/hardware                 0          0          0 
kernel image                      0          0          0 
kernel dynamic memory        345784     297092      48692 
userspace memory             654056     181076     472980 
free memory                   15828      15828          0 
----------------------------------------------------------
                            1015668     493996     521672