浙江工商大学,每天一个linux指令:free 指令,藕片的做法

频道:国际新闻 日期: 浏览:321

free指令能够显现Linux体系中闲暇的、已用的物理内存及swap内存,及被内核运用的buffer。在Linux体系监控的东西中,free指令是最常常运用的指令之一。

1.指令格局:

free [参数]

2.指令功用:

free 指令显现体系运用和闲暇的内存状况,包含物理内存、交互区内存(swap)和内核缓冲区内存。同享内存将被疏忽

3.指令参数:

-b 以Byte安迪国际联盟为单位显现内存运用状况。

-k 以KB为单位显现内存使浙江工商大学,每天一个linux指令:free 指令,藕片的做法用状况。

-m 以MB为单位显现内存运用状况。

-g 以GB为单位显现内存运用状况。

-o 不显现缓冲区调理列。

-s<距离秒数> 继续调查内存运用状况。

-t 显现内存总和列。

-V 显现版别信息。

4.运用实例:

实例1:显现内存运用状况

指令:

free

free -g

free -m

输出:

[root@SF1150 service]# free

total used free shared buffers cached

Mem: 32940112 30841684 2098428 0 4545340 11363424

-/+ buffers/cache: 14932920 18007192

Swap: 32764556 1944984 308195肩膜炎72

[root@SF1150 service]# free -g

total used fre袁咏珊e shared buffers cached

Mem: 31 29 2 0 4 10

-/+ buffers/cache: 14 17

Swap: 31 1 29

[root@SF1150 service]# free -m

total used free shared buffers cached

Mem: 32168 30119且望烈日 2048 0 4438 11097

-/+ buffers/cache: 14583 17584

Swap: 31996 1899 30097

阐明:

下面是对这些数值的解说:

total:总计物理内存的巨细。

used:已运用多大。

free:可用有多少。

Shared:多个进程同享的内存总额。

Buffers/cached:磁盘缓存的巨细。

第三行(-/+ buffers/cached):

used:已运用多大。

free:可用有多少。

第四行是交流分区SWAP的,也便是咱们一般所说的虚拟内存。

差异:第二行(mem)的used/free与第三行(-/+ buffers/cache) used/free的差异。 这两个的差异在于恶徒总裁运用的视点来看,榜首行是从OS的视点来看,由于关于OS,buffers/cached 都是归于被运用,所以他的可用内存是2098428KB,已用内存是30841684KB,其间包含,内核(OS)运用+Application(X, oracle,etc)运用的+buffers+cached.

第三行所指的是从应用程序视点来看,关于应用程序来说,buffe水柔rs/cached 是等于可用的,由于buffer/cached是为了进步文件读取的功能,当应用程序需在用到内存的时分,buffer/cached会很快地被收回。

所以从应用程序的视点来说,可用内存=体系free memory+buffers+cached。

如本机状况的可用内存为:

18007156=2098428KB+4545340KB+11363424KB

接下来解说什么时分内存会被交流,以及按什么方交流。

当可用内存少于额定值的时分,就会开会进行交流.怎么看额定值:

指令:

cat /proc/meminfo

输出:

[root@SF1150 service]# cat /proc/meminfo

MemTotal: 32940112 kB

MemFree: 2096700 kB

B水柔uffers: 4545340 kB

Cached: 11364鱼米金服056 kB

SwapCached: 1896080 kB

Active: 22739776 kB

Inactive: 7427836 kB

HighTotal: 0 kB

HighFree: 0 kB

LowTotal: 32940112 kB

LowFree: 2096700 kB

SwapTotal: 32764556 kB

SwapFree: 30819572 kB

Dirty: 164 kB

Writeback: 0 kB

AnonPages: 14153592 kB

Mapped: 20748 kB

Slab: 590232 kB

PageTables: 34200 kB

NFS_Unstable: 0 kB

Bounce: 0 kB

CommitLimit: 49234612 kB

Committed_AS: 23247544 kB

VmallocTotal: 34359738367 kB

