《小米手机与泛泰A820L的分区结构对比分析-外加eMMC介绍》

-----------纯手打,部分参考网络资料。尚未完全写成,请暂勿转载

Android其实是一个Linux系统,Android手机的需要类似电脑主板的bios硬件引导程序才能正确加载系统。
这个类似bios的引导程序就是bootloader,他是加载内核之前运行的一段小程序。
通过bootloader,手机可以初始化它的硬件设备、建立内存空间映射图,从而将手机系统的软硬件环境带到一个正常使用状态,以便为最终调用操作系统做准备。
bootloader和内核、系统等存储在手机的微硬盘,即eMMC上,俗称的ROM(此ROM不是指刷机包,而是内部存储,如A820L的16G ROM)。
电脑主板上的bios被破坏了,需要重新在主板上ROM里烧写bios。
而如果手机上的bootloader损坏了,就需用JATG要进行所谓的“写字库”了。(现今的智能手机的“写字库”已不是当初的含义了)
JTAG修复需要将手机外壳打开,焊接4~8根线到手机的主板上面将正确的引导文件写入手机。
但如果eMMC发生了硬件级别的损坏,那就要进行“换字库”了,即更换eMMC芯片。
eMMC与CPU连接紧密,一般换eMMC需要连同CPU一起换掉,这时也就是换主板了。
所以,珍惜你的eMMC吧。

科普:
eMMC,全称为embeded MultiMedia Card。
它并非是一种全新尺寸的存储卡,而是MMC协会所订制的内嵌式存储器标准规格,主要针对手机和移动嵌入式产品。
eMMC是一种嵌入式非易失性存储器系统,由闪存和闪存控制器两部组成,采用JEDEC标准BGA封装,并采用统一闪存接口管理闪存。
简单来说就是,eMMC除了常规意义的存储器之外,还集成了一个控制器,并且提供了一个统一的标准接口。
手机客户只需要采购eMMC芯片,不需要处理其它繁琐的NAND Flash兼容性和管理问题
相对于以前的NAND FLASH,手机生产厂商可节省更多产品设计的时间和精力,而不必关心NAND Flash 芯片的制程技术演变和产品更新换代等带来的改动。
因而,eMMC可以加速产品上市的时间,也能保证产品的稳定性和一致性。

小米手机的分区结构随版本不同可能有所不同,如MIUI v4相对2.3将系统分区调整得更大了。。。
这里是从适用于小米电信版的MIUI-2.3.5y Rom里分析出的分区结构,不一定准确,仅供参考
-------------------------------------------------------
小米MiOne-C1
-------------------------------------
mmcblk0p1,modem,100M,NON-HLOS.BIN
mmcblk0p2,sbl1,500K,sbl1.mbn
mmcblk0p3,sbl2,1500K,sbl2.mbn
以上为primary主分区,modem为基带,
其余两个推测是启动引导
(猜缩写是system boot loader的意思)
-------------------------------------
mmcblk0p4,EXT分区标记,1K
mmcblk0p5,rpm,500K,rpm.mbn
mmcblk0p6,sbl3,2M,sbl3.mbn
mmcblk0p7,aboot,2500K,emmc_appsboot.mbn
mmcblk0p8,boot,10M,boot.img
mmcblk0p9,boot1,10M
mmcblk0p10,tz,500K,tz.mbn
mmcblk0p11,misc,500k,misc.img
mmcblk0p12,modem_st1,3M
mmcblk0p13,modem_st2,3M
mmcblk0p14,fsg,3M
mmcblk0p15,system,150M,system.img.ext4
mmcblk0p16,system1,150M
mmcblk0p17,persist,8M,persist.img.ext4
mmcblk0p18,cache,120M,cache.img.ext4
mmcblk0p19,recovery,10M,recovery.img
mmcblk0p20,userdata,10M,userdata.img.ext4
以上为extended扩展分区,即逻辑分区
小米有两个boot和两个system分区,即可以装双系统。
奇怪的是,没看到内部sd存储的分区。
我手里没有电信小米的手机,无法深入研究,请见谅。
========================================================
泛泰A820L
mmcblk0p1,32M,firmware,firmware.img
mmcblk0p2,500K,sbl1,sbl1.mbn
mmcblk0p3,1500K,sbl2,sbl2.mbn
以上为主分区,类似小米
----------------------------------------
mmcblk0p4,1K,EXT分区标记
mmcblk0p5,500K,rpm,rpm.mbn
mmcblk0p6,2M,sbl3,sbl3.mbn
mmcblk0p7,2500K,lk,未知
mmcblk0p8,10M,boot,boot.img
mmcblk0p9,500K,tz,tz.mbn
mmcblk0p10,4M,info,未知
mmcblk0p11,3M
mmcblk0p12.3M
mmcblk0p13,600M,system,system.img
mmcblk0p14,1024M=1G,data,data.img
mmcblk0p15,8M,persist,persist.img
mmcblk0p16,100M,cache,cache.img
mmcblk0p17,256M,tombstones,墓碑,记录程序FC信息用,便于调试和Dbug
mmcblk0p18,10M,recovery,recovery.img
mmcblk0p19,50M,mdm,/system/etc/firmware/misc_mdm,modem.img
mmcblk0p20,3M
mmcblk0p21,3M
mmcblk0p22,3M
mmcblk0p23,3M
mmcblk0p24,8K
mmcblk0p25,20M
mmcblk0p26,12.45G,/mnt/sdcard
以上为扩展分区
--------------------------------------------------------------------
可以看出,A820L和小米电信版的差别还是有蛮大的。
值得特别关注的是A820L的mdm分区,即modem分区。
小米的基带文件全在modem分区mmcblk0p1里。
而A820L以及LG的lu6200等支持LTE网络的机器除了fireware分区mmcblk0p1以外,
还有一个mdm分区mmcblk0p19。
对比如下:
手机      小米                         A820L/lu6200
分区块    mmcblk0p1             mmcblk0p1        mmcblk0p19
分区名    modem                 firmware         mdm(modem)
对应文件  NON-HLOS.bin          firmware.img     modem.img

NON-HLOS.bin内image文件夹下的文件有:
modem.b00、modem.b01、modem.b02、modem.b03、modem.b04
modem.b05、modem.b06、modem.b07、modem.b08、modem.b09
modem.mdt
q6.b00、q6.b01、q6.b02、q6.b03、q6.b04、q6.b05、q6.b06
q6.b07、q6.mdt

firmware.img内的image文件夹下有:
modem.b00、modem.b01、modem.b02、modem.b03、modem.b04
modem.b05、modem.b06、modem.b07、modem.b08、modem.b09
modem.b10、modem.mdt
playrdy.b00、playrdy.b01、playrdy.b02、playrdy.mdt
q6.b00、q6.b01、q6.b02、q6.b03、q6.b04、q6.b05、q6.b06
q6.b07、q6.mdt

小米手机没有modem.img


   未完,待续。。。

你可能感兴趣的:(A820L,msm8660,mdm9600,基带,小米,分区,eMMC)