关闭

android 手机内存SWAP经验

标签: androidswap内存手机
4500人阅读 评论(0) 收藏 举报
分类:

在网上看了很多例子,执行CreatIMG.sh 然后将90userinit放在/system/etc/init.d 目录下重启手机后free 查看swap 是否为0,如果不为0表示swap成功否则不成功。不知道其他机友有没有成功,我是一直不成功,经过多次努力试验总算成功。下面谢谢具体的过程:

注意:以下操作都需要root权限。

CreatIMG.sh 和 90userinit都只是2个脚本而已,里面的内容可以修改

CreatIMG.sh 内容如下

mount -o remount,rw /cache;  //在cache目录下生成swap.img文件,具体位置可更改
swapoff /dev/block/loop7;
dd if=/dev/zero of=/cache/swap.img bs=1024 count=65536; //swap.img的大小为64M,具体大小可更改;但不宜过大
free;   

90userinit的内容如下

mount -o remount,rw /cache;
losetup /dev/block/loop7 /cache/swap.img; //挂载/cache/swap.img
mkswap /dev/block/loop7; //生成swap
swapon /dev/block/loop7; //打开swap
echo 100 > /proc/sys/vm/swappiness;

将CreatIMG.sh文件拷贝到/system 或 /data目录下,并赋予可执行权限, 可通过相关的文件管理器设置。然后在adb shell 中执行如下代码

# cd /system
# sh CreatIMG.sh
可能会停顿一段时间,执行完成后你会在你的cache目录下发现一个64M大小的swap.img文件

# cd /cache
# ls
dalvik-cache  download      lost+found    recovery      swap.img

下一步将90userinit拷贝到/system/etc/init.d/ 目录下并赋予可读和可执行权限。网上很多教程到这里都让用户重启手机后swap就成功了,但我重启多次swap仍然不成功。如果有机友遇到和我一样的情况,那么下面的步骤非常重要其实就是将90userinit里面的内容在adb shell中运行一次

当执行完上面的步骤看看swap是否成功,然后你再重启手机就没问题了。

# free
             total         used         free       shared      buffers
Mem:        195524       187496         8028            0         1816
-/+ buffers:             185680         9844
Swap:        65528        28644        36884
# 


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:140894次
    • 积分:1370
    • 等级:
    • 排名:千里之外
    • 原创:15篇
    • 转载:1篇
    • 译文:7篇
    • 评论:33条
    最新评论