From f231f2c7f2ee788b395aac37c90d36418ccf8b1a Mon Sep 17 00:00:00 2001 From: Philipp Oppermann Date: Thu, 13 Apr 2017 17:52:32 +0200 Subject: [PATCH] Print available memory areas --- src/lib.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/lib.rs b/src/lib.rs index 4602231..a30dd50 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -17,6 +17,16 @@ pub extern fn rust_main(multiboot_information_address: usize) { vga_buffer::clear_screen(); println!("Hello World{}", "!"); + let boot_info = unsafe{ multiboot2::load(multiboot_information_address) }; + let memory_map_tag = boot_info.memory_map_tag() + .expect("Memory map tag required"); + + println!("memory areas:"); + for area in memory_map_tag.memory_areas() { + println!(" start: 0x{:x}, length: 0x{:x}", + area.base_addr, area.length); + } + loop{} }