一、手动使用mkimage命令
mkimage -A arm -O linux -T kernel -C none -a 30007fc0 -e 30007fc0 -n uImage   -d /work/jz2440/kernel/linux-2.6.22.6/arch/arm/boot/zImage uImage
 
我的内核目录:/work/jz2440/kernel/linux-2.6.22.6

我的tftpboot:/work/tftpbootuboot——bootm地址:30007fc0
 
U-boot mkimage指定Linux内核地址时的两种方式  http://blog.csdn.net/embededswordman/article/details/6704197
 
uImage的制作是使用的u-boot工具mkimage,build完u-boot后也会将mkimage build出來到/tools目录下,可以直接拿來用,它的作用就是在zImage的前面加上64个字节的头,让u-boot能够识别要加载内核的类型、加载地址等。

基本格式:mkimage -A arch -O os -T type -C comp -a addr -e ep -n name -d data_file[:data_file...] image

-A 指定CPU的体系结构:(u-boot支持多种的架构,这里应该是arm)
取值 表示的体系结构
alpha Alpha
arm A RM
x86 Intel x86
ia64 IA64
mips MIPS
mips64 MIPS Bit
ppc PowerPC
s390 IBM S390
sh SuperH
sparc SPARC
sparc64 SPARC Bit
m68k MC68000 -O 指定操作系统类型,可以取以下值:(u-boot支持多种的OS,这里应该是linux)
openbsd、netbsd、freebsd、4_4bsd、linux、svr4、esix、solaris、irix、sco、dell、ncr、lynxos、vxworks、psos、qnx、u-boot、rtems、artos -T 指定映象类型,可以取以下值:(u-boot可以加载不同的映像,这里应该是kernel)
standalone、kernel、ramdisk、multi、firmware、script、filesystem -C 指定映象压缩方式,可以取以下值:(除了zImage本身是压缩格式外,u-boot还可以对其再压缩,这里应该是none)
none 不压缩
gzip 用gzip的压缩方式
bzip2 用bzip2的压缩方式 -a 指定映象在内存中的加载地址,可以于实际加载(如tftp加载)时的地址不相同,也可以相同,详见后面的解释。 -e 指定映像运行的入口地址,可以等于加载地址,也可以是加载地址偏移64字节(+0x40)后的地址,详见后面的解释。 -n 指定映像名称 -d 指定【源文件】和生成的【目标文件名】 调整的最多的参数是-a, -e,这两个参数需要与实际加载到内存时的动作保持一致。 、如果加载时的地址与-a参数指定的不相同,则-e必须等于-a。u-boot会把kernel image去掉不包括64字节的信息头后搬移到-e处,直接启动。要注意两个image的存储空间不要重叠,两者之间至少要留image size的空间。 编译环境: mkimage -A arm -O linux -T kernel -C none -a 0x70008000 -e 0x70008000 -n 'Linux' -d zImage uImage
cp uImage /tftpboot/ 目标板环境: tftp 0x72200000 uImage; bootm 0x72200000; 、如果加载时的地址与-a参数指定相同,则-e必须是-a + 0x40的地址。这时u-boot不需要再执行搬移的动作,根据-e的地址直接启动。 编译环境: mkimage -A arm -O linux -T kernel -C none -a 0x0x70008000 -e 0x70008040 -n 'Linux‘ -d zImage uImage cp uImage /tftpboot/ 目标板环境:
tftp 0x70008000 uImage; bootm 0x70008000;


名字:uImage

需要先安装mkimage工具
----------------------------------------------------------------------------------------
参考:http://blog.sina.com.cn/s/blog_7776b9d301017pck.html
U-boot 就是为加载kernel而服务的
简单来讲:u-boot 启动过程分为两个部分 :Stage 1 and Stage2
Stage1 主要是初始化硬件设备, 然后最主要的功能就是把Stage2 load到RAM中去。

u-boot与kernel的关系

U-boot为kernel服务, u-boot为kernel提供一些kernel无法知道的信息,比如ramdisk在RAM中的地址
Kernel也必须为U-boot提供必要的信息:通过mkimage这个tool可以给zImage添加一个header:
typedef struct image_header {
 uint32_t ih_magic;
 uint32_t ih_hcrc;
 uint32_t ih_time;
 uint32_t ih_size;
 uint32_t ih_load;
 uint32_t ih_ep;  
 uint32_t ih_dcrc;
 uint8_t  ih_os;  
 uint8_t  ih_arch;
 uint8_t  ih_type;
 uint8_t  ih_comp;
 uint8_t  ih_name[IH_NMLEN];
} image_header_t;

利用u-boot里面的mkimage工具来生成uImage   (u-boot源码包/tools/mkimage.c )
用法:
    -A arm     -------- 架构是arm-O linux    -------- 操作系统是linux-T kernel  -------- 类型是kernel-C none    -------- 压缩类型为无压缩-a 30008000 ---- image的载入地址(hex)-e 30008040 ---- 内核的入口地址(hex),因为信息头的大小是0x40-n linux-2.6.18.8 --- image的名字-d zImage             ---- 无头信息的image文件名uImage2.6. 18.8    ---- 加了头信息之后的image文件名

