深入理解Linux-MemFree以及MemAvailable的区别-VPS中MemTotal (深入理解linux内核第三版)

文章编号:11531 更新时间:2024-03-16 分类:互联网资讯 阅读次数:

资讯内容

在租用Linux美国VPS时,很多朋友拿到主机之后都会对其性能进行简单的测试,其中内存就是其中一项。对于Linux VPS来说,内存大小直接影响整个主机性能以及读取数据的快慢,所以是尤为重要的。在检测Linux VPS的内存时,会出现很多结果指标,主要的有MemTotal、MemFree以及MemAvailable,如下图所示:那么它们之间都有什么区别,有表示什么意思呢?本文就简单的来介绍下,大家可以参考参考。

1、MemTotal

MemTotal译为内存总大小,是系统从加电开始到引导完成,BiOS等要保留的部分内存,内核要保留的部分内存,最后剩下可供系统支配的内存就是MemTotal,这个值在Linux VPS运行过程中基本是不变的。

2、MemFree

MemFree译为空闲内存大小,表示系统尚未使用的内存,其中,=MemTotal-MemFree,表示已被使用过的内存。

3、MemAvailable

MemAvailable译为可用内存数大小,这是因为系统中有些内存虽然已被使用但可以回收,比如cache/buffer、slab都有一部分是能够被回收的,所以MemFree不能代表全部可用的内存,这部分可回收内存加上MemFree才是系统可用的内存,也就是:MemAvailable≈MemFree+Buffers+Cached,当然它是一个估值。注意:MemAvailable与MemFree的关键区别在于,MemAvailable是应用程序层面的内存大小,而MemFree是系统层面的内存大小。

除了以上三个主要内存的概念和区别之外,以下几个概念对内存也有间接的影响,他们分别是:

- Buffer:缓冲区内存数;

- Cache:缓存区内存数;

- ShaRed:多个进程共享的内存空间。

其中,有以下两点:

Buffer是缓冲的意思,Cache是缓存的意思,从而概念上来看这二者就有很明显的区别,一个是像弹簧一样具有缓冲,一个像保管箱,可以进行短暂的存储。

它们也被称作write-buffer和read-cache,所以Buffer一般用作写操作,Cache一般用在读操作上面。

根据上图的free命令,这里简单总结下这几个内存概念直接的计算公式,即:

- Memtotal=Memused+Memfreebuffers/cache

- used=Memused-Membuffers–Memcachedbuffers/cache

- free=Memfree+Membuffers+Memcachedbuffers/cache

- total=buffers/cacheused+buffers/cache

MemTotal、MemFree及MemAvailable之间有一定的区别和联系,大家在进行Linux美国VPS主机内存检测时,如果对相关概念不是很了解的话,可以参考上述内存进行比对。

标签: MemFree以及MemAvailable的区别深入理解LinuxVPS中MemTotal

本文地址: https://yihaiquanyi.com/article/4bb7489e400cb12d9d5d.html

上一篇:RAKsmart年终大促服务器全场八折爆款裸机云...
下一篇:如何选择最优质的日本多IP服务器站群服务如...

发表评论