free -m
total used free shared buffers cached
Mem: 15947 15707 240 0 473 2034
-/+ buffers/cache: 13200 2747
Swap: 8191 274 7917
Mem:表示物理内存统计
-/+ buffers/cached:表示物理内存的缓存统计
Swap:表示硬盘上交换分区的使用情况,这里我们不去关心。
系统的总物理内存:255988Kb(256M),但系统当前真正可用的内存并不是第一行free 标记的 24284Kb,它仅代表未被分配的内存。
我们使用total1、used1、free1、used2、free2 等名称来代表上面统计数据的各值,1、2 分别代表第一行和第二行的数据。
total1:表示物理内存总量。
used1:表示总计分配给缓存(包含buffers 与cache )使用的数量,但其中可能部分缓存并未实际使用。
free1:未被分配的内存。
shared1:共享内存,一般系统不会用到,这里也不讨论。
buffers1:系统分配但未被使用的buffers 数量。
cached1:系统分配但未被使用的cache 数量。buffer 与cache 的区别见后面。
used2:实际使用的buffers 与cache 总量,也是实际使用的内存总量。
free2:未被使用的buffers 与cache 和未被分配的内存之和,这就是系统当前实际可用内存。
Swap:表示硬盘上交换分区的使用情况,这里我们不去关心。
系统的总物理内存:255988Kb(256M),但系统当前真正可用的内存并不是第一行free 标记的 24284Kb,它仅代表未被分配的内存。
我们使用total1、used1、free1、used2、free2 等名称来代表上面统计数据的各值,1、2 分别代表第一行和第二行的数据。
total1:表示物理内存总量。
used1:表示总计分配给缓存(包含buffers 与cache )使用的数量,但其中可能部分缓存并未实际使用。
free1:未被分配的内存。
shared1:共享内存,一般系统不会用到,这里也不讨论。
buffers1:系统分配但未被使用的buffers 数量。
cached1:系统分配但未被使用的cache 数量。buffer 与cache 的区别见后面。
used2:实际使用的buffers 与cache 总量,也是实际使用的内存总量。
free2:未被使用的buffers 与cache 和未被分配的内存之和,这就是系统当前实际可用内存。
可以整理出如下等式:
total1 = used1 + free1
total1 = used2 + free2
used1 = buffers1 + cached1 + used2 = 473+2034+ 13200=15707
free2 = buffers1 + cached1 + free1 =473+2043+240=2747 (真正可用内存)
buffer 与cache 的区别
A buffer is something that has yet to be "written" to disk. A cache is something that has been "read" from the disk and stored for later use.
A buffer is something that has yet to be "written" to disk. A cache is something that has been "read" from the disk and stored for later use.
两者都是RAM中的数据。简单来说,buffer是即将要被写入磁盘的,cache是被从磁盘中读出来的。
buffer是用于存储速度不同步的设备或优先级不同的设备之间传输数据的区域。缓冲(buffers)是根据磁盘的读写设计的,把分散的写操作集中进行,减少磁盘碎片和硬盘的反复寻道,从而提高系统性能。
cache经常被用在磁盘的I/O请求上,如果有多个进程都要访问某个文件,于是该文件便被做成cache以方便下次被访问,这样可提供系统性能。缓存(cached)是把读取过的数据保存起来,重新读取时若命中(找到需要的数据)就不要去读硬盘了,若没有命中就读硬盘。其中的数据会根据读取频率进行组织,把最频繁读取的内容放在最容易找到的位置,把不再读的内容不断往后排,直至从中删除
buffer是用于存储速度不同步的设备或优先级不同的设备之间传输数据的区域。缓冲(buffers)是根据磁盘的读写设计的,把分散的写操作集中进行,减少磁盘碎片和硬盘的反复寻道,从而提高系统性能。
cache经常被用在磁盘的I/O请求上,如果有多个进程都要访问某个文件,于是该文件便被做成cache以方便下次被访问,这样可提供系统性能。缓存(cached)是把读取过的数据保存起来,重新读取时若命中(找到需要的数据)就不要去读硬盘了,若没有命中就读硬盘。其中的数据会根据读取频率进行组织,把最频繁读取的内容放在最容易找到的位置,把不再读的内容不断往后排,直至从中删除
相关推荐
linux 内存泄露排查文档。 介绍mtrace的使用。根据实际问题介绍如果定位问题。
嵌入式Linux内存与性能详解-史子旺 本书非常详尽地讲解了 linux 内存相关知识与 linux 系统调优相关的工具
天大 操作系统 课程 linux 内存管理 实验报告
linux内存管理 linux内存管理 linux内存管理
嵌入式Linux内存使用与性能优化,很好的一本书
linux内存管理源代码导读 pdf格式
针对linux内存的使用,详细讲解了如何优化内存,及性能的提高
linux 内存管理学习总结 学习心得 内存管理纲要
Linux内存分页机制原理
linux内存管理工具
Linux内存管理--Linux物理内存三级架构.pdf
linux 内存运行原理 slab 内存泄露整理 ,内存分析整理
个人多年学习并总结的有关Linux内存管理的笔记,希望对Linux内核爱好者有所帮助!
cgroup-linux内存资源管理.pdf cgroup-linux内存资源管理.pdf cgroup-linux内存资源管理.pdf cgroup-linux内存资源管理.pdf cgroup-linux内存资源管理.pdf cgroup-linux内存资源管理.pdf cgroup-linux内存资源管理....
我不可能完全理解LINUX内存管理的精髓,肯定有很多地方理解错误。希望大 家能够指正,以便提高,谢谢。 学习方法: 可能您第一次阅读的时候很多地方都不理解,不用担心。那您可能需要阅读一些 文件系统的知识。 或者...
Linux内存管理编程技术.doc
linux内存和CPU占用情况,自已写的,开发linux的人非常有用,可查看内存情况
很清晰的描述了linux内存虚拟及物理内存的划分,包括: node介绍 zone介绍 3G~4G内核空间布局 内核整体mm管理结构
一个简单的嵌入式linux内存映射例子,包括静态映射和动态映射。