Struct slos_hosted::hal::HostedSystem[][src]

pub struct HostedSystem {
    pub return_next_iter: bool,
    pub pending_interrupts: Vec<HostedInterrupt>,
    pub interrupts_enabled: bool,
    pub halted: bool,
    pub kmain_thread: Option<Thread>,
}
Expand description

Hosted “hardware” abstraction layer implementation

Fields

return_next_iter: bool

Whether to make kmain return in its next iteration

pending_interrupts: Vec<HostedInterrupt>

Queue of pending interrupts

interrupts_enabled: bool

Whether interrupts are enabled

halted: bool

Whether the hosted machine is halted until the next interrupt

kmain_thread: Option<Thread>

kmain std::thread::Thread

Implementations

If halted, and current thread is kmain, park thread

This will also unhalt and unpark if return_next_iter has been set. Sleeps for ~50ms on each iteration as to reduce host CPU load.

Trait Implementations

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

Disable interrupts on the current CPU

Enable interrupts on the current CPU

Return whether interrupts are enabled on the current CPU

Halt the current CPU

Name of the crate implementing this system Read more

Get a reference to the default SystemConsole instance

Has the HAL has requested an immediate kmain return?

Current CPU

Virtualization

kmain loop head hook Read more

kmain inner partial loop hook Read more

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

Performs the conversion.

Performs the conversion.

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.