Crate ostd

Source
Expand description

The standard library for Asterinas and other Rust OSes.

Re-exports§

pub use self::prelude::Result;

Modules§

arch
Platform-specific code for the x86 platform.
boot
The architecture-independent boot module, which provides
bus
Bus probe error
console
Console output.
cpu
CPU-related definitions.
io
Device I/O access and corresponding allocator.
irq
Handling of Interrupt ReQuests (IRQs).
logger
Logger injection.
mm
Virtual memory (VM).
panic
Panic support.
prelude
The prelude.
smp
Symmetric Multi-Processing (SMP) support.
sync
Useful synchronization primitives.
task
Tasks are the unit of code execution.
timer
The timer support.
user
User mode.
util
Utility types and methods.

Macros§

const_assert
Asserts that a boolean expression is true at compile-time.
cpu_local
Defines a statically-allocated CPU-local variable.
cpu_local_cell
Defines an inner-mutable CPU-local variable.
early_print
Prints to the console.
early_println
Prints to the console with a newline.
if_tdx_enabled
Inserts a TDX-specific code block.
impl_frame_meta_for
Makes a structure usable as a frame metadata.
impl_untyped_frame_meta_for
Makes a structure usable as untyped frame metadata.
ptr_null_of
Creates a pointer whose type matches the expression, but whose value is always NULL.

Enums§

Error
The error type which is returned from the APIs of this crate.

Traits§

Pod
A marker trait for plain old data (POD).

Attribute Macros§

global_frame_allocator
A macro attribute for the global frame allocator.
global_heap_allocator
A macro attribute to register the global heap allocator.
global_heap_allocator_slot_map
A macro attribute to map allocation layouts to slot sizes and types.
main
A macro attribute to mark the kernel entry point.
panic_handler
A macro attribute for the panic handler.

Derive Macros§

Pod
Deriving Pod trait for a struct or union.