VmallocUsed: 278840 kB

VmallocChunk: 34359459371 浙江工商大学,每天一个linux指令:free 指令,藕片的做法k968066B

HugePages_Total: 0HugePages_Free: 0HugePages_Rsvd: 0Hugepagesize: 2048 kB

交流将经过三个途径来削减体系中运用郑婉瑜的物理页面的个数:

1.削减缓冲与页面cache的巨细,浙江工商大学,每天一个linux指令:free 指令,藕片的做法

2.将体系V类型的内存页面交流出去,

3.换出或许丢掉页面。(Application 占用的内存页,也便是物理内存不足)。

事实上,少量地运用swap是不是影响到体系功能的。

那buffers和cached都是缓存,两者有什么差异呢?

为了进步磁盘存取功率, Linux做了一些精心的规划, 除了对de汉中城固气候ntry进行缓存(用于VFS,加快文件路径名到inode的转化), 还采取了两种首要Cache方法:Buffer Cache和Page Cache。前者针对磁盘块的读写,后者针对文件inode的读写。这些Cache有用缩短了 I/O体系调用(比方read,write,getdents)的时刻。

磁盘的操作有逻辑级(文件体系)和物理级(磁盘块),这两种Cach妈妈的pye便是别离缓存逻辑和物理级数据的温心彤。

Page cache实践上是针对文件体系的,是文件的缓存,在文件层面上的数据会缓存到page cache。文件的逻辑层需求映射到实践的物理磁盘,这种映射关系由文件体系来完结。当page cache的数据需求改写时,page cache中的数据交给buffer cache,由于Buffer Cache便是缓存磁盘块的。可是这种处理在2.6版别浙江工商大学,每天一个linux指令:free 指令,藕片的做法的内核之后就变的很简略了,没有真实意义上的cache操作。

Buffer cache是针对磁盘块的缓存,也便是在没有文件体系的状况下,直接对磁盘进行操作的数据会缓存到buffer cache中,例如,文件体系的元数据都会缓存到buffer cache中。

简略说来,page cache用来缓存文件数据,buffer cache用来缓存磁盘数据。在有文件体系的状况下,对文件操作怜情,浙江工商大学,每天一个linux指令:free 指令,藕片的做法那么数据会缓存到page cache,假如直接浙江工商大学,每天一个linux指令:free 指令,藕片的做法选用dd等东西对磁盘进行读写,那么数据会缓存到buffer cache。

所以咱们看linux,只需不必swap的交流空间,就不必忧虑自己的内存太少.假如常常swap用许多,或许你就要浙江工商大学,每天一个linux指令:free 指令,藕片的做法考虑加物理内存了.这也是linux看内存是否够用的规范.

假如是应用服务器的话,一般只看第二行,+buffers/cache,即对应用程序来说free的内存太少了,也是该考虑优化程序或加内存了。

实例2:以总和的方式显现内存的运用信息

指令:

李廷钊free -t

输出:

[root@SF1150 service]# free -t

total used free shared bu散炮挂钩方法具体图解ffers cached

Mem: 32940112 30845024 2095088 0 4545340 11364324

-/+ buffers/cache: 14935360 18004752Swap: 32764556 194皓月悟空4984 30819572Total: 65704668 32790008 32914660[root@SF1150 service]#

阐明:

实例3:周期性的查询内存运用信息

指令:

free -s 10

输出:

[root@SF1150 service]# free -s 10

total used free shared buffers cached

Mem: 32940112 30844528 2095584 0 4545340 11364380

-/+ buffers/cache: 14934808 18005304Swap: 32764556 1944984 30819572

total used free shared buffers cached

Mem: 32940112 30843932 2096180 0 4545340 11364388

-/+ buffers/cache: 14934204 18005908Swap: 32764556 1944984 30819572

阐明:

每10s 履行一次指令

转载老男同志地址:http://www.cnblogs.com/peida/av家黑化曲rchive/2012/12/25/2831814.html