因为看到很多机友对这个概念不理解。首先解释一下这些缩写,全部的意思就是Application To SD卡,就是说将应用安装在卡上。为什么要这么做呢,那是因为HD2原版手机本地存储只有512M(T版有1G的ROM空间),Android(MIUI)系统刷到手机内,主要有几个目录占用了手机本地存储:
1、/system;
2、/data、
3;cache;
4、 /boot等。

这几个目录基本使用了512M的空间,我们在执行daf刷recovery的时候,其实就是对512M进行这几个目录的分区,其中主要占用 512M空间的是/system和/data,而/system在使用过程中的增长不大,只要我们给足空间,让刷机的ROM中/system目录的文件总量能够拷贝到/system分区就没问题,目前MIUI的/system的目录文件总量大概是105.36M,为了可能需要打补丁,我给到了128M,可能110M也够,最早刷daf的recovery给/system有250M的空间,如果改为150或者128,就能够给其他的分区比如/data增加 100M多空间(以为默认会将所有剩余空间给到/data目录)。/data是作为主要的软件安装地点,这里除了安装的软件以及软件的缓存都在这个目录。那么这个目录最多也不过有不到300M空间(T版有800M的空间,不用太担心),那么像极品飞车这样的软件多安装几个,300M的空间很快就会被用光。那么为了让程序文件利用SD卡的空间,因此出现了app2sd、a2sd、data2sd、a2sd+的各种方案,其实这并不是MIUI的先例,在其他 Android手机上也是如此。那么我就要分别说一下这四种方案的特点和区别:
============================================================

(1)app2sd是google官方Android系统的一种官方方案,它类似WM将应用程序的部分主要执行文件放到SD卡上,这些文件是保存在 Fat32的SD卡上,这种方式不需要对SD卡做复杂分区,而是用Windows简单格式化SD卡为Fat32分区就好,缺点就是并不是所有程序都能移动到卡上,因为有些程序需要常驻内存,并且在一些情况下,为了省电,可能需要断开卡的供电,因此有可能导致程序运行出现问题。如果用91或者豌豆荚类似的软件强制安装在SD卡上,则会导致桌面插件不能正常运行。这也是我们不能接受的,所以这种方法基本玩家都不会采用。

(2)a2sd,其实在我搜索网络的信息看到有两种观点,一是a2sd就是app2sd,二是a2sd就是a2sd+,通过我的分析,a2sd其实就是简写的app2sd,所以大家就把app2sd和a2sd都认为是官方提供的利用SD卡存储程序文件的方案。这个和app2sd方案一样,基本不被玩家采用。

(3)data2sd,这种技术类似于以前在卡上运行Android,这种方案是在卡上建立一个data.img的文件,其实这个文件就是系统 /data分区的数据,这种方案和以前在卡上运行这个Android方式类似,只不过除了data.img文件,其他文件都在手机存储上。 data.img文件在Fat32分区的SD卡上,这种方式优势是data.img文件大小可以比较自由的控制,从512M到2G甚至更多都可以设置,而且不用对SD卡进行复杂分区。但是问题是因为data.img在SD卡Fat32分区上,以前比如冻屏等类似问题还是存在,并且不能避免当手机电量不足,进入省电模式的时候会切断SD卡供电,导致手机整体无**常运行。但是我看到很多朋友用data.img,主要是因为比较简单,如果你是初学者,并且对我上面的教程关于分区的部分实在是搞不定,也可以采用这种方式(论坛有介绍,搜索一下data2sd,方法很简单),但在我看来这并不是最佳的解决办法,即使它的优点很多,但是缺点也很显著。建议初级玩家使用,高级玩家不使用。

