这几天被分区事情困扰了好几天,之前只知道在 Windows上用自带的分区工具,然后进行格式化,然而在 Android里要单独进行分区相对要麻烦很多。毕竟当 Android的第一个进程即 init进程做了很多事,然后在 native 、jni、framework、各个层进行相应的配置。本来想照着原来就有的 system 分区增加分区,不料看着代码追来追去,徘徊在 shell, android, c , java, python, perl 种种语言之中,久了眼睛算是花了。后来还是凭自己的感觉慢慢尝试地去实现, system 这个没法参考,毕竟就目前的代码量及知识还没发透析这个原理。 这里先需要介绍几个命令和工具。
分块命令: split -d -a 2 -b 256M $RELEASE_OUT/test.img $RELEASE_OUT/test.img
|
用到这个命令,主要是因为打包压缩的文件有 1.3G,烧写到 emmc的 flash里面会提示异常,只有把大的文件进行切割然不会出现标志位异常,我们知道 fat32格式不能放有 4G容量大的文件。我搜了资料,在网上都说的不准确,在 linux上直接man下就知道了。
命令格式: split [...] [...] input_path/inputfile.img outputpath/outputfile.img
上面的命令意思
-d : 生成以十进制数字(decimal) ,默认是字母的后缀,而且是递增的。
-a : 附加的后缀长度(additional suffix) , -a, --suffix-length=N, 默认为 2,我这还是设成了 2
-b : put SIZE bytes per output file, 也就是切割后每个文件的大小,指定成 256M
-l : put NUMBER lines per output file, 即切割后每个文件里面只有多少行
暂时写到这,等有时间进行整理下
阅读(2186) | 评论(0) | 转发(0) |