交换zram没有在Linux-3.12中使用

时间:2016-10-21 10:34:19

标签: linux linux-kernel linux-device-driver embedded-linux swap

我们正在使用基于BBB的定制主板,它有4GB的eMMc和256MB的RAM,

我们看到碎片问题,所以我想到启用ZRAM并在其上挂载交换。

我在内核menuconfig中启用了以下配置

CONFIG_ZSMALLOC=y
CONFIG_ZRAM=y

然后我从init脚本运行

echo 256M > /sys/block/zram0/disksize
mkswap /dev/zram0

/etc/fstab

中添加以下内容后添加
/dev/zram0 none swap sw,pri=32767 0 0

重新启动后,我从``

启用了自由命令交换
# free
             total         used         free       shared      buffers
Mem:        251432       244668         6764            0        19592
-/+ buffers:             225076        26356
Swap:       262140            0       262140

我仍在执行内存密集型操作(大焦油提取) 永远不会使用swap我总是看到它的值0 :(

我错过了什么吗?

有任何建议/指示吗?

2 个答案:

答案 0 :(得分:1)

只有匿名/堆页面被换出。大的tar操作可能无法创建足够的堆分配来触发交换。这种工作量很容易填满很多不会交换的页面缓存页面。

答案 1 :(得分:0)

你错过了替代品 有关详细信息,您可以检查人 http://man7.org/linux/man-pages/man8/swapon.8.html