sparreal_kernel/hal/
setup.rs1use crate::hal::al;
2
3pub fn start_kernel() -> ! {
4 crate::os::logger::init();
5 info!("Setting up allocator...");
6
7 crate::os::mem::init_heap(al::memory::memory_map());
8 al::platform::post_allocator();
9 crate::os::mem::paging::init();
10
11 al::platform::post_paging();
12
13 crate::os::time::init();
14
15 al::cpu::irq_local_set_enable(true);
18
19 unsafe extern "C" {
20 fn __sparreal_main();
21 }
22
23 unsafe { __sparreal_main() };
24
25 al::platform::shutdown()
26}