[−][src]Struct sunrise_bootstrap::bootstrap_stack::BootstrapStack
A structure representing a kernel stack
Fields
stack_address: VirtualAddressImplementations
impl BootstrapStack[src]
pub fn allocate_stack() -> Option<BootstrapStack>[src]
Allocates the bootstrap stack
const STACK_POISON_SIZE: usize[src]
We keep 2 poison pointers for fake saved ebp and saved esp at the base of the stack
unsafe fn create_poison_pointers(&mut self)[src]
Puts two poisons pointers at the base of the stack for the saved ebp and saved eip
pub fn get_stack_start(&self) -> usize[src]
Get the address of the beginning of usable stack. Used for initializing $esp and $ebp of a newborn process Points to the last poison pointer, for saved $ebp
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for BootstrapStack
impl Send for BootstrapStack
impl Sync for BootstrapStack
impl Unpin for BootstrapStack
impl UnwindSafe for BootstrapStack
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,