Aufgabe 1: Ein-/Ausgabe

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

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

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

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