What is the use of vmlinux file generated when we compile linux kernel
Asked Answered
W

2

9

I am compiling Linux Kernel to my ARM board. I have seen file called vmlinux generated in kernel root folder. Can someone give good explanation about this file and it's use.

Weslee answered 26/12, 2016 at 5:1 Comment(4)
This is kernel itself wrapped in ELFBlanche
It includes all debug information. Without this file it's really hard to debug. And yes, this is not only purpose of it, just first came to my mind.Dyslogia
The vmlinux file is not used to boot ARM Linux. You typically use the zImage file. See kernel.org/doc/Documentation/arm/BootingCottrell
@sawdust: [b]zImage are compressed image formats. bzImage contains piggy.o which contains the gzip'ed vmlinux file in its data section. vmlinux is the actual executable ELF image.Benbow
R
13

vmlinux is a ELF format based file which is nothing but the uncompressed version of kernel image which can be used for debugging. The zImage or bzImage are the compressed version of kernel image which is normally used for booting.

The vmlinux as such directly cannot be used by UBoot. However, by addition of metadata info in the process of creation of uImage for vmlinux, it is possible to boot via UBoot.

Ramsden answered 23/1, 2017 at 19:17 Comment(0)
N
1

The vmlinux is the boot file in ELF format, and then the initrd file (ram disk) is run in the same directory (/boot).

The vmlinux file is practically the kernel itself.

Nigro answered 18/3, 2020 at 0:13 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.