由安装Busybox到Android过程中想到的

Android 的文件系统以ramdisk.img 形式压缩,在系统启动时每次都启动解压挂载之;

Android 文件系统中/data 目录主要存放用户数据,以userdata.img 形式压缩,在系统挂载完总文件系统后解压该镜象文件并复制其中的内容至文件系统中的/data 目录下。

Android 文件系统中/system 目录主要存放系统数据,以system.img 形式压缩,在系统挂载完文件系统后解压该镜象文件并复制其中的内容至文件系统中的/data 目录下。

 

系统运行过程用户可以对用户数据/data 目录,进行读写操作(adb shell mount 可证明),并且操作在关机后被保存下来。如何实现(--猜每次关机前会把/data 重新压缩更新成一个新userdata.img 。)

系统运行过程中用户不可以对系统数据/system 目录,进行写操作,只能读。所以system.img 是不会被更新的。

同理系统运行过程文件系统框架也不会被改变,所以ramdisk.img 也是不会被更新的。

 

(不可理解的是既然都在运行时不能不修改为什么要把/system 单独做成一个镜象,而不是直接做在ramdisk,img 中,这样在启动时还可以省去解压挂载/system 这个步骤对应init.rc 中如下步骤:

# Mount /system rw first to give the filesystem a chance to save a checkpoint

mount yaffs2 mtd@system /system

mount yaffs2 mtd@system /system ro remou

 

要把busybox 安装到Android 文件系统中,可以把busybox 命令adb push/data 下,这样也能实现在开机busybox 仍然存在;

但是为了保证环境变量开机恢复必须使修改的init.rc 文件也开机保证修改,但该文件在根目录下,每次开机系统都会导入ramdisk.img 中原来的init.rc 文件,所以要实现可保存的修改只能修改ramdisk.img 中的init.rc 文件。具体方法略。

实现上面两点就可以实现busyboxAndroid 的永久安装。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值