图解教程:Android系统SD卡分区

新入手Android系统的朋友可能都会遇到给SD卡分区的难题,为什么要分区?分区有哪些?分区的方法是什么?这些问题,其实非常简单。

1、分区的目的和SD卡的三个主要分区

SD卡分区的主要目的是为了将应用程序安装到SD卡,以解决因机器自身的内存不足造成的不便,而且能更好地提升系统的稳定性和运行速度。也就是通常所说的APP2SD。

APP2SD的工作原理:

以4G的SD卡为例,我们可以将4G的卡分成3个分区,FAP32分区作为你正常存储音乐、图片的普通存储分区;Swap分区是系统缓存,越大对系统运行速度的提升越大,但一般不会超过96MB(因为Swap分区对SD卡的寿命有影响);还有一个Ext4分区,这个分区的作用就是将你安装的软件安装到SD卡上,不占用手机内存,更好地提升系统稳定性和运行速度。

以Magic为例,目前的民间自制ROM基本都要求SD卡有三个分区才能保证刷ROM成功并工作正常。

这三个分区是:

(1)Fat32主分区:普通的SD卡空间,用于文件存储等;
(2)Ext4主分区:用于APP2SD,即将应用程序安装到SD卡而非手机内存,ROM自动完成;
(3)Swap主分区:用于解决系统内存不足的问题,系统自动调用此分区。

2、有关Linux-Swap分区、SD卡分区与SD卡损耗的一些信息

01.jpg

micro-SD的储存单元分为两类:SLC(Single Layer Cell,单层单元)和MLC(Multi-Level Cell,多层单元)。SLC闪存的优点是复写次数高达100000次,比MLC闪存高10倍。此外,为了保证MLC的寿命,控制芯片都校验和智能磨损平衡技术算法,使得每个存储单元的写入次数可以平均分摊,达到100万小时故障间隔时间(MTBF)。目前的TF卡无写入次数平均分摊管理,导致写入次数为理论上的1万次。那么建立SWAP分区意味着系统会对这一组单元集中作频繁写入操作,是否会导致TF卡的迅速损坏呢?

我们可以通过修改系统中的/dev/sys/vm/swappiness的值来告诉系统你想交换得多勤快。在Linux里面,swappiness的值的大小对如何使用Swap分区是有着直接联系的。swappiness=0的时候表示最大限度使用物理内存,然后才是Swap空间;swappiness=100的时候表示积极的使用Swap分区,并且把内存上的数据及时的搬运到Swap空间里面。两个极端,对于Ubuntu的默认设置,这个值等于60。所以我们可修改swappiness来控制系统对Swap分区的写入频率。

Linux的Swap分区的作用可简单描述为:当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap中恢复保存的数据到内存中。这样,系统总是在物理内存不够时,才进行Swap交换。
关键词就是虚拟内存。

3、SD卡分区的次序与分区大小

SD卡的三个分区依次为:FAT32主分区、Ext4主分区、Swap主分区。

举例的分区大小:Linux-Swap:96M;Ext4:500M;FAT32:剩下所有SD卡空间。一定要注意,先分区FAT32,再分区Ext4,最后分区Swap。问题由此出现:怎样最先确定FAT32分区的大小?很简单,从系统里看看你SD卡空间,减去500MB的Ext4空间,再减去96MB的Linux-Swap空间就好。例如8G卡实际容量若为7.59GB,那么FAT32分区大小为7590-500-96=6994MB分区大小即可。

还有一个细节,使用分区软件进行分区操作的时候,分区大小可能不会正好是上述数值,多多少少,或者出现小数都是没关系的。

4、分区的方法

上面说了那么多的SD卡的相关知识,可能不少机油都不耐烦了,那么下面我们就说说具体的SD卡分区操作。要分区那就需要先进入Recovery(恢复模式,刷机模式),Magic的操作如下:

首先关闭手机,再同时按住HOME键和电源键。这里插一句,进入Recovery之前最好先把USB线连接电脑,为什么要连接在后面会做说明。下面是进入Recovery后的截图:

02.jpg

下面我们通过操作轨迹球选择Partition sdcard这个选项,按下轨迹球确认:

03.jpg

然后进入下面的画面:

04.jpg

选择第一个Partition SD:

05.jpg

接着会出现提示,问你是否要划分TF卡:

06.jpg

按HOME键(也就是小房子键)继续:

07.jpg

这个时候应该出现的是Swap=32MB,按HOME键确定。如果你需要升到Ext4的话,可以通过音量键来调整大小,调整到需要的大小,如果不调整的话可能升到Ext4的时候,重启会在通知栏出现-53,-70等数字,这个都是因为没有调整造成的。好了,调整好这个,会出现这个界面:

08.jpg

提示问你划分多大的空间作为第二分区,推荐不要超过800M,选好后按HOME键确定,也可以按音量键进行大小的调节。确定后出现下面的界面:

09.jpg

现在你可以按HOME键继续,这个过程中你如果想再调整Swap,可以按除去HOME键以外的键来进行退出操作,然后再按HOME键回到图06的界面再进行修改。按下HOME键确定后,会开始格式化TF卡,格式化完成后会返回到图04。

如果需要把Ext2升级到Ext4的话,在Partition sdcard里面,先选择SD:EXT2 to Ext3,按HOME键,等界面回到图07后再选择SD:Ext3 to Ext4。如果不想要升到Ext4,直接全部按HOME键就可以了。

返回Recovery主菜单,选择WIPE:

10.jpg

再选择第一项,然后同之前一样,一路按HOME键到底(WIPE操作可以不做,不过有可能会发生一些问题,导致无法启动)。

完成上面的操作后,按返回键回到Recovery界面。点击USB-MS toggle,TF卡就会被电脑识别成可移动磁盘。这里要注意2点:

(1)手机在点击了USB-MS toggle后,暂时不要进行任何操作,等待电脑读取到SD卡。
(2)刚开始USB连接电脑是没有读取到SD卡的,但是选择了这个选项后,电脑会读取到SD卡,在读取过程中需要等待30秒左右,这个过程中可以刷新一下“我的电脑”,一定要等到电脑读取到SD卡后,再进行下一步操作。

这也是为什么开始的时候建议把USB连接到电脑,另外这样也可以避免因电池电量不足造成分区失败。

电脑识别到SD卡后,将下载好的ROM(比如axing_3.121.zip)复制进去,复制完后按HOME键返回主菜单。选择Flash zip from sdcard:

11.jpg

找到刚才复制的ROM的名字(比如axing_3.121.zip),按下轨迹球确认,之后再按HOME键开始刷新。等界面回到Recovery界面后,选择Reboot system now:

12.jpg

重启手机,进入系统。等开机后,安装软件试试,是不是可以选择装在SD卡啦?连接电脑后你会发现自己的SD卡少了500MB左右的内存,那么恭喜你,你分区成功了哦!

友情提醒:分区后SD卡的东西会消失,注意备份。这里建议把UC浏览器、QQ等一些常用的软件安装在内置储存,不然你的SD卡取出后再装上去需要读取时间,会造成一些不便。

好的,这个SD卡分区教程就说到这,对于新入手安卓机的机油建议多看教程,熟悉系统,希望这个教程可以帮助到大家。

本文固定链接: http://blog.cztree.com/index.php/archives/138 | 成长树CzTree's Blog

该日志由 cztree 于2011年04月20日发表在 站长分享 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: 图解教程:Android系统SD卡分区 | 成长树CzTree's Blog
关键字: , ,

图解教程:Android系统SD卡分区:等您坐沙发呢!

发表评论

您必须 [ 登录 ] 才能发表留言!