`
isiqi
  • 浏览: 16545403 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

制作Android Root Ramdisk

阅读更多

制作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的开发环境

clip_image001

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应用可以识别到按键消息)

分享到:
评论

相关推荐

    创建 Android 文件系统

    创建Android文件系统主要包括构建root文件系统、system分区、userdata分区以及ramdisk。以下将详细介绍这两种创建方法。 **第一种方法:通过构建Android源码** 1. **获取源码**:首先,你需要下载并设置Android...

    android 文件系统制作

    ### Android 文件系统制作详解 #### 一、总概 本文主要介绍了如何在Android环境中构建一个基本的文件系统,包括从安装开发环境到最终文件系统的构建全过程。为了方便读者理解整个流程,下面将按照文章的脉络进行...

    android的logo修改

    - 编译Android源码以生成`ramdisk.img`文件,例如在`out/target/product/xxx/`目录下生成。 - 以OK6410为例,编译完成后会在`out/target/product/OK6410/`目录下找到`ramdisk.img`。 2. **准备临时目录与复制文件...

    android_bootimg_tools.tar.gz

    在Android开发中,Boot Image的修改通常是为了解锁设备、安装自定义恢复映像、实现root权限,或者为特定设备定制系统。`mkbootimg` 和 `unpackbootimg` 这两个工具是这个过程中的核心工具,它们使开发者能够直接对...

    如何解包/编辑/打包android系统的boot.img文件

    boot 和 recovery 映像并不是一个完整的文件系统,它们是一种 Android 自定义的文件格式,该格式包括了 2K 的文件头,后面紧跟着是用 gzip 压缩过的内核,再后面是一个 ramdisk 内存盘,然后紧跟着第二阶段的载入器...

    android启动logo

    - 在`device/telechips/m805_892x/device.mk`文件中添加以下行以指定复制RLE文件到RAMDISK:`PRODUCT_COPY_FILES += device/telechips/common/initlogo.rle:root/initlogo.rle`。 5. **替换文件并重新编译**: - ...

    android4.0开机动画

    开机动画的制作和替换涉及到Android系统的底层框架,尤其是与引导加载器(Bootloader)、系统启动服务(System Server)以及图形用户界面(GUI)相关的组件。在Android 4.0版本中,谷歌对系统进行了许多优化,包括...

    rootkernel_V4.51_Windows_Linux_zh-cn.rar

    然而,这个过程需要一定的技术背景,包括对Linux命令行、Android内核编译以及root原理的理解。不熟悉这些操作的用户可能会遇到困难,甚至有可能导致设备无法正常工作。因此,在尝试使用这个工具包之前,用户应该做好...

    Android4.0编译烧写[参照].pdf

    编译完成后,会在`android/out/target/product/smdkv210/`目录下找到`system.img`、`ramdisk-uboot.img`和`userdata.img`等文件。其中,`system.img`和`ramdisk-uboot.img`是编译的主要成果。 最后,制作SD卡启动。...

    Android4.0编译烧写[归纳].pdf

    编译完成后,将SD卡插入电脑并连接到开发环境,通过`dd`命令或其他工具将编译生成的`system.img`和`ramdisk-uboot.img`写入SD卡。 至此,Android 4.0的编译烧写过程完成。开发者可以将SD卡插入目标设备,通过引导...

    修改android启动logo(动态图片,静态图片)..docx

    - 在`device/telechips/m805_892x/device.mk`中添加一行代码,用于复制rle文件到ramdisk.img: ```makefile PRODUCT_COPY_FILES += \ device/telechips/common/initlogo.rle:root/initlogo.rle ``` 通过以上...

    修改android启动logo(动态图片,静态图片)汇编.pdf

    - **制作屏幕Logo**:使用图形编辑软件如Photoshop制作一张与屏幕分辨率相同的图片(例如1024*768),并保存为PNG-24格式。 - **转换格式**: - 使用`ImageMagick`工具将PNG格式的图片转换为RAW格式: ```bash ...

    修改android启动logo(动态图片,静态图片).pdf

    - 示例:`PRODUCT_COPY_FILES += \ device/telechips/common/initlogo.rle:root/initlogo.rle` - 替换`device/telechips/common/initlogo.rle`文件,并删除旧的文件。 #### 五、总结 通过以上步骤,我们可以成功...

    split_bootimg.pl

    总的来说,`split_bootimg.pl`是Android开发和自定义ROM制作中不可或缺的工具。通过它可以深入了解和定制系统的启动流程,实现个性化和优化。但是,由于涉及系统核心部分,建议具备一定的Linux和Android知识基础后再...

    MID编译文档

    - boot.img是Android系统启动时使用的镜像文件,包含了内核、ramdisk以及必要的启动参数。 - recovery.img是Android系统的恢复模式镜像,用于在系统出现问题时进行恢复操作。 4. 常规编译过程 常规编译分为完整编译...

    i9100港版rom

    在Android系统中,zImage包含了手机启动时运行的基本代码,用于初始化硬件和加载更完整的ramdisk。这个名字暗示了这个压缩包可能包含了用于刷机的内核文件,是刷入新ROM的一个关键部分。 综合以上信息,我们可以...

    自制第三方recovery教程

    它们都是由一系列内核参数、内核镜像和ramdisk组成的。 #### 三、官方原生Recovery的局限性 官方原生Recovery通常非常基础,其主要局限在于: 1. **功能有限**:除了最基本的重置和恢复外,官方Recovery提供的...

    诺威达K2101卡刷包

    该卡刷包的版本号为“K2101-NWD-s112206.20171117.13583526”,表明它是2017年11月17日13点58分制作的,具有特定的固件构建和安全补丁级别。 1. **Bootloader**: 包含`bootloader.fex`,这是设备启动过程中的关键...

Global site tag (gtag.js) - Google Analytics