linux内存随笔
内存在电脑中使用广泛,比如内存条内存、显卡显存、cpu缓存、raid卡缓存等,缓存就是数据交换的缓冲区(称作cache),缓存往往都是RAM(断电文件丢失),他们的读写速率非常高,用来帮助硬件更快的响应。
我们这里主要说一下linux中的系统内存(内存条为主),一般我们使用free -m命令查看内存使用情况(以兆为单位),linux系统的命令解释:free显示系统以及内核使用的缓冲区和缓存。这个通过解析/proc/meminfo收集信息。
[root@linux-node2 data]# free -m total used free shared buffers cached Mem: 1826 1169 657 9 10 704 -/+ buffers/cache: 454 1372 Swap: 2047 0 2047
第1行, 能看懂的我就不说了,我说一下其中几个参数:
shared:9当前已经废弃不用的共享内存
buffers:buffer内存数10
cached:page cache内存数704
第2行:-/+buffers/cache:
-buffers/cache:内存数:454(等于第1行used-buffers-cached,我的偏差1,是因为我以兆为单位显示,后面的省略了,建议使用free不加参数,用字节显示计算)
+buffers/cache:内存数1372(等于第一行的free+buffers+cached,这个才是实际可以使用的内存)
可以看出+buffers/cache是可以挪用的临时缓存,-buffers/cache是正在占用且不能释放的内存。
第三行:数据交换分区swap:这个是硬盘分出来的空间,我们通常叫它虚拟内存,一般内存条内存占用完才会使用虚拟内存,读写速度慢,性能严重下降,如果发现虚拟内存正在被使用,说明你的电脑该加内存条咯。
未完。临时保存