欢迎来到天天文库
浏览记录
ID:14850856
大小:38.00 KB
页数:6页
时间:2018-07-30
《转载ramdisk.img system.img userdata.img介绍及解包、打包方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、ramdisk.imgsystem.imguserdata.img介绍及解包、打包方法 2011-11-2511:37:24分类:ramdisk.imgsystem.imguserdata.img介绍及解包、打包方法 Android源码编译后,在out/target/product/generic下生成的三个镜像文件:ramdisk.img,system.img,userdata.img以及它们对应的目录树root,system,data。ramdisk.img是根文件系统,system.img包括了主要的包、库等文件,userdata.img包括了一些用户数据,androi
2、d加载这3个映像文件后,会把system和userdata分别加载到ramdisk文件系统中的system和data目录下。 三个镜像文件及其三个目录树之间的生成关系是我们进行ROM制作的基础,下面将做详细介绍。Ramdisk镜像是采用cpio打包,gzip压缩的。用file验证: #fileramdisk.img 输出:#ramdisk.img:gzipcompresseddata,fromUnix 为了便于说明问题,我们将ramdisk.img拷贝到其它一个目录,然后按以下步骤将ramdisk.img还原为目录树: #mvramdisk.imgramdisk.im
3、g.gz #gunzipramdisk.img.gz #mkdirramdisk #cdramdisk #mkdirtemp #cdtemp #cpio–i–F../ramdisk.img 这样,就得到一个完整的ramdisk目录,与out/target/product/generic/root对比后,我们发现它们是一样的内容。 通过执行以下的操作,我们可由目录树再生成ramdisk镜像 #cdtemp #find.
4、cpio-o-Hnewc
5、gzip>../ramdisk-new.img这两个镜像都属于yaffs2文件
6、格式,生成方式是一样的。我们就以system.img为例来说明。 System.img>>system目录树所需工具unyaffs,下载地址http://code.google.com/p/unyaffs/downloads/list #mkdirsystem #cdsystem #unyaffs../system.img system目录树>>system.img 所需工具mkyaffs2image,Android源码编译后会生成该工具,在out/host/linux-x86/bin目录下。 命令格式: #mkyaffs2imagesystem/system_
7、new.img 了解以上方法的意义在于,我们可以对镜像文件镜像修改,定制,以符合自己的需求。网上有很多制作AndroidROM的教程,这里罗列一些链接: 北理工的陈罡写的两篇文章,是我目前发现的最好的教程,写的非常详细http://blog.chinaunix.net/u/26691/showart_2193396.htmlhttp://blog.chinaunix.net/u/26691/showart_2194274.html这两篇文章参考了国外论坛的几个经典教程:http://forum.xda-developers.com/showthread.php?t=5662
8、35http://android-dls.com/wiki/inde...Re-Pack_Boot_Images国内还有一篇文章写的也不错,这篇文章更侧重于制作类似Patch的ROM包http://www.cnmsdn.com/html/201002/1267213800ID1030.html这里基于自己的理解和测试,总结了一些方法步骤。 Android的ROM包通常称为update.zip包,你可以到www.hiapk.com上下载现成的.zip包。要学习ROM包的制作,我们可以从这样一个zip包开始。解开zip包后,通常有这样一些内容:1、boot.img文件这是编译内核源
9、代码生成的内核映像,然后与android源码编译出来的ramdisk.img一起通过mkbootimg工具创建出来的,图省事的朋友也可以从网上其他的刷机包里面拷贝一个能用的出来即可,基本上都差不多。2、 META-INF目录这个目录是手工创建的,主要用来存放一个升级脚本update-script(这个脚本的内容与system目录中包含的文件有很大关联)以及签名。3、system目录这个目录就是编译android的平台源代码生成的 要创建自己的ROM,我们通常会涉及到以下的一些工作: 1.
此文档下载收益归作者所有