pub struct MemorySet {
    page_table: PageTable,
    areas: Vec<MapArea>,
}
Expand description

address space

Fields

page_table: PageTableareas: Vec<MapArea>

Implementations

Create a new empty MemorySet.

Get the page table token

Assume that no conflicts.

remove a area

Add a new MapArea into this MemorySet. Assuming that there are no conflicts in the virtual address space.

Mention that trampoline is not collected by areas.

Without kernel stacks.

Include sections in elf and trampoline and TrapContext and user stack, also returns user_sp_base and entry point.

Create a new address space by copy code&data from a exited process’s address space.

Change page table by writing satp CSR Register.

Translate a virtual page number to a page table entry

Remove all MapArea

shrink the area to new_end

append the area to new_end

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.