StuBS
Startup Code

Functions

void startup_bsp () ERROR_ON_CALL("The kernel entry point shall never be called from your code!")
 Entry point of your kernel.
void kernel_init () ERROR_ON_CALL("The kernel init function shall never be called from your code!")
 Initializes the C++ environment and detects system components.
void startup_ap () ERROR_ON_CALL("The startup function for application processors shall never be called from your code!")
 Startup for application processors.

Detailed Description

Function Documentation

◆ startup_bsp()

void startup_bsp ( )

Entry point of your kernel.

Executed by boot loader. Stores Pointer to Multiboot information structure, initializes stack pointer, switches to long mode and finally calls the C++ kernel_init function

◆ kernel_init()

void kernel_init ( )

Initializes the C++ environment and detects system components.

The startup code(both for bootstrap and application processor) jumps to this high level function. After initialization it will call main() or main_ap() respectively

◆ startup_ap()

void startup_ap ( )

Startup for application processors.

This function behaves similar to startup_bsp(): Initializes stack pointer, switches to long mode and calls the C++ kernel_init function