制作Android Root Ramdisk

制作Android的Root Ramdisk,供linux挂载并运行

1. Android Root Ramdisk介绍... 3

2. Android Root Ramdisk的开发环境... 3

3. 制作Android Root Ramdisk.. 4

4. 使用Android Root Ramdisk 前提... 4

5. 现存的问题... 4


1. Android Root Ramdisk介绍

Android Root Ramdisk 是整个Android开源项目编译后的最终输出文件夹,linux系统启动后将直接挂载该文件夹为系统根目录,并执行Android的init程序,启动整个Android应用。

Android Root Ramdisk制作正确与否将直接影响到Android应用是否正常运行。

2. Android Root Ramdisk的开发环境

SecureCRT使用该软件读取Target上的串口信息,监控系统,也可以使用window的超级终端或其他串口软件。

NFSTarget上的linux系统,使用NFS文件系统挂载Android Root Ramdisk作为Linux根目录,并启动Android应用。

Copy将Android Project下的源代码编译生成的root文件目录做部分修改后,拷贝到NFS Server的目录下。

Telnet,SSH2通过该协议的相关软件(SecureCRT,Puty等),登陆Linux Host操作Android Project,NFS Server。

3. 制作Android Root Ramdisk

l 获取一份Android Project代码

l 拷贝到linux host上,并解压

l 确认linux host安装了相关编译软件包

l 在Android Project根目录下直接make

l 大约2~3个小时后可以编译完成

l 拷贝出Android Project根目录下的/out/target/product/generic/root文件夹,作为Android Root Ramdisk

l 再拷贝Android Project根目录下的/out/target/product/generic/system目录到Android Root Ramdisk目录下,覆盖原有system目录(原目录通常是个空文件夹)

l 注释掉Android Root Ramdisk根目录下init.rc文件中某一个命令,如下:

mount rootfs rootfs / ro remount

变为

# mount rootfs rootfs / ro remount

至此Android Root Ramdisk制作完成。

4. 使用Android Root Ramdisk 前提

l Linux内核必须移植正常,能够顺利启动系统,如果在Linux系统启动Android的init程序之前便失败的话,要检查linux内核配置。目前制作出来的Android Root Ramdisk可以运行在内核2.6.25,以及2.6.27内核上。

l NFS Server必须设置好rw权限。

l 目前Android Root Ramdisk的制作方法适用于各种Android Project的版本(包括cupcake)。

5. 现存的问题

l 该制作方法出来的Android Root Ramdisk可以进入Android的待机界面,但按键,触摸屏的事件暂时还无法响应操作(但Android应用可以识别到按键消息)

更多相关文章

  1. Android系统体系结构概要
  2. Android安全机制
  3. Android(安卓)上层界面到内核代码的完整的流程分析,以alarm为例子
  4. Android是如何规避GPL传染性的
  5. Android(安卓)内核解剖 - AMS(Activity Manager Service)
  6. 在Ubuntu上下载编译安装Android最新内核源代码
  7. Android(安卓)开机启动流程分析
  8. Google Android操作系统内核编译图文教程
  9. Android系统定制之bootanimation.zip的制作

随机推荐

  1. Android版本与Linux内核的关系
  2. 让Activity变成一个窗口
  3. Android消息机制Message消息池
  4. Android学习资源
  5. Android(安卓)源码分析 —— 从 Toast 出
  6. Android自动打包、签名、优化、上传ANT脚
  7. traceview进行Android性能测试
  8. Android
  9. android ddms查看线程
  10. #Android(安卓)Day2