linux下使用free命令查看实际内存占用
2015-06-05 18:55
656 查看
linux下在终端环境下可以使用free命令看到系统实际使用内存的情况,一般用free
-m方式查看内存占用情况(兆为单位)。而系统实际可用内存是不是free部分呢,不是的,系统实际内存占用以及可用内存有如下几个加减法:
used=total-free 即 total=used+free
实际内存占用:used-buffers-cached即 total-free-buffers-cached
实际可用内存:buffers+cached+free
total used free shared buffers cached
Mem: 128 119 8 0 1 22
-/+ buffers/cache: 95 32
swap: 255 0 255
第1行Mem数据:
total 内存总数: 128
used 已经使用的内存数: 119
free 空闲的内存数: 8
shared 当前已经废弃不用,总是0
buffers Buffer Cache内存数: 1
cached Page Cache内存数: 22
第2行-/+ buffers/cache:
-buffers/cache 的内存数:95 (等于第1行的 used - buffers - cached)
+buffers/cache 的内存数: 32 (等于第1行的 free + buffers + cached)
可见-buffers/cache反映的是被程序实实在在吃掉的内存,而+buffers/cache反映的是可以挪用的内存总数。
第三行数据是交换分区SWAP的,也就是我们通常所说的虚拟内存。
为了提高磁盘存取效率, Linux做了一些精心的设计, 除了对dentry进行缓存(用于VFS,加速文件路径名到inode的转换), 还采取了两种主要Cache方式:Buffer Cache和Page Cache。前者针对磁盘块的读写,后者针对文件inode的读写。这些Cache有效缩短了 I/O系统调用(比如read,write,getdents)的时间。
感兴趣的可以进一步参考文件/proc/meminfo,free命令就是根据它的信息生成的。free命令的源码可从procps-xxx-.src.rpm获取,xxx为版本号,比如procps-3.2.3-5.3.src.rpm。
-m方式查看内存占用情况(兆为单位)。而系统实际可用内存是不是free部分呢,不是的,系统实际内存占用以及可用内存有如下几个加减法:
used=total-free 即 total=used+free
实际内存占用:used-buffers-cached即 total-free-buffers-cached
实际可用内存:buffers+cached+free
total used free shared buffers cached
Mem: 128 119 8 0 1 22
-/+ buffers/cache: 95 32
swap: 255 0 255
第1行Mem数据:
total 内存总数: 128
used 已经使用的内存数: 119
free 空闲的内存数: 8
shared 当前已经废弃不用,总是0
buffers Buffer Cache内存数: 1
cached Page Cache内存数: 22
第2行-/+ buffers/cache:
-buffers/cache 的内存数:95 (等于第1行的 used - buffers - cached)
+buffers/cache 的内存数: 32 (等于第1行的 free + buffers + cached)
可见-buffers/cache反映的是被程序实实在在吃掉的内存,而+buffers/cache反映的是可以挪用的内存总数。
第三行数据是交换分区SWAP的,也就是我们通常所说的虚拟内存。
为了提高磁盘存取效率, Linux做了一些精心的设计, 除了对dentry进行缓存(用于VFS,加速文件路径名到inode的转换), 还采取了两种主要Cache方式:Buffer Cache和Page Cache。前者针对磁盘块的读写,后者针对文件inode的读写。这些Cache有效缩短了 I/O系统调用(比如read,write,getdents)的时间。
感兴趣的可以进一步参考文件/proc/meminfo,free命令就是根据它的信息生成的。free命令的源码可从procps-xxx-.src.rpm获取,xxx为版本号,比如procps-3.2.3-5.3.src.rpm。
相关文章推荐
- linux软件安装常用操作
- LINUX性能调优方法总结
- linux ----打包压缩tar -zcvf 文件名.tar.gz 目录
- linux下解压rar文件
- linux模块编译
- LINUX 查看硬件配置命令
- linux(以ubuntu为例)下Android利用ant自动编译、修改配置文件、批量多渠道,打包生成apk文件
- Linux系统抓包命令tcpdump使用实例
- Linux下启动mysql
- 在windows上通过ssh远程链接linux服务器[转]
- [linux] scp无密码拷贝
- 在Linux系统中安装使用恶意软件扫描工具及杀毒引擎的教程
- linux下不同服务器间数据传输(rcp,scp,rsync,ftp,sftp,lftp,wget,curl)
- 3-Linux基本命令
- 对 Linux 新手非常有用的 20 个命令
- DayDayUP_Linux运维学习_VMware克隆后找不到eth0
- Linux下内核socket优化项
- DayDayUP_Linux运维学习_查看linux版本的方法2
- busybox号称linux下的瑞士小军刀
- Linux下使用Eclipse开发C\C++