如何合并内核image文件和根文件系统image文件,并以下烧写至flash。
时间:2011-08-26
来源:互联网
可能标题写的不很清楚,这样说:
嵌入式开发中,我们一般生成的image文件一般包括:
内核文件,比如vmlinux.lzma.uIma,烧在flash一个区,比如分区2;
跟文件系统,比如rootfs-squashfs,烧在flash一个区,比如分区3;
配置文件,比如configs-ramfs,烧在flash一个区,比如分区4;
平时都是调试哪个区,就重新烧某个区就行了。
如果,最后成产品,给客户,想把所有的这些文件弄成一个image,一次性的烧录进flash,请问:
1. 如何将这些文件合并成一个文件。
2. 如何烧录,是不是只要更改烧录地址和大小就行了吗?
非常感谢。
嵌入式开发中,我们一般生成的image文件一般包括:
内核文件,比如vmlinux.lzma.uIma,烧在flash一个区,比如分区2;
跟文件系统,比如rootfs-squashfs,烧在flash一个区,比如分区3;
配置文件,比如configs-ramfs,烧在flash一个区,比如分区4;
平时都是调试哪个区,就重新烧某个区就行了。
如果,最后成产品,给客户,想把所有的这些文件弄成一个image,一次性的烧录进flash,请问:
1. 如何将这些文件合并成一个文件。
2. 如何烧录,是不是只要更改烧录地址和大小就行了吗?
非常感谢。
作者: xuexingyang 发布时间: 2011-08-26
我暂时的做法是:
分别通过fread读取各个image文件,然后fwrite到一个新的image文件。
最后也烧录进去了。
但是启动的时候显示“Bad Magic Number”!
请问是方法错了,还是怎么弄??
谢谢。
分别通过fread读取各个image文件,然后fwrite到一个新的image文件。
最后也烧录进去了。
但是启动的时候显示“Bad Magic Number”!
请问是方法错了,还是怎么弄??
谢谢。
作者: xuexingyang 发布时间: 2011-08-26
这样是不行的.
必须分开,当然事在人为,如果偏要这么做,应该也有办法.
load kernel时, 比如是从nand读 nand read addr nandaddr_start len
然后bootm addr 这样启动内核的. 这中间会对 kernel数据进行校验.
根文件系统是在kernel之后的, 由bootloader中传的值进行确定位置, 比如 /dev/mtdblock3
, 如果是一直读怎么分别确定二者的大小. 头从哪里开始. 数据的头如果都错的, 后面就运行不起来了.
image大小是按字节分的, 但是nand是按块来的, 二者混在一起, 很难处理.
必须分开,当然事在人为,如果偏要这么做,应该也有办法.
load kernel时, 比如是从nand读 nand read addr nandaddr_start len
然后bootm addr 这样启动内核的. 这中间会对 kernel数据进行校验.
根文件系统是在kernel之后的, 由bootloader中传的值进行确定位置, 比如 /dev/mtdblock3
, 如果是一直读怎么分别确定二者的大小. 头从哪里开始. 数据的头如果都错的, 后面就运行不起来了.
image大小是按字节分的, 但是nand是按块来的, 二者混在一起, 很难处理.
作者: zmlovelx 发布时间: 2011-08-26
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28