diff options
Diffstat (limited to 'rsdos')
| -rw-r--r-- | rsdos/src/main.rs | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/rsdos/src/main.rs b/rsdos/src/main.rs index 543556b..1169785 100644 --- a/rsdos/src/main.rs +++ b/rsdos/src/main.rs | |||
| @@ -106,6 +106,38 @@ pub extern "efiapi" fn efi_main(image_handle: Handle, system_table: *mut SystemT | |||
| 106 | 106 | ||
| 107 | dump_memory_summary(); | 107 | dump_memory_summary(); |
| 108 | 108 | ||
| 109 | if rsnix::memory::self_test() { | ||
| 110 | rsnix::serial_println!("heap: self-test OK (alloc/free/coalesce)"); | ||
| 111 | } else { | ||
| 112 | rsnix::serial_println!("heap: self-test FAILED"); | ||
| 113 | } | ||
| 114 | |||
| 115 | if rsnix::memory::init_page_allocator() { | ||
| 116 | rsnix::serial_println!("pages: bitmap allocator ready"); | ||
| 117 | } else { | ||
| 118 | rsnix::serial_println!("pages: init FAILED"); | ||
| 119 | } | ||
| 120 | if rsnix::memory::page_self_test() { | ||
| 121 | rsnix::serial_println!("pages: self-test OK (alloc/free/runs)"); | ||
| 122 | } else { | ||
| 123 | rsnix::serial_println!("pages: self-test FAILED"); | ||
| 124 | } | ||
| 125 | |||
| 126 | if rsnix::paging::adopt_tables() { | ||
| 127 | rsnix::serial_println!( | ||
| 128 | "pg: adopted own page tables (cr3={:#x})", | ||
| 129 | rsnix::paging::cr3() | ||
| 130 | ); | ||
| 131 | } else { | ||
| 132 | rsnix::serial_println!("pg: adopt_tables FAILED"); | ||
| 133 | } | ||
| 134 | |||
| 135 | if rsnix::paging::self_test() { | ||
| 136 | rsnix::serial_println!("pg: self-test OK (map/unmap/split)"); | ||
| 137 | } else { | ||
| 138 | rsnix::serial_println!("pg: self-test FAILED"); | ||
| 139 | } | ||
| 140 | |||
| 109 | rsnix::serial_println!("boot: entering shell"); | 141 | rsnix::serial_println!("boot: entering shell"); |
| 110 | shell::run(); | 142 | shell::run(); |
| 111 | } | 143 | } |
