Android 框架实现分析 - 工具 - host工具

mkbootfs

        源代码位于:system/core/cpio。

$ mkbootfs -f boot_filesystem_config.txt targetfiles/BOOT/RAMDISK | minigzip > ramdisk.img

mkbootimg

        源代码位于:system/core/mkbootimg。

mkbootimg --kernel kernel --ramdisk ramdisk.img --output /tmp/boot.img

minigzip

        源代码位于:external/zlib。

imgdiff

        源代码位于:recovery/applypatch。

        对应的应用补丁的工具为imgpatch。imgdiff用来处理*.gz,*.zip,*.apk,*.jar,*.img。

        imgpatch以及下面的bspatch都存在于applypatch工具中。与官方的bspatch在输入输出以及错误处理上有一些不同。根据diff文件的开头几个字节可以判断应该使用哪个补丁工具。开头为“BSDIFF40”的用bspatch处理,开头为“IMGDIFF2”用imgpatch处理。

bsdiff

        源代码位于:external/bsdiff。

        对应的应用补丁的工具为bspatch。bsdiff能够更高效地处理可执行文件。

mkyaffs2image

        源代码位于:external/yaffs2。

ext4_utils

        源代码位于:system/extras/ext4_utils。

make_ext4fs

ext2simg

setup_fs

ext4fixup

mkuserimg.sh

        调用make_ext4fs生成img文件。

system/extras/ext4_utils/mkuserimg.sh:

-------------------------------------------------------------------------

if [ "$1" = "-s" ]; then

  ENABLE_SPARSE_IMAGE="-s"

  shift

fi

SRC_DIR=$1

OUTPUT_FILE=$2

EXT_VARIANT=$3

MOUNT_POINT=$4

SIZE=$5

FC=$6

make_ext4fs $ENABLE_SPARSE_IMAGE $FCOPT -l $SIZE -a $MOUNT_POINT $OUTPUT_FILE $SRC_DIR

libsparse

        源代码位于:system/core/libsparse。

simg2img

img2simg

simg2simg

simg_dump.py

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Fighting Horse

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值