Each startup program consists of a main() with the following structure (in pseudo code):
Global variables main() { Call add_callout_array() Argument parsing (Call handle_common_option()) Call init_raminfo() Remove ram used by modules in the image if (virtual) Call init_mmu() to initialize the MMU Call init_intrinfo() Call init_qtime() Call init_cacheattr() Call init_cpuinfo() Set hardware machine name Call init_system_private() Call print_syspage() to print debugging output }