Structure of the boot header

The boot header structure struct startup_header is defined in the include file <sys/startup.h>. It is 256 bytes in size and contains the following members, which are examined by the IPL and/or startup code:

A valid image (for bootable images) is detected by performing a checksum (via the function call checksum()) over the entire image, as follows:

checksum (image_paddr, startup_size);
checksum (image_paddr + startup_size, stored_size - startup_size);