AquilaOS documentation
How it works, and its code
Loading...
Searching...
No Matches
init.c File Reference

x86: setting up the boot CPU and memory, then on to the kernel. More...

#include <boot/boot.h>
#include <boot/multiboot.h>
#include <console/earlycon.h>
#include <core/kargs.h>
#include <core/platform.h>
#include <core/printk.h>
#include <core/string.h>
#include <cpu/cpu.h>
#include <ds/bitmap.h>
#include <sys/cpu.h>
#include <sys/lock.h>
#include <mm/mm.h>
#include <mm/vm.h>
#include <video/vbe.h>

Go to the source code of this file.

Functions

void x86_cpu_init (void)
 Sets up the boot CPU, memory and the platform, and starts the kernel (kmain()).

Variables

struct boot * __kboot
static char bsp_idle_stack [8192]

Detailed Description

x86: setting up the boot CPU and memory, then on to the kernel.

Once the kernel runs in the higher half, x86_cpu_init() sets up the boot CPU (its GDT, the IDT, the exception handlers, the FPU), reads what the boot loader passed, sets up memory and the platform, and calls kmain().

Definition in file init.c.

Function Documentation

◆ x86_cpu_init()

void x86_cpu_init ( void )

Variable Documentation

◆ __kboot

struct boot* __kboot

Definition at line 25 of file init.c.

◆ bsp_idle_stack

char bsp_idle_stack[8192]
static

Definition at line 28 of file init.c.