linux性能系列--内存
一、啥是内存呢?
二、怎么查看系统内存的信息?
三、如何查看整个系统的内存使用情况?
四、怎么查看某个进程的内存使用情况?
- 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描述用于文件系统和块设备的缓存。 - Slabs
Slabs描述内核所使用的内存,注意内核的pages是不能被交换到硬盘上的。 - Active versus inactive memory - 活动与非活动内存
Active versus inactive memory描述活动内存的相关信息。非活动内存往往会作为候选被kswapd daemon (核心交换守护进程)交换到硬盘。
六、其他资料
linux性能系列--内存的更多相关文章
- linux性能系列--块设备
一.啥是块设备呢? 回答:I/O设备大致分为两类:块设备和字符设备.块设备将信息存储在固定大小的块中,每个块都有自己的地址.数据块的大小通常在512字节到32768字节之间.块设备的基本特征是每个块都 ...
- linux性能系列--网络
一.为啥网络监控不好做? 回答:网络是所有子系统中最难监控的了.首先是由于网络是抽象的,更重要的是许多影响网络的因素并不在我们的控制范围之内.这些因素包括,延迟.冲突.阻塞等 等.由于网络监控中, ...
- linux性能系列--cpu
一.先看看什么是CPU? 回答:中央处理器(Central Processing Unit)的缩写,即CPU,CPU是电脑中的核心配件,只有火柴盒那么大,几十张纸那么厚,但它却是一台计算机的运算核心和 ...
- Linux 性能优化之 IO 子系统 系列 图
http://blog.sina.com.cn/s/articlelist_1029388674_11_1.html Linux 性能优化之 IO 子系统(一) 本文介绍了对 Linux IO 子系统 ...
- 【转】一文掌握 Linux 性能分析之内存篇
[转]一文掌握 Linux 性能分析之内存篇 前面我们已经学习了 CPU 篇,这篇来看下内存篇. 01 内存信息 同样在分析内存之前,我们得知到怎么查看系统内存信息,有以下几种方法. 1.1 /pro ...
- c/c++ linux 进程间通信系列4,使用共享内存
linux 进程间通信系列4,使用共享内存 1,创建共享内存,用到的函数shmget, shmat, shmdt 函数名 功能描述 shmget 创建共享内存,返回pic key shmat 第一次创 ...
- Linux 性能监控之CPU&内存&I/O监控Shell脚本2
Linux 性能监控之CPU&内存&I/O监控Shell脚本2 by:授客 QQ:1033553122 思路: 捕获数据->停止捕获数据->提取数据 备注:一些命令的输 ...
- Linux 性能监控之CPU&内存&I/O监控Shell脚本1
Linux 性能监控之CPU&内存&I/O监控Shell脚本1 by:授客 QQ:1033553122 #!/bin/bash # 获取要监控的本地服务器IP地址 IP=`if ...
- Linux性能监测:内存篇
在操作系统里,虚拟内存被分成页,在 x86 系统上每个页大小是 4KB.Linux 内核读写虚拟内存是以 “页” 为单位操作的,把内存转移到硬盘交换空间(SWAP)和从交换空间读取到内存的时候都是按页 ...
随机推荐
- android studio全局搜索关键字
- springmvc fileupload
1.pom文件中fileupload的dependencyyinr <dependency> <groupId>commons-fileupload</groupId&g ...
- 【转】redis windows环境搭建
一.下载redis windows压缩包 地址参考: https://github.com/ServiceStack/redis-windows/tree/master/downloads https ...
- Vue2.0实现ie的兼容
转自:https://blog.csdn.net/landl_ww/article/details/79149461 1.解决方案:安装 "babel-polyfill" ,加配置 ...
- nginx 安装配置和常用命令
基本环境:CentOS 1. 下载 nginx [root@localhost ~]# cd Downloads/ [root@localhost Downloads]# wget http://ng ...
- PHP 经典算法
<? //-------------------- // 基本数据结构算法 //-------------------- //二分查找(数组里查找某个元素) function bin_s ...
- Class.forName("com.mysql.jdbc.Driver")找不到类
解决方法: 如果是java项目,只需要引入mysql-connector-java-8.0.13.jar就可以运行java项目. 建的如果是web工程,需要把mysql-connector-java- ...
- 原生javascript实现类似jquery on方法的行为监听
原生javascript有addEventListener和attachEvent方法来注册事件,但有时候我们需要判断某一行为甚至某一函数是否被执行了,并且能够获取前一行为的参数,这个时候就需要其他方 ...
- 洛谷P3939 数颜色(二分 vector)
题意 题目链接 Sol 直接拿vector维护每种颜色的出现位置,然后二分一下. #include<bits/stdc++.h> using namespace std; const in ...
- 理解webpack4.splitChunks之其余要点
splitChunks除了之前文章提到的规则外,还有一些要点或是叫疑惑因为没有找到官方文档的明确说明,所以是通过我自己测试总结出来的,只代表我自己的测试结果,不一定正确. splitChunks.ca ...