vmlinux

✍ dations ◷ 2025-04-27 04:44:10 #Linux内核

在linux系统中,vmlinux(vmlinuz)是一个包含linux kernel的静态链接的可执行文件,文件类型可能是linux接受的可执行文件格式之一(ELF、COFF或a.out),vmlinux若要用于调试时则必须要在引导前增加symbol table。

一般来说,核心的位置会在文件系统的 /boot 目录下,然而因为bootloader 必须使用 BIOS 的硬盘驱动程序,在一些i386的机器上必须要放在前 1024 个磁柱内。

为了克服这个限制,Linux 发行版鼓励用户创建一个扇区用来存放 bootloader 与核心相关的引导文件,例如 GRUB, LILO 与 SYSLINUX ... 。而这个扇区通常会挂载到系统的/boot 上,这是 FHS (Filesystem Hierarchy Standard) 标准内定义的。

一般来说,当创建一个可引导的核心时,此核心会先经过 zlib 算法压缩,而在核心内会包含一个相当小的解压缩程序 stub,当 stub 解压缩核心程序的时候会对 console 视窗印出"点"来表示解压缩进度。

解压缩所花费的时间在引导时间中所占程度来说其实是相当小的,而在早期的 bzImage 的发展中对于核心的大小会有所限制(特别是 i386 架构),在此情况下压缩则是必须的。

vmlinuz 是vmlinux 经过 gzip和objcopy 制作出来的压缩文件,当然不再是vmlinux的一个简单的压缩版,这么简单。vmlinuz是一种统称,有两种具体的表现形式zImage 和bzImage。bzimage和zImage的区别在于本身的大小,以及加载到内存时的地址不同,zImage在0~640KB,而bzImage则在1M以上的位置。

随着 linux Kernel 的成长,核心的内容日益增加超越了原本的限制大小。bzImage (big zImage) 格式则为了克服此缺点开始发展,利用将核心切割成不连续的存储器区块来克服大小限制。

bzImage 格式仍然是以 zlib 算法来做压缩,虽然有一些广泛的误解就是因为以 bz- 为开头,而让人误以为是使用 bzip2 压缩方式(bzip2 包所带的工具程序通常是以 bz- 为开头的,例如 bzless, bzcat ...)。

bzImage 文件是一个特殊的格式,包含了 bootsect.o + setup.o + misc.o + piggy.o 串接。piggy.o 包含了一个 gzip 格式的 vmlinux 文件(可以参看 arch/i386/boot/下的 compressed/Makefile piggy.o)

相关

  • 叠氮氯霉素叠氮氯霉素(英语:Azidamfenicol)是一种酰胺醇类抗生素,其结构与氯霉素相似。叠氮氯霉素只能外用,其制品(如滴眼液、软膏等)用于治疗敏感细菌感染。医学导航:病菌细菌(分类)gr+f/gr+a(t)/gr
  • 中国水危机中国给水排水系统的建设随着中国经济与科技的高速发展日新月异、成果斐然,但距其完善又任重道远。随着中国城市化进程的逐步加快与城乡贫富差距的进一步扩大,以及水资源短缺、
  • 沙炒沙炒,是指用沙子作为传热介质对食物进行加热的烹饪手段。沙炒主要用来加热瓜子、板栗、花生这类有壳的坚果,利用沙子可以使它们的受热更均匀。
  • 父亲父亲简称父,或称爸爸,是一种亲属关系的称谓,是子女对双亲中的男性的称呼。父亲和子女是重要的直系亲属关系之一,通常具有亲密关系。一般指参与生育小孩过程的男人(即生父);但在有些
  • 九二海战中华人民共和国中华民国九二海战发生于1958年9月2日,亦称为九二台海战役、料罗湾海战、金门料罗湾战役,属于八二三炮战中规模最大的海战。海战两方分别为中国人民解放军海军与
  • 1773年兹姆里·利姆授职仪式壁画,从前1775年到前1760年创作。现在巴黎卢浮宫博物馆。
  • 以色列国防军以色列国防军(希伯来语:.mw-parser-output .script-hebrew,.mw-parser-output .script-Hebr{font-size:1.15em;font-family:"Ezra SIL","Ezra SIL SR","Keter Aram Tsova","Ta
  • 纽约及新泽西纽约及新泽西战役(英语:New York and New Jersey campaign),是指美国独立战争于1776年7月至1777年3月期间,美国与英国在纽约州及新泽西州的多场战斗。1776年3月波士顿战役结束后,
  • 耐久力耐久力(英语:Endurance)是指生命体发挥自己的功能并在长时间内保持活跃的能力,也可指它抗击、经受、回复、免疫损害、伤口、疲倦的能力。这个词通常会在进行有氧运动和无氧运动
  • 清齿龈塞音清齿龈塞音是辅音的一种,用于一些口语中。清齿龈塞音、齿音和齿龈后音在国际音标的符号都是⟨t⟩,X-SAMPA音标的符号则是⟨t⟩。/t/十分普遍,几乎所有语言都有原位/t/音,有的甚