博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android的system.img,userdata.img,ramdisk.img分析
阅读量:4103 次
发布时间:2019-05-25

本文共 895 字,大约阅读时间需要 2 分钟。

1.用file命令查询文件类型

file ramdisk.img --> ramdisk.img: gzip compressed data, from Unix

file system.img --> system.img: VMS Alpha executable

file system.img --> userdata.img: VMS Alpha executable

结论:ramdisk.img用gzip打包和解压,file system.img和file system.img用unyaffs解压,用mkyaffs2image压缩而成.

2.mkyaffs2image可在out文件夹里查找到(注意是要在编译成功后的out里查找) find out -name mkyaffs2image

  unyaffs下载地址: =

将上述五个文件拷入同一文件夹,以便操作...

3.gunzip ramdisk.img.gz解压之后,我们发现它是一个小型的文件系统,包含一些对于启动android的很重要的文件,比如内核启动完后加载的第一个进程init、一些重要的配置文件等,总之它控制着整个android的启动。根据 init.rc,init.goldfish.rc来初始化并装载系统库、程序等直到开机完成。init.rc脚本包括了文件系统初始化、装载的许多过程。init.rc的工作主要是:

1)设置一些环境变量
2)创建system、sdcard、data、cache等目录
3)把一些文件系统mount到一些目录去,如,mount tmpfs tmpfs /sqlite_stmt_journals
4)设置一些文件的用户群组、权限
5)设置一些线程参数
6)设置TCP缓存大小

4.解压system.img

./unyaffs system.img

android的应用程序,所需要的库文件,各种资源,framework jar库等均包含在system.img中.

5.解压userdata.img

./unyaffs userdata.img

这里包含部分不太重要的应用程序

转载地址:http://idbsi.baihongyu.com/

你可能感兴趣的文章
Linux C++线程池实例
查看>>
shared_ptr简介以及常见问题
查看>>
c++11 你需要知道这些就够了
查看>>
c++11 你需要知道这些就够了
查看>>
shared_ptr的一些尴尬
查看>>
C++总结8——shared_ptr和weak_ptr智能指针
查看>>
c++写时拷贝1
查看>>
C++ 写时拷贝 2
查看>>
Linux网络编程---I/O复用模型之poll
查看>>
Java NIO详解
查看>>
单列模式-编写类ConfigManager读取属性文件
查看>>
java中float和double的区别
查看>>
Statement与PreparedStatement区别
查看>>
Tomcat配置数据源步骤以及使用JNDI
查看>>
before start of result set 是什么错误
查看>>
(正则表达式)表单验证
查看>>
在JS中 onclick="save();return false;"return false是
查看>>
JSTL 常用标签总结
查看>>
内容里面带标签,在HTML显示问题,JSTL
查看>>
VS编译器运行后闪退,处理方法
查看>>