msm8909+android5.1分区及烧录的镜像文件介绍【转】
本文转载自:
EMMC的分区及其保存的文件
|
Partition label |
filename |
说明 |
|
PrimaryGPT |
gpt_main0.bin |
|
|
modem |
NON-HLOS.bin |
|
|
sbl1 |
sbl1.mbn |
|
|
sbl1bak |
sbl1.mbn |
|
|
aboot |
emmc_appsboot.mbn |
|
|
abootbak |
emmc_appsboot.mbn |
|
|
rpm |
rpm.mbn |
|
|
rpmbak |
rpm.mbn |
|
|
tz |
tz.mbn |
|
|
tzbak |
tz.mbn |
|
|
Pad |
无 |
|
|
modemst1 |
无 |
Copy of Modem File System (Encrypted) |
|
Modemst2 |
无 |
Copy of Modem File System (Encrypted) |
|
misc |
Misc.img |
|
|
fsc |
无 |
|
|
ssd |
无 |
Partition for ssd diag module. stores the encrypted RSA keys |
|
splash |
splash.img |
|
|
DDR |
无 |
Partition for DDR |
|
fsg |
无 |
Golden copy or backup of Modem File System (Encrypted). Also used to pre-populate the file system. |
|
sec |
sec.dat |
Sec.dat contains fuse settings, mainly for secure boot and oem setting |
|
boot |
boot.img |
|
|
system |
system.img |
|
|
persist |
persist.img |
|
|
cache |
cache.img |
|
|
recovery |
recovery.img |
|
|
devinfo |
无 |
Device information including:iis_unlocked, is_tampered, is_verified, charger_screen_enabled |
|
keystore |
无 |
Partition for keystore service |
|
oem |
无 |
It is meant for storing OEM specific info,我们可用来保存自定义信息 |
|
config |
无 |
Partition needed during display panel initialization. More info at Display_panel_configuration_in_Device_Tree |
|
userdata |
userdata.img |
|
|
用户可用空间 |
用户可用空间 |
|
|
BackupGPT |
gpt_backup0.bin |
下面依次介绍这些文件
Gpt_main0.bin
主GPT头和分区表
NON-HLOS.bin
modem image,是负责处理通讯协议相关的基带镜像
sbl1.mbn:
second bootloader1的缩写,是是在little kernel(lk)前启动,起到引导lk的作用,如果将该分区擦除,则设备表现为进入紧急下载模式,即,擦除该分区后,插入USB显示QDload端口。
emmc_appsboot.mbn:
(L)ittle (K)ernel bootloader镜像 在\device\qcom\common\generate_extra_images.mk指定如何编译,对应bootable文件夹
rpm.mbn:资源电源管理器,是高通MSM平台另外加的一块芯片,虽然与AP芯片打包在一起,但其是一个独立的ARM Core。之所以加这个东西,就是要控制整个电源相关的sharedresources,比如ldo,clock。负责与SMP,MPM交互进入睡眠或者唤醒整个系统。
tz.mbn:
是ARM TrustZone® 技术是系统范围的安全方法,基于安全需求和引导模式配置XPU,NAND MPU
Misc.img
Miscellaneous的简称,cpu加电之后,启动bootloader,(即是RK29xxLoader(L)_V2.08.bin),就会读取MISC分区获得来自Main system和Recovery的消息,并以此决定做何种操作。
\bootable\bootloader\lk\app\aboot\recovery.c的get_ffbm()读取misc.img,根据和核心板厂家的确认此文件他们用于生产,我们没用到,怪不得用Notepad++打开,全是NUL,如果不需要misc.img,rawprogram0.xml文件需要去掉misc相关的。
另一位朋友他们的Misc.img内容为ffbm-02NUL。
splash.img
存放开机的第一帧画面,splash.img的生成,参考:http://www.voidcn.com/blog/LoongEmbedded/article/p-6147215.html
Sec.dat
Sec.dat contains fuse settings, mainly forsecure boot and oem setting,是secboot(安全模式)用到的文件,目前我们虽然rawprogram0.xml用到sec.dat,但实际没有用到。
boot.img:由文件头(2k/4k)+kernel+ramdisk.img(根文件统)+dt.img(devicetree)组成,其中kernel对应于out\target\product\msm8909\obj\KERNEL_OBJ\arch\arm\boot下的zImage文件,和out\target\product\msm8909\kernel是同一个文件,只是被重新命名了,通过file zImage,可知zImage:Linux kernel ARM bootexecutable zImage(little-endian)
zimage由vmlinux加上解压代码经gzip压缩而成
ramdisk.img对应out\target\product\msm8909\root
system.img:
android系统镜像文件,对应out\target\product\msm8909\system文件夹。
Persist.img
Partition entry for persist image. whichcontains data which shouldn’t be changed after the device shipped, for example:calibration data of chips(WIFI, bt, camera, etc.),
certificates and other securityrelated files.
cache.img:对应cache分区
cache分区是安卓系统缓存区,保存系统最常访问的数据和应用程序。擦除这个分区,不会影响个人数据,只是删除了这个分区中已经保存的缓存内容,缓存内容会在后续手机使用过程中重新自动生成。
对应out\target\product\msm8909\cache文件夹,此文件夹没有内容,查看设备cache有backup和lost+found,backup虽然还有子文件夹目录,但都是空的。
recovery.img
This is specially designed for backup. Therecovery partition can be considered as an alternative boot partition
恢复模式的映像文件,由件头(2k/4k)+kernel+ramdisk_recovery.img(根文件统)+dt.img(device tree)组成,其中ramdisk_recovery.img对应out\target\product\msm8909\recovery\root
userdata.img
挂载到 /data 下的镜像,它包含了应用及用户相关的数据。对应out\target\product\msm8909\data目录。
Gpt_backup0.bin:备份的GPT头和分区表
相关知识:http://blog.csdn.net/loongembedded/article/details/51763187
除了上面的文件,在烧录时还需要下面一些文件
patch0.xml:和分区表有关,主要是关于GPTT分区表头和分区表项内容相关
可参考http://www.voidcn.com/blog/LoongEmbedded/article/p-6072230.html了解相关知识。
rawprogram0.xml
关于如何把镜像文件烧录到EMMC中,rawprogram0.xml是根据partition.xml生成,也就是分区表,高通会给论证的emmc根据经验值提供一个partition.xml 至于生成unspare格式,是方便QPST下载,但每次编译的时候都会根据镜像大小修订,在out\target\product\msm8909目录下生成新rawprogram.xml
相关链接:http://www.voidcn.com/blog/LoongEmbedded/article/p-6152203.html
prog_emmc_firehose_8909_ddr.mbn
QFIL软件烧录系统的时候,需要用到此文件,应该是关于EMMC、DDR的配置参数相关的
QCN为高通系统配置项文件,保存在efs分区中,被modem文件读取用的。
参考:
手机模式及分区
http://www.voidcn.com/blog/LoongEmbedded/article/p-6147214.html
高通智能机分区表详细解析
http://blog.sina.com.cn/s/blog_4597830b0102x3pt.html
msm8909+android5.1分区及烧录的镜像文件介绍【转】的更多相关文章
- [转]如何烧录tizen镜像文件?(图文教程)
http://blog.csdn.net/flydream0/article/details/9179143 上一篇文章我已讲过如何制作镜像文件(http://blog.csdn.net/flydre ...
- IAR产生可烧录的镜像文件
Technorati 标签: IAR 烧录镜像 在IAR中,产生能够使用烧录器烧写的hex文件的方法: 1. 只生成可烧写的hex文件: 1.1 在Project Option中的Link ...
- 在Mac中使用「dd」指令烧录ISO镜像文件到U盘
作者:超級efly 發布:2014-07-26 20:22 分類:電腦 閱讀:442 11條評論 大家在Windows系統下可以方便的使用UltraISO程式來燒錄「.ISO」, ...
- WINCE6.0+IMX515通过cfimager.exe烧录镜像文件
WINCE6.0+IMX515通过cfimager.exe烧录镜像文件 freescale提供了cfimager.exe工具,可在SD/MMC卡中烧录系统镜像文件和创建FAT文件,这样,我们可以不需要 ...
- Android系统的镜像文件的打包过程
在前面一篇文章中,我们分析了Android模块的编译过程.当Android系统的所有模块都编译好之后,我们就可以对编译出来的模块文件进行打包了.打包结果是获得一系列的镜像文件,例如system.img ...
- 攻城狮在路上(叁)Linux(二十四)--- linux设置开机挂载及镜像文件挂载
虽然可以手动进行文件系统的挂载,但是每次都手动挂载就会很麻烦,开机挂载的目的就是实现文件系统的自动挂载. 一.开机挂载:/etc/fstab及/etc/mtab 主要是通过修改/etc/fstab文件 ...
- Linux基础: 挂载镜像文件(Mount & ISO)
ISO/Ghost 镜像文件概念(裸机安装,无光驱安装,跨平台安装) ISO是镜像文件:所谓镜像文件其实和ZIP压缩包类似,它将特定的一系列文件按照一定的格式制作成单一的文件,以方便用户下载和使用,例 ...
- [转]如何制作tizen镜像文件(图文教程)?
http://blog.csdn.net/flydream0/article/details/9163119 之前已讲解了如何下载及编译tizen源码(http://blog.csdn.net/fly ...
- linux下挂载iso镜像文件(转)
挂接命令(mount) 首先,介绍一下挂接(mount)命令的使用方法,mount命令参数非常多,这里主要讲一下今天我们要用到的. 命令格式: mount [-t vfstype] [-o optio ...
随机推荐
- FormatFloat
http://www.delphibasics.co.uk/RTL.asp?Name=FormatFloat 1 function FormatFloat ( const Formatting : ...
- php SSL certificate problem: unable to get local issuer certificate
加上 curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,FALSE); 就可以了 百度语音的demo: <?php header("Content-type ...
- php里面用魔术方法和匿名函数闭包函数动态的给类里面添加方法
1.认识 __set (在给不可访问属性赋值时,__set() 会被调用) 也就是说你再访问一个类里面没有的属性,会出发这个方法 class A{ private $aa = '11'; publ ...
- SVN 创建仓库操作
服务端安装完成后 1.创建一个存放仓库的文件夹(这里在home目录创建) #mkdir svnRepo #cd svnRepo/ 创建一个仓库 (写全路径) # svnadmin create /ro ...
- mapreduce 查找共同好友
A:B,C,D,F,E,O B:A,C,E,K C:F,A,D,I D:A,E,F,L E:B,C,D,M,L F:A,B,C,D,E,O,M G:A,C,D,E,F H:A,C,D,E,O I:A, ...
- CSU 1663: Tree(树链剖分)
1663: Tree Time Limit: 5 Sec Memory Limit: 128 MB Submit: 26 Solved: 11 [Submit][id=1663"> ...
- Openstack(Kilo)安装系列之环境准备(一)
本文采用VMware虚拟环境,使用CentOS 7.1作为openstack的基础环境. 一.基础平台 1.一台装有VMware的windows系统(可联网) 2.CentOS 7.1 64bit镜像 ...
- 嵌入式数据库H2的安装与配置
一.配置JAVA环境 1.首先检查系统是否自带JDK 使用命令:#java -version 没有信息即为没有安装,如有且版本较低,可采用如下方式卸载: 查看命令: rpm -qa | grep ja ...
- jqury 如何获取 kindeditor 中textarea 的值
获取文本内容,可是的创建时怎么也不能获取,利用FF的firebug查看到自己所写的内容在一个iframe中,于是想从iframe中获取文本,想要用 $(“ifame”).html();获取内容,可是依 ...
- 安装android Studio和运行react native项目(基础篇)
ANDROID_HOME环境变量 确保ANDROID_HOME环境变量正确地指向了你安装的Android SDK的路径. 打开控制面板 -> 系统和安全 -> 系统 -> 高级系统设 ...