You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
685 B
685 B
Tutorial 02 - Runtime Init
tl;dr
We extend cpu.S
to call into Rust code for the first time. There,we zero the bss section before
execution is halted with a call to panic()
. Check out make qemu
again to see the additional code
run.
Notable additions
- More sections in linker script:
.rodata
,.data
.bss
_start()
:- Halt core if core !=
core0
. core0
jumps to theruntime_init()
Rust function.
- Halt core if core !=
runtime_init()
inruntime_init.rs
- Zeros the
.bss
section. - Calls
kernel_init()
, which callspanic!()
, which eventually haltscore0
as well.
- Zeros the