android 手机内存SWAP经验

原创 2013年12月04日 11:03:47

在网上看了很多例子,执行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
# 


有关编译嵌入式android的swap空间不够导致的编译错误和解决办法

由于android包括了java的很大一部分组成,而嵌入式开发,编译往往需要ko
  • yellow_hill
  • yellow_hill
  • 2014年08月28日 12:01
  • 1046

安卓手机内置储存建立swap虚拟内存

讨论这个问题之前,不得不吐槽一下CSDN博客的文章编辑功能简直弱爆了!!就不能升级一下么。。        关于安卓手机的虚拟内存设置问题,现如今的新机内存过剩,已经完全不用考虑这个问题了,本文的主...
  • nfser_burn7
  • nfser_burn7
  • 2014年02月21日 20:39
  • 9015

[回顾] 如何在Nexus 5(Android 4.4.4)上开启交换分区swap

1. 编译内核(kernel) 开启swap需要内核支持,所以第一步需要得到支持swap特性的内核镜像文件。 a. 下载Android系统对应内核源代码; b. make menuconfig -> ...
  • zhuxiaok
  • zhuxiaok
  • 2015年10月12日 16:35
  • 1025

安卓手机内置储存建立swap虚拟内存

讨论这个问题之前,不得不吐槽一下CSDN博客的文章编辑功能简直弱爆了!!就不能升级一下么。。        关于安卓手机的虚拟内存设置问题,现如今的新机内存过剩,已经完全不用考虑这个问题了,本文的主...
  • nfser_burn7
  • nfser_burn7
  • 2014年02月21日 20:39
  • 9015

centos 手动增加swap分区

SWAP是Linux中的虚拟内存,用于扩充物理内存不足而用来存储临时数据存在的。它类似于Windows中的虚拟内存。在Windows中,只可以使用文件来当作虚拟内存。而linux可以文件或者分区来当作...
  • black_OX
  • black_OX
  • 2016年08月18日 13:35
  • 4563

Linux手动添加swap分区

为什么需要swap 根据Redhat公司的建议,Linux系统swap分区最适合的大小是物理内存的1-2倍.不过Linux上有些软件对swap分区得需求较大,例如要顺利执行Oracle数据库软件,s...
  • whatday
  • whatday
  • 2016年03月31日 11:15
  • 3725

linux的虚拟内存swap分区的使用和配置

Swap空间的作用可简单描述为:当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被...
  • hj7jay
  • hj7jay
  • 2016年07月04日 17:51
  • 2363

Ubuntu 修改交 swap 分区的大小

下面我们开始创建需要的交换文件(交换空间) 先创建一个交换文件存放的目录。我在根目录下创建名叫swap的目录 1.# mkdir /swap 2. 然后进入目录 # cd /swap 3. 创...
  • dearwind153
  • dearwind153
  • 2016年07月15日 11:24
  • 2690

在CentOS 7上添加Swap交换空间

提供:ZStack云计算 |如何让服务器响应更快?如何避免应用出现内存不足的错误?最简单的方法就是增加交换空间。Swap是存储盘上的一块自留地,操作系统可以在这里暂存一些内存里放不下的东西。这从某种...
  • zstack_org
  • zstack_org
  • 2016年11月21日 13:23
  • 3477

关于CentOS7下swap分区创建(添加),删除以及相关配置

小叨下背景:笔者的服务器内存只有1g,少得可怜。之前使用apache,不堪忍受其过量的内存消耗,网站卡得想哭,数据库也不断地崩,无奈投入nginx的怀抱并且已经喜欢上了nginx,具体请看上文Cent...
  • ausboyue
  • ausboyue
  • 2017年06月18日 17:37
  • 3353
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android 手机内存SWAP经验
举报原因:
原因补充:

(最多只允许输入30个字)