mkimage
2016-07-25 23:45
260 查看
# mkimage Usage: mkimage -l image -l ==> list image header information mkimage [-x] -A arch -O os -T type -C comp -a addr -e ep -n name -d data_file[:data_file...] image -A ==> set architecture to 'arch' -O ==> set operating system to 'os' -T ==> set image type to 'type' -C ==> set compression type 'comp' -a ==> set load address to 'addr' (hex) -e ==> set entry point to 'ep' (hex) -n ==> set image name to 'name' -d ==> use image data from 'datafile' -x ==> set XIP (execute in place) mkimage [-D dtc_options] -f fit-image.its fit-image mkimage -V ==> print version information and exit
A:CPU的体系结构
alpha
arm
x86 Intel x86
ia64
mips
mips64
ppc
s390 IBM S390
sh SuperH
sparc
sparc64
m68k MC68000
O:操作系统类型
openbsd
netbsd
freebsd
4_4bsd
linux
svr4
esix
solaris
irix
sco
dell
ncr
lynxos
vxworks
psos
qnx
u-boot
rtems
artos
T:映象类型
standalone
kernel
ramdisk
multi
firmware
filesystem
C:压缩方式
none 不压缩
gzip
bzip2
a:映象在内存中的加载地址。映象下载到内存中时,根据这个地址来下载
e:映象运行的入口点地址。这个地址就是-a参数指定的值加上0x40(mkimage头)
n:映象名
d:制作映象的源文件
举例
# mkimage -n 'linux-2.6.14' -A arm -O linux -T kernel -C none -a 0x30008000 -e 0x30008040 -d zImage zImage.img Image Name: linux-2.6.14 Load Address: 0x30008000 Entry Point: 0x30008040 # tftp xxx zImage.img # bootm xxx
bootm命令会判断bootm地址是否与-a指定的地址相同
如果不同的话会从这个地址开始提取出这个0x40的头部,对其进行分析,然后把去掉头部的内核复制到-a指定的地址中去运行
如果相同的话,-e指定的入口地址会推后0x40,跳过头部
相关文章推荐
- 嵌入式linux-利用mkimage 把zImage转换为uImage的方法
- 制作Ramdisk文件系统
- mkimage使用详解
- make uImage
- mkimage的用法 (转了一个小哥抄的网上几篇文章)
- Ubuntu14.04下编译linux内核时无法生成uImage的处理方法
- "mkimage" command not found
- 漫话中国古代史 —— 总论
- python的学习笔记
- iptables
- hdoj1873看病要排队(优先队列)
- CDH中服务的配置及启动
- Lua 基础
- 7月25日实习日志
- android 广告轮播位Banner轮播位 使用超级方便
- scala基础25-闭包
- 服务器TIME_WAIT和CLOSE_WAIT详解和解决办法
- netty对http协议解析原理解析
- netty对http协议解析原理解析
- netty对http协议解析原理