(4)a2sd+,从名字来看a2sd+只是比a2sd多了个+,但是技术是完全不一样的。它采用的是将SD卡进行Andoird(Linux)可是别的分区进行使用SD卡的。因为采用了这种分区,从硬件上看虽然这些分区在SD卡上,但是Android则认为这是本地存储硬件,大家可以通过超级终端在 /dev/block目录下看到mmcblk0p1、mmcblk0p2、mmcblk0p3的文件,其实这就是我们做的Fat32、Ext3、Swap 分区的硬件名称。我们则需要将/data目录使用Ext3分区,那么我们采用的是建立一个/sd-ext目录,让他加载(mount)mmcblk0p2(Ext3)这个分区,然后在/sd-ext下建立app、app-private、dalvik-cache三个目录,然后利用Link技术,就是让/data目录下的app、app-private、dalvik-cache的目录分别Link(Link技术是指将目录连接到另一个目录,在这两个Link与被Link目录里做任何操作就相当于在被Link的目录里操作)到/sd-ext目录下的那三个目录,其实这个过程就是命令a2sd reinstall和a2sd cachesd的时候做的。a2sd reinstall主要的执行内容是将/data/app和/data/app-private目录下的程序分别拷贝到/sd-ext/app和/sd- ext/app-private目录下,然后将目录Link过去,同样a2sd cachesd是将/data/dalvik-cache目录的文件拷贝到/sd-ext/dalvik-cache目录下,然后将目录Link过去。这样我们的程序安装在/data的这三个目录下,实际上使用的是/sd-ext目录所用的SD卡ext3分区的空间,因此大家发现安装程序之后关于手机界面的手机存储没有太多变化。那么app、app-private、dalvik-cache都是什么呢?app是我们的apk程序所安装的位置,如果你有加密的程序,则它会进入app-private的目录,而dalvik-cache则是程序的缓存,这三个目录占用个主要的程序安装所占的空间,那么大家依然会奇怪为什么手机存储依然会变小,只不过慢了一些。那是因为安装程序的时候/data/data这个目录也会有数据增加,但是不太多。但是a2sd+技术为什么不将/data/data目录也Link到/sd-ext目录下,我认为可能/data/data需要更好的稳定性和速度,如果将/data /data目录也Link到卡上,可能冻屏会出现,这纯属个人猜测。我曾经手动将/data/data转移到/sd-ext的/data(我自己建立的目录)下,系统会非常不稳定,而且有自动重启现象。但是即使我们有不到300M的手机存储(其实就是/data分区大小,可以用91或者豌豆荚的文件管理看到),但是主要的程序进入了app或者app-private目录下,缓存的数据进入到dalvik-cache目录下,/data/data不会占用太多空间,是可以接受的。这种方案的缺点是技术比较复杂,新手能够理解需要学习更多的知识(其实学会了会有成就感哦!)。但是这个顺应Android(Linux)技术,因为Ext3和Swap分区并不认为成SD卡,所以在电量不足的情况下,只是将 Fat32那个分区的逻辑卷卸载,而不会触及Ext3和Swap分区,并且这种方案是最稳定的。我个人建议大家使用此方法。

以上是app2sd、a2sd、data2sd、a2sd+的介绍,希望大家能够理解。

