一、啥是内存呢
?
![酷 酷](http://ecmp.baidu.com/modules/editors/tiny_mce/plugins/emotions/img/smiley-cool.gif)
想全面了解内存的请到威武的百科去看吧,真全啊!
二、怎么查看系统内存的信息
?
![酷 酷](http://ecmp.baidu.com/modules/editors/tiny_mce/plugins/emotions/img/smiley-cool.gif)
三、如何查看整个系统的内存使用情况
?
![酷 酷](http://ecmp.baidu.com/modules/editors/tiny_mce/plugins/emotions/img/smiley-cool.gif)
四、怎么查看某个进程的内存使用情况
?
![酷 酷](http://ecmp.baidu.com/modules/editors/tiny_mce/plugins/emotions/img/smiley-cool.gif)
- VmSize(KB) 任务虚拟地址空间的大小
- VmRSS(KB) 应用程序正在使用的物理内存的大小,就是用ps命令的参数rss的值
- VmData(KB) 程序数据段的大小(所占虚拟内存的大小),存放初始化了的数据
- VmLck(KB) 任务已经锁住的物理内存的大小。锁住的物理内存不能交换到硬盘
- VmStk(KB) 任务在用户态的栈的大小
- VmExe(KB) 程序所拥有的可执行虚拟内存的大小,代码段,不包括任务使用的库
- VmLib(KB) 被映像到任务的虚拟内存空间的库的大小
VmRSS表示当前进程使用的物理内存。当进程开始使用已经申请的但还没有用的内存时,VmRSS的值开始增大,但是VmSize保持不变。
一般在性能测试过程中,关注程序内存占用情况,只关注 VmRSS 一项
五、内存性能指标及解释
- Free memory - 空闲内存Linux中的Free memory与大多数操作系统一样不用关心。Linux内核将大量未使用的内存作为文件系统缓存,故总内存扣除已用内存和用于缓冲的内存得到的是实际的Free memory。
- Swap usage - 交换空间使用Swap usage描述交换空间内存占用量,从Swap usage中我们只能知道Linux在管理内存上是多么有效。要想确定内存是否存在性能瓶颈,Swap In/Out才是真正的指标。如果Swap In/Out长时间处于每秒超过200到300 pages的情况,那意味着内存可能存在性能瓶颈。
- Buffer and cache - 缓冲与缓存Buffer and cache描述用于文件系统和块设备的缓存。
- SlabsSlabs描述内核所使用的内存,注意内核的pages是不能被交换到硬盘上的。
- Active versus inactive memory - 活动与非活动内存Active versus inactive memory描述活动内存的相关信息。非活动内存往往会作为候选被kswapd daemon (核心交换守护进程)交换到硬盘。