backing swap的使用方法

ramzswap还有另一种使用方法,就是将部分内存作为ramzswap disk使用,再将交换文件或交换块设备作为backing swap使用。

ramswap为内存和磁盘的两层。如果内存稍有不足,则仅使用内存的ramzswap disk进行处理,但如果缺少更多内存,则页面的内容存放到backing swap中。

下面介绍backing swap的使用方法。

首先与ramzswap disk同样进行设置。


modprobe lzo_compress

modprobe lzo_decompress

insmod./ramzswap.ko num_devices=4


然后使用rzscontrol命令指定backing swap。


sub-projects/rzscontrol/rzscontrol/dev/ramzswap0—init—backing_swap=/dev/sda2—memlimit_kb=10240


使用—backing_swap选项指定交换文件或交换块设备。这里指定的是块设备/dev/sda2。—memlimit_kb选项指定的是作为ramzswap disk使用的内存大小。使用内存的方式基本与ramzswap disk相同。没有指定时设置为所有内存大小的15%。这里设置为10240KB。

最后启用已生成设备的交换功能。


swapon/dev/ramzswap0


内存使用量一旦增加,首先压缩的页面会写入ramzswap disk的区域中。这时未压缩到50%以下的页面则写入backing swap中,而非ramzswap disk中。另外,超过—memlimit_kb选项指定的内存大小时也会写入backing swap中。

表2-11所示为执行rzscontrol—stats的结果。说明中仅记载与ramzswap disk的不同之处。

backing swap的使用方法 - 图1

backing swap的使用方法 - 图2