当前位置: 技术问答>linux和unix
LINUX下如何用程序实现对一段代码运行使用的内存进行检测
来源: 互联网 发布时间:2017-01-16
本文导语: 主要测试的是内存的使用率! 希望各位达人能解释下! | 把这段代码放在一个脚本里,然后运行脚本,top的输出里不是可以看到各进程的cpu和内存使用情况吗 不知道你问的是不是这个要求 ...
主要测试的是内存的使用率!
希望各位达人能解释下!
希望各位达人能解释下!
|
把这段代码放在一个脚本里,然后运行脚本,top的输出里不是可以看到各进程的cpu和内存使用情况吗
不知道你问的是不是这个要求
不知道你问的是不是这个要求
|
top。根据pid不是可以直接看到吗
|
那就写一个程序读取 /proc/meminfo 里面的信息
MemTotal: 所有可用RAM大小
MemFree: LowFree与HighFree的总和,被系统留着未使用的内存
Buffers: 用来给文件做缓冲大小
Cached: 被高速缓冲存储器(cache memory)用的内存的大小(等于 diskcache minus SwapCache ).
SwapCached:被高速缓冲存储器(cache memory)用的交换空间的大小
Inactive: 在不经常使用中的缓冲或高速缓冲存储器页面文件的大小,可能被用于其他途径.
HighFree: 该区域不是直接映射到内核空间。内核必须使用不同的手法使用该段内存。
SwapTotal: 交换空间的总大小
SwapFree: 未被使用交换空间的大小
Dirty: 等待被写回到磁盘的内存大小。
Writeback: 正在被写回到磁盘的内存大小。
AnonPages:未映射页的内存大小
Mapped: 设备和文件等映射的大小。
Slab: 内核数据结构缓存的大小,可以减少申请和释放内存带来的消耗。
SReclaimable:可收回Slab的大小
SUnreclaim:不可收回Slab的大小(SUnreclaim+SReclaimable=Slab)
PageTables:管理内存分页页面的索引表的大小。
NFS_Unstable:不稳定页表的大小
我觉得可用内存=系统free memory+buffers+cached 所以使用率你也应该知道怎样把
MemTotal: 所有可用RAM大小
MemFree: LowFree与HighFree的总和,被系统留着未使用的内存
Buffers: 用来给文件做缓冲大小
Cached: 被高速缓冲存储器(cache memory)用的内存的大小(等于 diskcache minus SwapCache ).
SwapCached:被高速缓冲存储器(cache memory)用的交换空间的大小
Inactive: 在不经常使用中的缓冲或高速缓冲存储器页面文件的大小,可能被用于其他途径.
HighFree: 该区域不是直接映射到内核空间。内核必须使用不同的手法使用该段内存。
SwapTotal: 交换空间的总大小
SwapFree: 未被使用交换空间的大小
Dirty: 等待被写回到磁盘的内存大小。
Writeback: 正在被写回到磁盘的内存大小。
AnonPages:未映射页的内存大小
Mapped: 设备和文件等映射的大小。
Slab: 内核数据结构缓存的大小,可以减少申请和释放内存带来的消耗。
SReclaimable:可收回Slab的大小
SUnreclaim:不可收回Slab的大小(SUnreclaim+SReclaimable=Slab)
PageTables:管理内存分页页面的索引表的大小。
NFS_Unstable:不稳定页表的大小
我觉得可用内存=系统free memory+buffers+cached 所以使用率你也应该知道怎样把