一、啥是内存呢

回答:内存是计算机中重要的部件之一,它是与CPU进行沟通的桥梁。计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机的影响非常大。 内存(Memory)也被称为内存储器,其作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。只要计算机在运行中,CPU就会把需要运算的数据调到内存中进行运算,当运算完成后CPU再将结果传送出来,内存的运行也决定了计算机的稳定运行。 内存是由内存芯片、电路板、金手指等部分组成的。
想全面了解内存的请到威武的百科去看内存吧,真全啊!
 

二、怎么查看系统内存的信息

回答:可以使用cat /proc/meminfo,如:

 
 

三、如何查看整个系统的内存使用情况

回答:命令有很多,工具使用等都可以,我们可以free一下看看:
 
 

四、怎么查看某个进程的内存使用情况

回答:cat /proc/{PID}/status 
 
  • VmSize?(KB) 任务虚拟地址空间的大小
  • VmRSS?(KB) 应用程序正在使用的物理内存的大小,就是用ps命令的参数rss的值
  • VmData?(KB) 程序数据段的大小(所占虚拟内存的大小),存放初始化了的数据
  • VmLck?(KB) 任务已经锁住的物理内存的大小。锁住的物理内存不能交换到硬盘
  • VmStk?(KB) 任务在用户态的栈的大小
  • VmExe?(KB) 程序所拥有的可执行虚拟内存的大小,代码段,不包括任务使用的库
  • VmLib?(KB) 被映像到任务的虚拟内存空间的库的大小

VmRSS?表示当前进程使用的物理内存。当进程开始使用已经申请的但还没有用的内存时,VmRSS的值开始增大,但是VmSize保持不变。

一般在性能测试过程中,关注程序内存占用情况,只关注 VmRSS 一项

五、内存性能指标及解释

  1. Free memory - 空闲内存
    Linux中的Free memory与大多数操作系统一样不用关心。Linux内核将大量未使用的内存作为文件系统缓存,故总内存扣除已用内存和用于缓冲的内存得到的是实际的Free memory。
  2. Swap usage - 交换空间使用
    Swap usage描述交换空间内存占用量,从Swap usage中我们只能知道Linux在管理内存上是多么有效。要想确定内存是否存在性能瓶颈,Swap In/Out才是真正的指标。如果Swap In/Out长时间处于每秒超过200到300 pages的情况,那意味着内存可能存在性能瓶颈。
  3. Buffer and cache - 缓冲与缓存
    Buffer and cache描述用于文件系统和块设备的缓存。
  4. Slabs
    Slabs描述内核所使用的内存,注意内核的pages是不能被交换到硬盘上的。
  5. Active versus inactive memory - 活动与非活动内存
    Active versus inactive memory描述活动内存的相关信息。非活动内存往往会作为候选被kswapd daemon (核心交换守护进程)交换到硬盘。

六、其他资料

最新文章

  1. 【Yeoman】热部署web前端开发环境
  2. opencv嫁接vlfeat densesift
  3. codeforces B. Pasha and String(贪心)
  4. "浅谈Android"第二篇:活动(Activity)
  5. python逐行读写
  6. opencv笔记5:频域和空域的一点理解
  7. Android5.0之NavigationView的使用
  8. Delphi 使用 Format格式话字符串的用法
  9. poj 3254 Corn Fields 国家压缩dp
  10. 201521123067 《Java程序设计》第11周学习总结
  11. 69、django之Form组件
  12. 详解功能版本管理之使用eoLinker
  13. 转:Log Explorer使用说明恢复被误删除的数据
  14. photoshop实现倾斜图片的修正
  15. 下载JDK和Jmeter并设置系统环境变量
  16. 最大子数组问题/Maximum Subarray
  17. go的精选类库
  18. Python学习-40.Python中的迭代
  19. string的函数的学习
  20. 铁乐学python_Day42_线程池

热门文章

  1. 网页title添加图标
  2. 基于struts2注解@action的@Result跳转问题——跳转到另一个action
  3. android 使用图片轮播图---banner 使用
  4. Docker学习(五): 仓库与数据管理
  5. 三、hbase JavaAPI
  6. LeetCode 第二天后续(两数相加 python3)
  7. HDU 1875(最小生成树)
  8. 基于注解的简单SSH保存用户小案例
  9. react框架 Dva & Umi
  10. javascript判断浏览器支持CSS3属性