系统相关
首页 > 系统相关> > linux中 vm.overcommit_memory 的含义

linux中 vm.overcommit_memory 的含义

作者:互联网

vm.overcommit_memory 表示内核在分配内存时候做检查的方式。
这个变量可以取到0,1,2三个值。对取不同的值时的处理方式都定义在内核源码 mm/mmap.c 的 __vm_enough_memory 函数中。

以上为粗略描述,在实际计算时,如果非root进程,则在计算时候会保留3%的空间,而root进程则没有该限制

vm.overcommit_memory


默认值为:0

从内核文档里得知,该参数有三个值,分别是:

0:当用户空间请求更多的的内存时,内核尝试估算出剩余可用的内存。

1:当设这个参数值为1时,内核允许超量使用内存直到用完为止,主要用于科学计算

2:当设这个参数值为2时,内核会使用一个决不过量使用内存的算法,即系统整个内存地址空间不能超过swap+50%的RAM值,50%参数的设定是在overcommit_ratio中设定。

vm.overcommit_ratio


默认值为:50

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

转载自:http://blog.sina.com.cn/s/blog_d495ebf80101pwwq.html

标签:ratio,overcommit,vm,内核,memory,内存
来源: https://www.cnblogs.com/wshenjin/p/15500202.html