uImage与zImage的区别
内核编译(make)之后会生成两个文件,一个Image,一个zImage,其中Image为内核映像文件,而zImage为内核的一种映像压缩文件,Image大约为4M,而zImage不到2M。
几种linux内核文件的区别:
1、vmlinux
2、zImage
3、bzImage bz表示“big zImage”,不是用bzip2压缩的。两者的不同之处在于,zImage解压缩内核到低端内存(第一个640K),bzImage解压缩内核到高端内存(1M以上)。如果内核比较小,那么采用zImage或bzImage都行,如果比较大应该用bzImage。
4、uImage
5、vmlinuz
6、initrd
查看 2410 的 datasheet ,发现内存映射的基址是 0x3000 0000 ,那么 0x30008000 又是如何来的呢?
看来在 image 下面用了 32K(0x8000)的空间存放内核页表,
0x30008000 就是 2410 的内核在 RAM 中的启动地址,这个地址就是这么来的。
用U-Boot启动Linux内核
1、下载u-boot.bin到SDRAM的0x30008000处
tftp 0x30008000 uImage
2、启动内核(如果为zImage,则可以命令go 0x30008000)
bootm 0x30008000
本文详细解释了Linux内核的不同文件格式,包括uImage、zImage、bzImage等,并阐述了它们之间的区别及应用场景。此外,还介绍了如何生成uImage文件及使用U-Boot启动Linux内核的方法。

6650

被折叠的 条评论
为什么被折叠?