生成uImage 的方法
 mkimage -A arm -O linux -T kernel -C none -a 30008000 -e 30008000 -n linux-2.6.18.8   -d zImage uImage2.6.18.8
注释:这里的意思就是把zImage的前面加上一个0x40长度的header ,没有压缩(none) , kernel的load地址是:-a 30008000   ; kernel的入口地址是 –e 30008000
不知道是否对入口地址有疑问:为什么入口地址不是 0x80003040 呢?  答案就在 u-boot 里面的bootm命令的实现代码上, 我会在 “分析bootm源码”中给予分析介绍 , 来详细分析
1> mkimage 如何指定入口参数 ( -e  0xxxxxx)
2> mkimage 指定了入口参数后, 你用tftpboot 下载kernel到哪个地址?

#/usr/local/src/u-boot-1.2.0/tools/mkimage -A arm -O linux-T kernel -C none -a 30008000 -e 30008000 -n linux-2.6.18.8      -d zImage uImage2.6.18.8

imagefile = uImage2.6.18.8
Image Name:   linux-2.6.18.8
Created:      Fri Jun 15 13:56:06 2007
Image Type:   ARM Linux Kernel Image (uncompressed)
Data Size:    1068212 Bytes = 1043.18 kB = 1.02 MB
Load Address: 0x30008000
Entry Point:  0x30008000

生成uImage的方法: 利用mkimage 命令 把zImage 包装 , mkimage -A arm -O linux -T kernel -C none -a 30008000 -e 30008000 -n linux-2.6.18.8 -d zImage uImage2.6.18.8 下面的总结都是 稍微调整一下上面的 -a -e -x 参数什么的, 你会发现这些参数不同, 就会导致你 tftp dowload的地址会有不同, 有的时候kernel会run不起来。

addr是地址 , 如果两个地方都是addr ,说明是同一个地址, 否则 我会比如addr+0x40 的 1> mkimage -a addr -e addr 那么tftp 下载kernel 就一定不能下载 addr处 , 否则,kernelrun不起来。 因为u-boot并不搬运kernel 代码,也就是没有把header去掉。所以只有入口是 addr+0x40才是kernel的入口。 当然也不能下到 < addr + 2M 的地方,否则搬运的时候会有一些覆盖, 导致搬运后的kernel不完整, bootm的时候,u-boot就会RESET 的。

