1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
mod address;
mod frame_allocator;
mod heap_allocator;
mod page_table;
mod segment;
mod user_ptr;

pub use address::{FrameNumber, PageNumber, PhysicalAddress, VirtualAddress};
pub use frame_allocator::deallocate_frame;
pub use segment::{MapPermission, PageSet, KERNEL_SPACE};
pub use user_ptr::UserPtr;

pub fn init() {
    heap_allocator::init();
    frame_allocator::init();
    KERNEL_SPACE.lock().init();
}