vmlinux,vmlinuz,bzimage,zimage,initrd.img的区别与联系
来源:互联网 发布:java垃圾回收方法 编辑:程序博客网 时间:2024/06/07 14:37
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 支持虚拟内存,不像老的操作系统比如DOS有640KB内存的限制。Linux能够使用硬盘空间作为虚拟内存,因此得名“vm”。vmlinuz是可执行的Linux内核,它位于/boot/vmlinuz,它一般是一个软链接。但是,它已经丢失了调试信息等,不可用于调试,这就是为什么perf和systemtap等内核级别的调试软件安装的时候,需要重新编译内核的原因。同理,解压缩vmlinuz是不能得到Vmlinux的。相对于vmlinux,它增加了解压缩和boot的部分
3.zimage
zImage是vmlinuz经过gzip压缩后的文件,适用于小内核(512KB以内),加载到内存的开始640KB处。
4.bzimage(not bzizp but big)
bzImage是vmlinuz经过gzip压缩后的文件,适用于大内核。为什么会发明bzimage这种内核镜像呢?随着linux内核的成熟,linux内核大小逐渐增大,超过了一些体系结构的限制,导致存储压缩内核的空间受到限制。bzimage这种格式就是为了克服这种限制,它通过把kernel分解到不相邻的内存区域来达到这一个目的。
bzimage包含以下目标文件 bootsect.o + setup.o + misc.o + piggy.o .
bootsect:这个程序是linuxkernel的第一个程序,包括了linux自己的bootstrap程序,主要进行开机后加载真正内核镜像之前的各种准备工作.注意它是用来load bzimage,不是bzimage的一部分(这句话存在质疑)。
setup:进行实模式设置
misc:
piggy.o 包含被压缩的vmlinux
bzimage的解剖图:
- vmlinux,vmlinuz,bzimage,zimage,initrd.img的区别与联系
- vmlinux,vmlinuz,bzimage,zimage,initrd.img的区别与联系
- vmlinux,vmlinuz,bzimage,zimage,initrd.img uimage的区别与联系
- 关于vmlinux,vmlinuz,bzImage,zImage的区别和联系
- 关于vmlinux,vmlinuz,bzImage,zImage的区别和联系
- 关于vmlinux,vmlinuz,bzImage,zImage的区别和联系
- vmlinux,vmlinuz,bzImage,zImage的区别和联系
- 关于vmlinux,vmlinuz,bzImage,zImage的区别和联系
- 关于vmlinux,vmlinuz,bzImage,zImage的区别和联系
- 关于vmlinux,vmlinuz,bzImage,zImage的区别和联系 .
- vmlinuz/vmlinux/initrd/uImage/zImage的区别
- 几种linux内核文件的区别(vmlinux、zImage、bzImage、uImage、vmlinuz、initrd )
- uImage,zimage,bzimage,vmlinux,vmlinuz
- uImage,zimage,bzimage,vmlinux,vmlinuz
- uImage,zimage,bzimage,vmlinux,vmlinuz
- uImage,zimage,bzimage,vmlinux,vmlinuz
- uImage,zimage,bzimage,vmlinux,vmlinuz
- uImage,zimage,bzimage,vmlinux,vmlinuz
- nyoj744
- 在mac系统下用eclipse未正常关闭tomcat导致进程被占用
- 获取github中指定tag的代码
- VS新建工程配置
- OC 的那点事儿
- vmlinux,vmlinuz,bzimage,zimage,initrd.img的区别与联系
- 299. Bulls and Cows [easy] (Python)
- Struts2中redirect基本的经验之谈
- 【已解决】Linux下安装MySQL数据库
- nginx gzip 的使用
- java-使用字符串输出对象
- 上传excel中的内容到服务器
- kvm 虚拟化 virt-install 安装虚拟机
- Centos 6.5 - Red Hat 6.5 时区更改