内核参数vm.overcommit_memory和vm.overcommit_ratio

(1)vm.overcommit_memory

执行grep -i commit  /proc/meminfo

看到CommitLimit和Committed_As参数。

CommitLimit是一个内存分配上限,CommitLimit = 物理内存 *
overcommit_ratio(默认50,即50%) + swap大小

Committed_As是已经分配的内存大小。

--------

vm.overcommit_memory文件指定了内核针对内存分配的策略,其值可以是0、1、2

0: (默认)表示内核将检查是否有足够的可用内存供应用进程使用;如果有足够的可用内存,内存申请允许;否则,内存申请失败,并把错误返回给应用进程。0
即是启发式的overcommitting handle,会尽量减少swap的使用,root可以分配比一般用户略多的内存

1:
表示内核允许分配所有的物理内存,而不管当前的内存状态如何,允许超过CommitLimit,直至内存用完为止。

2: 表示不允许超过CommitLimit值

(2)vm.overcommit_ratio

默认值为:50 (即50%)

这个参数值只有在vm.overcommit_memory=2的情况下,这个参数才会生效。

时间: 2025-01-01 09:35:09

内核参数vm.overcommit_memory和vm.overcommit_ratio的相关文章

Linux内核参数之 overcommit_memory

/etc/sysctl.conf vm.overcommit_memory=1 或者 sysctl vm.overcommit_memory=1 或者 echo 1 > /proc/sys/vm/overcommit_memory 内核参数说明如下:                                                                                                                            

关于系统参数:vm.overcommit_memory 和 vm.overcommit_ratio;

overcomit_memory : 0 :用户申请内存的时候,系统会判断剩余的内存多少,如果不够的话那么就会失败. 1:  用户申请内存的时候,系统不进行任何检查任务内存足够用,直到使用内存超过可用内存. 2: 用户一次申请的内存大小不允许超过可用内存的大小. overcommit_ratio: 当 overcomot_memory = 2 时,该参数有效,这个参数决定了系统可用内存的大小. 计算公式: (Physical-RAM-Size)*ratio / 100 +(Swap-Size) 

LINUX下ORACLE相关的内核参数详解

ORACLE相关的内核参数详解 1.kernel.sem [[email protected] ~]# cat /proc/sys/kernel/sem 250         32000    100         142 [[email protected] ~]#  ipcs -sl ------ Semaphore Limits -------- max number of arrays = 142 max semaphores per array = 250 max semaphor

配置sysctl.conf文件修改内核参数

sysctl.conf文件 linux系统中/proc/sys目录下存放的内核参数,可以在系统运行时进行更改,不过重启机器后配置就会失效. 由于/proc/sys下内核文件与配置文件sysctl.conf中变量存在着对应关系,在/etc/sysctl.conf文件中修改配置内核参数可以实现永久生效,以下是本人整理的常用参数配置 # Controls source route verification net.ipv4.conf.default.rp_filter = 1 net.ipv4.ip_

安装完redis必须设置内核参数vm.overcommit_memory = 1

必须设置 /etc/sysctl.conf #vm.overcommit_memory = 1 # sysctl -p 否则会遇到 MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. 今天搞elk的时候就遇到了这样问题. 版权声明:本文为博主原创文章,未经博主允许不得转载.

谨慎调整内核参数:vm.min_free_kbytes

内核参数:内存相关 内存管理从三个层次管理内存,分别是node, zone ,page; 64位的x86物理机内存从高地址到低地址分为: Normal DMA32 DMA.随着地址降低. [[email protected] /home/ahao.mah] #cat /proc/zoneinfo |grep "Node" Node 0, zone DMA Node 0, zone DMA32 Node 0, zone Normal Node 1, zone Normal 每个zone都

LINUX内核参数FS与VM相关

文件系统相关 fs.aio-nr = 0 当前aio请求数 fs.aio-max-nr = 1048576 最大允许的aio请求数 fs.file-nr = 3456 0 94159 已分配的文件handle数量/已分配但没有使用的/最大文件handle fs.file-max = 94159 内核支持的最大file handle数量 fs.nr_open = 1048576 nr_open是一个进程可以打开的最大文件数 fs.inode-nr = 13030 1629 列出inode-stat

linux内存回收 内核参数

ss -atu| awk '/^tcp/{++S[$2]} END {for(a in S) print a,S[a]}' ps up pid   (RSS:实际内存大小,长驻内存) ps o pid,comm,minflt,majflt pid  (依次是次页中断,主页中断)   页中断:分配内存的过程叫页中断  主页中断来自swap,(主页中断太多会影响性能)   次页中断来自内存    页错误:重新建立物理内存与虚拟内存的对应关系 vm.swappiness rhel-7(30%)  10

linux内核参数详解

内核参数列表 kernel.acct acct功能用于系统记录进程信息,正常结束的进程都会在该文件尾添加对应的信息.异常结束是指重启或其它致命的系统问题,不能够记录永不停止的进程.该设置需要配置三个值,分别是: 1.如果文件系统可用空间低于这个百分比值,则停止记录进程信息. 2.如果文件系统可用空间高于这个百分比值,则开始记录进程信息. 3.检查上面两个值的频率(以秒为单位). kernel.auto_msgmni 系统自动设置同时运行的消息队列个数. 0:不自动 1:自动 kernel.blk