Expand description
ArceOS user program library, with an interface similar to rust std, but calling the functions directly in ArceOS modules, instead of using libc and system calls.
Cargo Features
- CPU
smp
: Enable SMP (symmetric multiprocessing) support.fp_simd
: Enable floating point and SIMD support.
- Memory
alloc
: Enable dynamic memory allocation.paging
: Enable page table manipulation.
- Interrupts:
irq
: Enable interrupt handling support. This feature is required for some multitask operations, such assync::WaitQueue::wait_timeout
and non-spinningthread::sleep
.
- Task management
multitask
: Enable multi-threading support.sched_fifo
: Use the FIFO cooperative scheduler.sched_rr
: Use the Round-robin preemptive scheduler.
- Device and upperlayer stack
fs
: Enable file system support.net
: Enable networking support.display
: Enable graphics support.bus-mmio
: Use device tree to probe all MMIO devices.bus-pci
: Use PCI bus to probe all PCI devices.
- Logging
log-level-off
: Disable all logging.log-level-error
,log-level-warn
,log-level-info
,log-level-debug
,log-level-trace
: Keep logging only at the specified level or higher.
- Platform
platform-pc-x86
: Specify for use on the corresponding platform.platform-qemu-virt-riscv
: Specify for use on the corresponding platform.platform-qemu-virt-aarch64
: Specify for use on the corresponding platform.
- Other
cbindings
: Generate C bindings, to support C applications.
Re-exports
pub use alloc::boxed;
pub use alloc::format;
pub use alloc::string;
pub use alloc::vec;
pub use alloc::vec;
Non-no_global_oom_handling
Modules
- cbindings
cbindings
Exported C bindings, to call ArceOS funtions from C code. - display
display
Graphics manipulation operations. - Inspection and manipulation of the process’s environment.
- fs
fs
Filesystem manipulation operations. - Traits, helpers, and type definitions for core I/O functionality.
- net
net
Networking primitives for TCP/UDP communication. - Random number generator.
- Useful synchronization primitives.
- Native threads.
- Temporal quantification.
Macros
- Logs a message at the debug level.
- Logs a message at the error level.
- Logs a message at the info level.
- Prints to the standard output.
- Prints to the standard output, with a newline.
- Logs a message at the trace level.
- Logs a message at the warn level.