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 operations
- console
- Console output.
- cpu
- CPU-related definitions.
- error 🔒
- io
- Device I/O access and corresponding allocator.
- logger
- Logging support.
- 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.
- trap
- Handles trap across kernel and user space.
- 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.
Statics§
- IN_
BOOTSTRAP_ 🔒CONTEXT - Indicates whether the kernel is in bootstrap context.
Traits§
- Pod
- A marker trait for plain old data (POD).
Functions§
- invoke_
ffi_ 🔒init_ funcs - Invoke the initialization functions defined in the FFI. The component system uses this function to call the initialization functions of the components.
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.