2> mkimage -a addr -e addr+0x40 或者 mkimage -a addr -x 两个是一回事 。 -x的意思 是就在kernel所在地执行。 不必搬运(代码里面的条件是 tftp 下kernel的时候 就下到 addr处,这样bootm就没有必要搬运了) 这种情况: tftp 就一定把kernel 下载到addr处 ,这样u-boot 在bootm的时候 就不搬运了。 其实这种情况更多的用在flash里面 。 //  -----------------------------------------------------
 switch (hdr->ih_comp) {
 case IH_COMP_NONE:  // -C none
  if(ntohl(hdr->ih_load) == addr) { //不搬运
   printf (“   XIP %s ... ”, name);//注意屏幕信息
  } else {
   memmove ((void *) ntohl(hdr->ih_load), (uchar *)data, len);   //搬运:这里data指向实际的kernel ,把kernel搬运到hdr->ih_load处,这个值就是mkimage –d 0x30008000
  }

对于u-boot最常用得命令莫过于:
tftpboot 和 bootm 命令了。
具体分析一下这两个过程,这样大家用的时候就知其所以然了,也就能少犯一些错误了。具体参考:common/cmd_bootm.c  ? do_bootm()
还有do_bootm_linux() 函数
比如 :
Tftpboot 0x3300,0000  uImage
Tftpboot 0x3080,0000  ramdisk.gz
Bootm 0x3300,0000  0x3080,0000

过程:tftpboot把uImage 下载地址0x33000000 ,然后把ramdisk.gz 下载到0x30800000 .
最后执行bootm ,
Bootm  会首先取出uImage的0x40个header ,然后读取header的ih_load字段,
只有这样u-boot 才知道把uImage搬运到哪里。  
在中间的时候, u-boot 会判断tftp 下载kernel的地址是否等于ih_load ,这里非常关键。如果等于就不搬运;如果不等于u-boot 把指针定位到0x40之后的位置, 这里才是真正的kernel(zImage), 把zImage 搬运(copy)到  ih_load这个地址上去。 然后执行kernel 。

 
 
二、jz2440 linux-2.6.22.6 make uImage自动生成uImage的过程追溯;

执行”make uImage“ = “make” + “mkimage -A arm -O linux -T kernel  -C none -a 0x30008000 -e 0x30008000  -n 'Linux-2.6.22.6' -d zImage uImage

1.1. linux-2.6.22.6/arch/arm/boot/Makefile
quiet_cmd_uimage = UIMAGE  $@
      cmd_uimage = $(CONFIG_SHELL) $(MKIMAGE) -A arm -O linux -T kernel \
                   -C none -a $(ZRELADDR) -e $(ZRELADDR) \
                   -n 'Linux-$(KERNELRELEASE)' -d $< $@
 
# Note: the following conditions must always be true:
#   ZRELADDR == virt_to_phys(PAGE_OFFSET + TEXT_OFFSET)
#   PARAMS_PHYS must be within 4MB of ZRELADDR
#   INITRD_PHYS must be in RAM
ZRELADDR    := $(zreladdr-y)
 
1.2. linux-2.6.22.6/scripts/mkuboot.sh
    MKIMAGE=$(type -path mkimage)

aaarticlea/png;base64,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" alt="" width="630" height="283" />

 
 
 
2. linux-2.6.22.6/arch/arm/mach-s3c2410/Makefile.boot
zreladdr-y     := 0x30008000
 

由zImage生成uImage的更多相关文章

  1. zImage转换为uImage

    写个随笔,备忘! 拿到一个内核后,首先将其make为zImage,步骤: 1.将与要移植的系统的配置文件拷贝给.config cp xxx_xxx .config 2.修改Makefile,指定平台构 ...

  2. zImage和uImage的区别

    http://blog.csdn.net/maojudong/article/details/4178118 zImage和uImage的区别 一.vmlinuz vmlinuz是可引导的.压缩的内核 ...

  3. kernel 生成uImage

    有些u-boot 指定要链接uImage 所以今天记录一下kernel 生成uImage 的条件 在kernel 配置完make menuconfig 后,进行编译,发现make uImage 生成不 ...

  4. linux 内核 zImage 生成过程分析

    1. 依据arch/arm/kernel/vmlinux.lds 生成linux内核源码根目录下的vmlinux,这个vmlinux属于未压缩,带调试信息.符号表的最初的内核,大小约23MB: arm ...

  5. vmlinux, Image ,zImage,uImage

    kernel 源码编译生成 vmlinx,vmlinux 是 elf 文件,对 vmlinux 使用 objcopy 得到 Image,Image 是纯粹的二进制文件,vmlinux 只能在OS环境下 ...

  6. 嵌入式:使用dd命令制作烧写文件

    1. 使用dd命令制作烧写文件 环境: bootargs=mem=64M console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=jffs2 mtd ...

  7. Image zImage uImage

    内核编译(make)之后会生成两个文件,一个Image,一个zImage,其中Image为内核映像文件,而zImage为内核的一种映像压缩文件,Image大约为4M,而zImage不到2M. 那么uI ...

  8. uImage、zImage、bzImage、vlinzx区别

    在网络中,不少服务器采用的是Linux系统.为了进一步提高服务器的性能,可能需要根 据特定的硬件及需求重新编译Linux内核.编译Linux 内核,需要根据规定的步骤进行,编译内核过程中涉及到几个重要 ...

  9. 编译kernel:make Image uImage与zImage的区别

    make Image uImage与zImage的区别  http://blog.chinaunix.net/uid-25322094-id-3589796.html 内核编译(make)之后会生成两 ...

随机推荐

  1. POJ 2778 DNA Sequence(AC自动机+矩阵快速幂)

    题目链接:http://poj.org/problem?id=2778 题意:有m种DNA序列是有疾病的,问有多少种长度为n的DNA序列不包含任何一种有疾病的DNA序列.(仅含A,T,C,G四个字符) ...

  2. BZOJ 2442: [Usaco2011 Open]修剪草坪( dp )

    dp dp[ i ] 表示第 i 个不选 , 前 i 个的选择合法的最小损失 , dp[ i ] = min( dp[ j ] ) ( max( 0 , i - 1 - k ) <= j < ...

  3. Java学习之equals和hashcode的关系

    两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对? 答:不对,如果两个对象x和y满足x.equals(y) == true,它们的哈希码(has ...

  4. Win7下安装Apache+PHP+MySQL

    Win 7 下搭建 WAMP 环境本文安装方法适用于 Windows7 下的 Apache + MySQL + PHP(WAMP)安装,同时也适用于 Windows XP 系统下的安装和配置.一.安装 ...

  5. Android 开发笔记“程序安装包APK的制作”

    资源来源:http://blog.csdn.net/qualcent/article/details/6959547 完成Android项目后,需要将程序打包成APK文件(Android Packag ...

  6. Oracle分区知识

    查询分区名称.表空间的SQL USER_SEGMENTS SELECT SEGMENT_NAME,PARTITION_NAME,TABLESPACE_NAME FROM USER_SEGMENTS; ...

  7. django 实现指定文件合并成压缩文件下载

    需求是在一列学生列表中选择指定的学生,然后下载他们上传的报告文档.

  8. Java并发编程总结3——AQS、ReentrantLock、ReentrantReadWriteLock(转)

    本文内容主要总结自<Java并发编程的艺术>第5章——Java中的锁. 一.AQS AbstractQueuedSynchronizer(简称AQS),队列同步器,是用来构建锁或者其他同步 ...

  9. MySQL对于有大量重复数据表的处理方法

    需要在MySQL的一张innodb引擎的表(tableA)上添加一个唯一索引(idx_col1_u).但是对于每个key(col1)表中已经有大量重复数据.此时,做数据的手工清理,或者SQL处理是非常 ...

  10. Oracle 日期计算

    日期相减,求天数 方法一: )),createdate from goods t