This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[Kernel Image] uImage vs zImage

Guru 24520 points

Dear All,

Please let me confirm the following question.

What is the difference between uImage and zImage?

[Background]

 In SDK v6, we can use the uImage for Kernel Image. However, SDKv7 is used the zImage for Kernel Image.

I know that I should confirm this question to open Linux community, but would you please provide your comments for my question?

If you have any questions, please let me know.

Best regards.

Kaka

  • Kaka,

    A uImage includes a U-Boot header which contains the load address that the kernel should be loaded to. This seems nice at first, but then you realize that this makes this entire kernel specific to that load address, defeating the desire to have a kernel that can run "everywhere" (well, at least as broadly as possible).

    A zImage does not have this header and therefore the load address must be provided somewhere else. Typically, this is done with a bootz U-Boot command that takes the load address and the Device Tree File address as paramaters:

    bootz loadaddr - fdtaddr

    As you mentioned, you can find a lot more information about this in the open community, but I hope this is a good overview for you.

  • Hi RonB,


    Thank you for your answer for my questions.

    My concern is cleared.

    Best regards.

    Kaka