为什么同样大小的内存,4.5比3.16内核更容易发生异常?

其它类软件,非上述版软件
回复
科学之子
帖子: 2284
注册时间: 2013-05-26 6:58
系统: Debian 9

为什么同样大小的内存,4.5比3.16内核更容易发生异常?

#1

帖子 科学之子 » 2016-05-05 7:22

为什么同样大小的内存,4.5比3.16内核更容易发生异常?
较为彻底禁用OOM的方法(但系统可能会出现异常):
方法见2楼
但我还有些疑问:
4.5内核如何禁止Linux的OOM Killer?zram交换设备还有很多空闲空间,就被kill了
通过dmesg确认,确实发生了OOM被kill的进程总是iceweasel(firefox)
内核版本:

代码: 全选

Linux debian 4.5.0-0.bpo.1-686-pae #1 SMP Debian 4.5.1-1~bpo8+1 (2016-04-20) i686 GNU/Linux
3.16内核貌似不会OOM,即使系统已经很卡,zram使用了很多

我在4.5内核试过vm.overcommit_memory=1,vm.overcommit_memory=2
vm.overcommit_ratio=100
都没用,还是被kill
测试环境内存用的是192M
即"mem=192M memmap=0M@192M"参数引导内核
Thu May 5 07:42:15 CST 2016补充:
同样的测试环境,3.16内核我现在还能用iceweasel(firefox)打开天气预报网页不关闭,然后打开本论坛编辑本帖
但是4.5内核,几乎只要打开iceweasel(firefox)就被kill

代码: 全选

# swapon
NAME                   TYPE        SIZE  USED PRIO
/dev/zram0             partition 182.7M 50.3M   10
/dev/zram1             partition 182.7M   50M   10
/home/username/swap_single file          4G 66.8M   -1
硬盘上的交换文件被使用是因为有段时间机器内存严重不足,卡的厉害,就swapoff然后重新开启zram交换设备.
貌似代价不算太大
当然,大型系统,数G内存这么干肯定就不行了
或许可以分割成小块的zram设备去swapoff?(注意要在内存不足时去swapoff,才能把zram中的老页面"挤"到硬盘中的swap设备去?)
不过我也不确定,也许被"挤"到硬盘的是热页面
但不管怎么说,在我这个测试环境下,接近卡死时swapoff zram设备确实能起到不错的效果.
上次由 科学之子 在 2016-05-06 23:28,总共编辑 3 次。
回复