This commit is contained in:
Niklas Gollenstede
2025-10-31 22:37:36 +01:00
commit 174fe17e89
197 changed files with 79558 additions and 0 deletions

35
kernel/boot/startup.h Normal file
View File

@@ -0,0 +1,35 @@
/*! \file
* \brief Startup of the first core, also known as bootstrap processor (BSP)
* \defgroup Startup "Bootloader and system startup"
*
*/
#pragma once
#include "../types.h"
/*! \brief Entry point of your kernel
*
* \ingroup Startup
*
* Executed by boot loader.
* Stores Pointer to \ref Multiboot information structure,
* initializes stack pointer,
* switches to long mode
* and finally calls the C++ \ref kernel_init function
*/
extern "C" void startup_bsp();
/*! \brief Initializes the C++ environment and detects system components
*
* \ingroup Startup
*
* The startup code TEMPLATE(m){(both for \ref startup_bsp "bootstrap" and \ref
* startup_ap "application processor")} jumps to this high level function. After
* initialization it will call \ref main()
*/
extern "C" [[noreturn]] void kernel_init();
/*! \brief Kernels main function
*
* Called after initialization of the system by \ref kernel_init()
*/
extern "C" int main();