关于app2sd、a2sd、data2sd、a2sd+的区别的解释相关推荐

  1. 关于app2sd、a2sd、data2sd、a2sd+的区别的解释(扫盲贴)

    app2sd+就是在sd卡建立ext分区,然后再用app2sd+来实现应用完全安装在sd卡上,与app2sd是有本质区别的.有哪位弄过或知道的告诉下吧. ----------------------- ...

  2. html语言中的双冒号,::before 和:after 中双冒号和单冒号有什么区别?解释一下这 2 个伪元素的作用...

    标题:::before 和:after 中双冒号和单冒号有什么区别?解释一下这 2 个伪元素的作用? 相关知识点: 单冒号(:)用于CSS3伪类,双冒号(::)用于CSS3伪元素.(伪元素由双冒号和伪 ...

  3. 管道命令和xargs的区别(经典解释)

    原文地址:http://blog.csdn.net/yongan1006/article/details/8134581 一直弄不懂,管道不就是把前一个命令的结果作为参数给下一个命令吗,那在 | 后面 ...

  4. 全栈工程师对Python面试中is和==的区别做出解释!看完真的学到了

    面试实习生的时候,当问到 is 和 == 的区别时,很多同学都答不上来,搞不清两者什么时候返回一致,什么时候返回不一致.本文我们来看一下这两者的区别. 我们先来看几个例子: 上面的输出结果中为什么有的 ...

  5. fMRI与MRI区别+名词解释+MRI中T1和T2的含义与区分

    fMRI与MRI区别 磁共振成像(MRI)提供人体内部结构的图片,而功能性磁共振成像(fMRI)评估代谢过程.MRI可以在身体的任何地方使用,而fMRI的研究则集中在大脑上,在大脑中可以显示活动水平非 ...

  6. 数据结构考研:数据、数据元素、数据项、数据对象、数据结构的区别/详细解释(计算机/软件工程/王道论坛)

    一.问题背景 博主最近在准备2020年春招复习数据结构这门功课时,采用了王道论坛的<2020年数据结构考研复习指导>这本书,该书的第一章节便是数据结构的基本概念:数据.数据元素.数据项.数 ...

  7. 【spring】PO,VO,DAO,BO,POJO,Bean之间的区别与解释

    VO value object:值对象 通常用于业务层之间的数据传递,由new创建,由GC回收. PO persistant object:持久层对象 对应数据库中表的字段. VO和PO,都是属性加上 ...

  8. cpu核数和逻辑个数的区别_解释一下CPU的核心数与线程数的关系和区别

    我们在选购电脑的时候,CPU是一个需要考虑到核心因素,因为它决定了电脑的性能等级.CPU从早期的单核,发展到现在的双核,多核.CPU除了核心数之外,还有线程数之说,下面文本就来解释一下CPU的核心数与 ...

  9. 紧凑型车、中型车、SUV等车型区别及解释

    微型车也被称为A00级车,一般情况下,属于该级别的车其轴距在2.0米至2.3米之间,车身长度在4.0米之内,搭载的发动机排量在1.0升左右.由于微型车的体积较小.油耗较低.价格便宜,所以比较适合代步. ...

最新文章

  1. ARP命令详解--网络命令详解二
  2. 2020-10-29
  3. WebIDE discovery when destination is selected from dropdown list
  4. MySQL 事物隔离级别
  5. 【卡法电子商务】-常用手机屏幕尺寸 ★★★★★
  6. 发黄图再截图举报!这个社交软件运营合伙人被逮捕:“设局”恶意举报同行...
  7. 带集成保护的共模滤波器(CMF)行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
  8. 使用人脸客户端库快速实现对面部的分析---C#
  9. 读书-算法《程序设计导引及在线实践》-简单计算题3:校门外的树
  10. 计算机网络之TCP报文
  11. linux系统管理考试试题及答案,《Linux系统管理》期末综合试题答案1
  12. h2ouve工具使用_NF8480M5 – BIOS设置
  13. 谷歌浏览器误删怎么办
  14. Unity3D 游戏摄像机的环绕与拉近
  15. python查询12306余票_Python爬虫----12306火车票余票查询器
  16. Android:支付宝sdk支付回调错误码4000
  17. Ultra Light Support
  18. 判断网站统计中某个访客IP是否为百度蜘蛛的方法
  19. 西安索命拉土车!(又遇上一场车祸)
  20. 【个人笔记】SIPp学习-注册,呼叫与超时

热门文章

  1. D触发器的二分频电路
  2. Tutorial Master 2⭐九、Module:引导Module中的通用属性讲解
  3. 微信公众平台消息体加解密实现
  4. 领导驾驶舱是怎么做出来的?
  5. JavaSE进阶 第七章 常用类 (一) String
  6. 让我来发代数几何参考书
  7. 100元钱买100只鸡
  8. 北大计算机系研究生宿舍地址,北京大学研究生宿舍
  9. asterisk、pbx、sip等基本概念
  10. Kindle 2 和 iPad,不是零和游戏