红联Linux门户
Linux帮助

磁盘swap与zram swap

发布时间:2016-02-02 11:42:40来源:linux网站作者:smallmao

磁盘 swap:是把磁盘的一部分作为内存, 对应用来说完全是透明的,相当与增大了内存, 但是缺点很明显, 当用到swap的时候,速度会变的很慢。

zram: 是把物理内存的一部分划分出来,把不是常用的内存数据压缩后放到zram里, 用到的时候把数据解压出来, 相当于牺牲了一些cpu效率,变相增大了内存。

如果设备支持zram,肯定是优先使用zram, 不过有的设备内核比较旧,只有使用磁盘 swap了。


查看设备是否zram的方法:

adb到设备中shell中, cd /dev/block/ 下, 看是否有zram0 或zram1

如果没有该文件,也不一定是设备不支持zram, 也有可能是内核中没有把zram选项勾中,可以到内核源码中搜索 zram


下面是曾经写的一个脚本:使用磁盘swap
#!/system/bin/sh 
#SWAP_FILE="/data/swap1" 
if [ ! -f "/data/swap1" ]; then 
dd if=/dev/zero of=/data/swap1 bs=390250 count=256 
fi 
busybox mkswap /data/swap1  
busybox swapon -p 0 /data/swap1  
echo 0 >/proc/sys/vm/swappiness 
cat /proc/sys/vm/swappiness  
busybox free -m 

/proc/sys/vm/swappiness 里的值代表使用swap的优先级, 0 就是不用, 100代表最大程度的使用


更新:
如果你想知道当前swap用的是哪个路径的swap文件,

cat /proc/swap就可以知道。


本文永久更新地址:http://www.linuxdiyf.com/linux/17828.html