GRUB:
  grub_main()
    + grub_cmd_linux()
    + grub_cmd_initrd()
    + grub_boot()

Linux real-mode:
  _start          (arch/x86/boot/header.S)
    + start_of_setup
      + main()   (arch/x86/boot/main.c)
        + go_to_protected_mode()

Compressed kernel:
  startup_32
    + startup_64 (arch/x86/boot/compressed/head_64.S)
      + verify_cpu()
      + make_boot_params()
      + efi_main() [EFI only]
      + extract_kernel()

64-bit kernel proper:
  startup_64            (arch/x86/kernel/head_64.S)
    + x86_64_start_kernel(real_mode_data)
      + start_kernel()

Generic init:
  start_kernel()	(init/main.c)
    + console_init()         [full kernel console]
    + rest_init()
      + kernel_init()
        + kernel_init_freeable()
          + do_basic_setup()
            + do_initcalls()
          + try_to_run_init_process("/sbin/init")
            + [user-space init executable + getty/login executables]