zImage和uImage的区别】的更多相关文章

http://blog.csdn.net/maojudong/article/details/4178118 zImage和uImage的区别 一.vmlinuz vmlinuz是可引导的.压缩的内核.“vm”代表“Virtual Memory”.Linux 支持虚拟内存,不像老的操作系统比如DOS有640KB内存的限制.Linux能够使用硬盘空间作为虚拟内存,因此得名“vm”. vmlinuz 的建立有两种方式.一是编译内核时通过“make zImage”创建,然后通过:“cp /usr/sr…
写个随笔,备忘! 拿到一个内核后,首先将其make为zImage,步骤: 1.将与要移植的系统的配置文件拷贝给.config cp xxx_xxx .config 2.修改Makefile,指定平台构架和交叉编译环境 vim Makefile  ARCH  ?=XXX CROSS_COMPILE ?=xxxx 3.启动配置界面,定制内核 make nemuconfig 4.make zImage, 内核编译(make)之后会生成两个文件,一个Image,一个zImage,其中Image为内核映像…
一.手动使用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地址:30007f…
kernel 源码编译生成 vmlinx,vmlinux 是 elf 文件,对 vmlinux 使用 objcopy 得到 Image,Image 是纯粹的二进制文件,vmlinux 只能在OS环境下执行,不能烧录, Image 可以烧录. zImage 是 对 Image 进行压缩, uImage 是在 zImage 添加头部信息,方便uboot 启动. uboot 支持所有 uImage 启动,但只有开启 zImage 配置参数的uboot 才支持 zImage 启动.…
1.vmlinux vmlinux是未压缩的内核,vmlinux 是ELF文件,即编译出来的最原始的文件.用于kernel-debug,产生system.map符号表,不能用于直接加载,不可以作为启动内核.只是启动过程中的中间媒体.vmlinux.bin:The same as vmlinux, but in a binary file format. 2.vmlinuz vmlinuz是可引导的.压缩的内核.“vm”代表“Virtual Memory”.Linux 支持虚拟内存,不像老的操作系…
1.各种文件的意义 vmlinux  编译出来的最原始的内核文件,未压缩. zImage   是vmlinux经过gzip压缩后的文件. bzImage bz表示“big zImage”,不是用bzip2压缩的.两者的不同之处在于,zImage解压缩内核到低端内存(第一个640K),bzImage解压缩内核到高端内存(1M以上).如果内核比较小,那么采用zImage或bzImage都行,如果比较大应该用bzImage. uImage   U-boot专用的映像文件,它是在zImage之前加上一个…
zImage和uImage的区别 一.vmlinuz vmlinuz是可引导的.压缩的内核.“vm”代表“Virtual Memory”.Linux 支持虚拟内存,不像老的操作系统比如DOS有640KB内存的限制.Linux能够使用硬盘空间作为虚拟内存,因此得名“vm”. vmlinuz的建立有两种方式.一是编译内核时通过“make zImage”创建,然后通过:“cp /usr/src/linux-2.4/arch/i386/linux/boot/zImage/boot/vmlinuz”产生.…
一.概述 linux内核镜像常见到的有两种形式,zImage和uImage.这两种文件的格式稍有差别,所以启动这两种格式的内核镜像也会有所不同.目前,uboot只支持启动uImage类型的镜像,对zImage还不支持(但是可以移植,TQ2440就是这样做的). 二.uImage和zImage 1.zImage zImage是用命令“#make zImage”生成的,我截取了生成信息最后部分的内容如下: OBJCOPY arch/arm/boot/Image Kernel: arch/arm/bo…
1:什么是UBOOT,为什么要有UBOOT? UBOOT的主要作用是用来启动linux内核,因为CPU不能直接从块设备中执行代码,需要把块设备中的程序复制到内存中,而复制之前还需要进行很多初始化工作,如时钟.串口.dram等: 如要想让CPU启动linux内核,只能通过另外的程序,进行必要的初始化工作,在把linux内核中代码复制到内存中,并执行这块内存中的代码,即可启动linux内核:一般情况下,我们把linux 镜像储存在块设备中如SD卡.iNand.Nandflash等块设备中,首先执行U…
关于编译powerpc linux的几个Image参考原文 http://blog.sina.com.cn/s/blog_86a30b0c0100wfzt.html 转载▼   PowerPC架构 Linux和ARM,X86等平台有些差异,PowerPC平台HW参数不是通过命令行方式传递到Linux,而是通过传递Device tree文件的方式传递参数,所以PowerPC平台Linux需要编译dtb和uImage才能正常加载,另外PowerPC架构linux还提供simpleImage的方式加载…
转自:https://www.cnblogs.com/biaohc/p/6403863.html 1:什么是UBOOT,为什么要有UBOOT? UBOOT的主要作用是用来启动linux内核,因为CPU不能直接从块设备中执行代码,需要把块设备中的程序复制到内存中,而复制之前还需要进行很多初始化工作,如时钟.串口.dram等: 如要想让CPU启动linux内核,只能通过另外的程序,进行必要的初始化工作,在把linux内核中代码复制到内存中,并执行这块内存中的代码,即可启动linux内核:一般情况下,…
uboot和内核到底是什么?uboot实质就是一个复杂的裸机程序:uboot可以被配置也可以做移植: 操作系统内核本身就是一个裸机程序,和我们学的uboot和其他裸机程序没有本质的区别:区别就是我们操作系统运行起来后可以分为应用层和内核层,分层后,两层的权限不同,内存访问和设备操作的管理上更加精细(内核可以随便方位各种硬件,而应用程序只能被限制的访问硬件和内存地址) 直观来看:uboot的镜像是u-boot.bin,Linux系统的镜像是zImage,这两个东西其实都是两个裸机程序镜像.从系统启…
2.7.1.uboot和内核到底是什么 2.7.1.1.uboot是一个裸机程序 (1)uboot的本质就是一个复杂点的裸机程序.和我们在ARM裸机全集中学习的每一个裸机程序并没有本质区别. 2.7.1.2.内核本身也是一个"裸机程序" (1)操作系统内核本身就是一个裸机程序,和uboot.和其他裸机程序并没有本质区别. (2)区别就是操作系统运行起来后在软件上分为内核层和应用层,分层后两层的权限不同,内存访问和设备操作的管理上更加精细(内核可以随便访问各种硬件,而应用程序只能被限制的…
在网络中,不少服务器采用的是Linux系统.为了进一步提高服务器的性能,可能需要根 据特定的硬件及需求重新编译Linux内核.编译Linux 内核,需要根据规定的步骤进行,编译内核过程中涉及到几个重要的文件.比如对于RedHat Linux,在/boot目录下有一些与Linux内核有关的文件 . 编译过RedHat Linux内核的人对其中的System.map.vmlinuz.initrd-2.4.7-10.img印象可能比较深刻,因为编译内核过程中涉及到这些文件的建立等操作.那么这几个文件是…
make Image uImage与zImage的区别  http://blog.chinaunix.net/uid-25322094-id-3589796.html 内核编译(make)之后会生成两个文件,一个Image,一个zImage,其中Image为内核映像文件,而zImage为内核的一种映像压缩文件,Image大约为4M,而zImage不到2M. 那么uImage又是什么的?它是uboot专用的映像文件,它是在zImage之前加上一个长度为64字节的“头”,说明这个内核的版本.加载位置…
内核编译(make)之后会生成两个文件,一个Image,一个zImage,其中Image为内核映像文件,而zImage为内核的一种映像压缩文件,Image大约为4M,而zImage不到2M. 那么uImage又是什么的?它是uboot专用的映像文件,它是在zImage之前加上一个长度为64字节的“头”,说明这个内核的版本.加载位置.生成时间.大小等信息:其0x40之后与zImage没区别. 如何生成uImage文件?首先在uboot的/tools目录下寻找mkimage文件,把其copy到系统/…
Linux下USB烧写uImage kernel   1.启动开发板,进入u-boot:(如果开发板中没有系统,可以通过用SD卡方式启动开发板进入)   U-Boot 2011.06 (Mar 19 2012 - 08:45:34) for MINI6410   CPU: S3C6400@667MHz Fclk = 667MHz, Hclk = 133MHz, Pclk = 66MHz (ASYNC Mode) Board: MINI6410 DRAM: 256 MiB NAND: 512 Mi…
1.文件系统就是数据的存储结构,不要以为你的硬盘存储东西理所当然,没有文件系统,你存的只是0010101101100 2.内存管理是计算机运行时内存的分配和使用. 3.进程管理就是说每次执行一个程序都要创建一个进程. 4.通过vfs可以调用任何格式的文件系统如ext2,ext3.. 虚拟文件系统包含好多结构体,用来描述对象.5.索引结点仅在文件被访问时,才在内存中创建. ------------------------------------------------------------- l…
linux内核最小系统,使用内核版本:https://www.kernel.org/pub/linux/kernel/v3.0/linux-3.8.1.tar.bz2 1,FL2440板子的基本硬件:晶振12MHZ CPU 型号为S3C2440,基于ARM920T,指令集ARMV4,时钟主频400MHz SDRAM H57V2562GTR-75C 2片*32MB=64MB,挂载于nGCS6 (0x3000 0000) NANDFLASH 型号:K9F2G08U0B  大小:256MB Netwo…
下面两篇文章是ARM9论坛上的讲解ramdisk文件系统的很不错的文章 今天做了个试验,让Linux2.6.29.4从ramdisk根文件系统启动成功,总结一下. 其中涉及的内容较多,很多东西不再详述,如需深入研究请查阅相关资料(百度或谷歌一下一大堆).开发环境:Fedora 9交叉编译工具链:arm-linux-gcc 4.3.2 with EABI嵌入式Linux内核版本:2.6.29.4-FriendlyARM.昨天写贴子的时候具体记不清了,今天起来启动开发板用uname -r查一下,就是…
这几天参考国嵌的实验手册和网上的资料完成了u-boot定制.内核定制.ramdisk根文件系统的制作,并成功.趁热打铁,总结一下.本文引用了很多网络上的文章,就不一一注明了.感谢各大侠的帮助,如有雷同,望见谅. 开发环境:红帽企业版5 交叉编译工具链:arm-linux-gcc4.3.2 嵌入式Linux内核版本:友善之臂的mini2440开发板光盘自带的内核linux-2.6.32.2 开发板:mini2440-64MNand Flash Bootloader:u-boot-1.20 具体步骤…
目录 一.概述 1.本文的意义 2.Linux内核Makefile文件组成 二.Linux内核Makefile的“make解析”过程 1 顶层Makefile阶段 1.从总目标uImage说起 2.vmlinux的生成 3.vmlinux-lds.vmlinux-init.vmlinux-main的生成 2 scripts/Makefile.build的第一次调用阶段 1.Makefile.build的包含文件 2.scripts/Makefile.build的总目标 3.drivers/bui…
转自:http://www.cnblogs.com/amanlikethis/p/3675486.html <请阅读原文> 一.概述 1.本文的意义 众多的资料(<嵌入式Linux应用开发完全手册>.Documentation/kbuild/makefiles.txt)已经向我们展示了一个初级Linux用户者应该懂得的知识--怎样添加需要编译的文件.添加编译的规则.多个源文件构成一个目标文件的情况等. 但是,一种"找到真相"的冲动迫使我想了解Linux内核编译的…
1.Hi3531 SDK包位置 在"Hi3531_V100R001***/01.software/board"目录下,您可以看到一个 Hi3531_SDK_Vx.x.x.x.tgz 的文件, 该文件就是Hi3531的软件开发包. 2.解压缩SDK包 在linux服务器上(或者一台装有linux的PC上,主流的linux发行版本均可以),使用命令:tar -zxf Hi3531_SDK_Vx.x.x.x.tgz , 解压缩该文件,可以得到一个Hi3531_SDK_Vx.x.x.x目录.…
buildroot是Linux平台上一个构建嵌入式Linux系统的框架.整个Buildroot是由Makefile脚本和Kconfig配置文件构成的.你可以和编译Linux内核一样,通过buildroot配置,menuconfig修改,编译出一个完整的可以直接烧写到机器上运行的Linux系统软件(包含boot.kernel.rootfs以及rootfs中的各种库和应用程序). 使用buildroot搭建基于qemu的虚拟开发平台,参考<通过buildroot+qemu搭建ARM-Linux虚拟开…
参考 一次实验引发的故事 – kernel build system探索—vmlinux是如何炼成的– kernel makefile 深度探索Linux操作系统:系统构建和原理解析.pdf 问题 在前面的博文中,我们先是为自己的Ubuntu安装了一套内核源码树,然后为了方便进行嵌入式交叉编译,我们又为arm板子构建了一套源码树. 那么现在我们已经知道如何自己的电脑上去构建.安装一个定制化的Linux内核,但是我们还是要在唠叨一些. 当你在内核源码路径里敲下make时究竟发生什么 当我们刚刚开始…
Xilinx zynq-7000系列FPGA移植Linux操作系统详细教程 一:前言 最近手上压了一块米联客的Miz7035,一块xilinx zynq-7000系列的开发板,想着正好学习一下linux在ARM9上的移植,网上基本都是ZC702.zed的教程,这对于买了非标准板的人来说就不太友好,很多文件都不知道是怎么生成的.本着学习加分享的心态,把这两天移植linux的过程写下来,尽可能详细.驱动和系统移植不是我的专长,很多地方我也是知其然不知其所以然,写得不对的地方欢迎指正. 二:前期准备 …
嵌入式系统构成: 主要由bootloader.kernel.以及根文件系统三部分组成. 内核制作步骤: 制作嵌入式平台使用的linux内核制作方法与pc平台上的linux内核基本一致 1.清除原有配置与中间文件 x86:make distclean arm:make distclean 2.配置内核 x86:make menuconfig arm: make menuconfig ARCH=arm 3编译内核4 x86:make bzImage arm:make uImage ARCH=arm…
<Linux内核镜像格式>   Linux内核有多种格式的镜像,包括vmlinux.Image.zImage.bzImage.uImage.xipImage.bootpImage等. ➤kernel镜像格式vmlinux   vmlinux是可引导的.未压缩.可压缩的内核镜像,vm代表Virtual Memory.(表示Linux支持虚拟内存,因此得名vm)它是由用户对内核源码编译得到,实质是elf格式的文件.也就是说vmlinux是编译出来的最原始的内核文件,未压缩.这种格式的镜像文件多存放…
内核编译(make)之后会生成两个文件,一个Image,一个zImage,其中Image为内核映像文件,而zImage为内核的一种映像压缩文件,Image大约为4M,而zImage不到2M.     那么uImage又是什么的?它是uboot专用的映像文件,它是在zImage之前加上一个长度为64字节的"头",说明这个内核的版本.加载位置.生成时间.大小等信息:其0x40之后与zImage没区别.       如何生成uImage文件?首先在uboot的/tools目录下寻找mkima…