查linux的性能的命令 linux性能排查( 三 )


VmallocTotal: 536870911 kB
VmallocUsed:272696 kB
VmallocChunk: 536598175 kB
HugePages_Total:0
HugePages_Free:0
Hugepagesize:2048 kB
用free -m查看的结果:
[root@scs-2 tmp]# free -m
totalusedfreesharedbufferscached
Mem:318931731601072605
-/+ buffers/cache:4602729
Swap:2000781921
查看/proc/kcore文件的大?。诖婢迪瘢?
[root@scs-2 tmp]# ll -h /proc/kcore
-r-------- 1 root root 4.1G Jun 12 12:04 /proc/kcore
备注:
占用内存的测量
测量一个进程占用了多少内存,linux为我们提供了一个很方便的方法,/proc目录为我们提供了所有的信息 , 实际上top等工具也通过这里来获取相应的信息 。
/proc/meminfo 机器的内存使用信息
/proc/pid/maps pid为进程号,显示当前进程所占用的虚拟地址 。
/proc/pid/statm 进程所占用的内存
[root@localhost ~]# cat /proc/self/statm
654 57 44 0 0 334 0
输出解释
CPU 以及CPU0 。。。的每行的每个参数意思(以第一行为例)为:
参数 解释 /proc//status
Size (pages) 任务虚拟地址空间的大小 VmSize/4
Resident(pages) 应用程序正在使用的物理内存的大小 VmRSS/4
Shared(pages) 共享页数 0
Trs(pages) 程序所拥有的可执行虚拟内存的大小 VmExe/4
Lrs(pages) 被映像到任务的虚拟内存空间的库的大小 VmLib/4
Drs(pages) 程序数据段和用户态的栈的大小 (VmData+ VmStk )4
dt(pages) 04
查看机器可用内存
/proc/28248/free
total used free shared buffers cached
Mem: 1023788 926400 97388 0 134668 503688
-/+ buffers/cache: 288044 735744
Swap: 1959920 89608 1870312
我们通过free命令查看机器空闲内存时 , 会发现free的值很小 。这主要是因为 , 在linux中有这么一种思想,内存不用白不用,因此它尽可能的cache和buffer一些数据,以方便下次使用 。但实际上这些内存也是可以立刻拿来使用的 。
所以 空闲内存=free+buffers+cached=total-used
top命令 是Linux下常用的性能 分析工具 ,能够实时显示系统 中各个进程的资源占用状况,类似于Windows的任务管理 器 。下面详细介绍它的使用方法 。
top - 02:53:32 up 16 days,6:34, 17 users,load average: 0.24, 0.21, 0.24
Tasks: 481 total,3 running, 474 sleeping,0 stopped,4 zombie
Cpu(s): 10.3%us,1.8%sy,0.0%ni, 86.6%id,0.5%wa,0.2%hi,0.6%si,0.0%st
Mem:4042764k total,4001096k used,41668k free,383536k buffers
Swap:2104472k total,7900k used,2096572k free,1557040k cached
PID USERPRNIVIRTRESSHR S %CPU %MEMTIME+COMMAND
32497 jacky200669m 222m31m R105.629:27.62 firefox
4788 yiuwing200257m18m13m S50.55:42.44 konsole
5657 Liuxiaof200585m 159m30m S44.05:25.06 firefox
4455 xiefc200542m124m30m R43.17:23.03 firefox
6188 Liuxiaof200191m17m13m S40.50:01.16 konsole
统计信息区前五行是系统整体的统计信息 。第一行是任务队列信息,同 uptime命令的执行结果 。其内容如下:
01:06:48当前时间
up 1:22系统运行 时间,格式为时:分
1 user当前登录用户 数
load average: 0.06, 0.60, 0.48系统负载 ,即任务队列的平均长度 。
三个数值分别为1分钟、5分钟、15分钟前到现在的平均值 。
第二、三行为进程和CPU的信息 。当有多个CPU时,这些内容可能会超过两行 。内容如下:
Tasks: 29 total进程总数
1 running正在运行的进程数
28 sleeping睡眠的进程数
0 stopped停止的进程数
0 zombie僵尸进程数
Cpu(s): 0.3% us用户空间占用CPU百分比
1.0% sy内核 空间占用CPU百分比
0.0% ni用户进程空间内改变过优先级的进程占用CPU百分比
98.7% id空闲CPU百分比

推荐阅读