Expand description
§FreeRTOS-in-Rust - FreeRTOS Kernel in Rust
This crate provides a pure-Rust implementation of the FreeRTOS kernel, translated line-by-line from the original C source code.
§Features
port-dummy- Dummy port for compilation (default, panics at runtime)arch-32bit- 32-bit architecture types (default)arch-64bit- 64-bit architecture typestick-32bit- 32-bit tick counter (default)tick-64bit- 64-bit tick counteralloc- Enable memory allocation via Rust’s global allocatorstd- Enable std for host testing (allocation is selected independently)port-test- Deterministic host test portall-kernel-features- Enable kernel capabilities without selecting a port, integer width, allocator, or SMP modelist-data-integrity-check- Enable list data integrity checks
Production targets must set default-features = false and enable exactly
one hardware port. The default port-dummy selection is compile-only and
cannot start a scheduler.
Re-exports§
Modules§
- config
- FreeRTOS Configuration
- kernel
- FreeRTOS Kernel Core
- memory
- Memory Allocation
- port
- Port Layer
- sync
- Safe synchronization primitives for FreeRTOS
- trace
- Trace Hooks
- types
- FreeRTOS Base Types
Macros§
- PRIVILEGED_
FUNCTION - Marker for privileged functions (no-op in non-MPU ports) [AMENDMENT] In Rust, this is a no-op. MPU support would need different handling.
- traceENTER_
pcTimer GetName - traceENTER_
pvTimer GetTimerID - traceENTER_
uxTimer GetReload Mode - traceENTER_
uxTimer GetTimer Number - traceENTER_
vTimer SetReload Mode - traceENTER_
vTimer SetTimerID - traceENTER_
vTimer SetTimer Number - traceENTER_
xTimer Create - traceENTER_
xTimer Create Static - traceENTER_
xTimer Create Timer Task - traceENTER_
xTimer Generic Command FromISR - traceENTER_
xTimer Generic Command From Task - traceENTER_
xTimer GetExpiry Time - traceENTER_
xTimer GetPeriod - traceENTER_
xTimer GetReload Mode - traceENTER_
xTimer GetStatic Buffer - traceENTER_
xTimer GetTimer Daemon Task Handle - traceENTER_
xTimer IsTimer Active - traceENTER_
xTimer Pend Function Call - traceENTER_
xTimer Pend Function Call FromISR - tracePEND_
FUNC_ CALL - tracePEND_
FUNC_ CALL_ FROM_ ISR - traceRETURN_
pcTimer GetName - traceRETURN_
pvTimer GetTimerID - traceRETURN_
uxTimer GetReload Mode - traceRETURN_
uxTimer GetTimer Number - traceRETURN_
vTimer SetReload Mode - traceRETURN_
vTimer SetTimerID - traceRETURN_
vTimer SetTimer Number - traceRETURN_
xTimer Create - traceRETURN_
xTimer Create Static - traceRETURN_
xTimer Create Timer Task - traceRETURN_
xTimer Generic Command FromISR - traceRETURN_
xTimer Generic Command From Task - traceRETURN_
xTimer GetExpiry Time - traceRETURN_
xTimer GetPeriod - traceRETURN_
xTimer GetReload Mode - traceRETURN_
xTimer GetStatic Buffer - traceRETURN_
xTimer GetTimer Daemon Task Handle - traceRETURN_
xTimer IsTimer Active - traceRETURN_
xTimer Pend Function Call - traceRETURN_
xTimer Pend Function Call FromISR - traceTIMER_
COMMAND_ RECEIVED - traceTIMER_
COMMAND_ SEND - traceTIMER_
CREATE - traceTIMER_
EXPIRED
Functions§
- delay
- Delays the current task for the specified number of ticks.
- delay_
ms - Delays the current task for the specified number of milliseconds.
- start_
scheduler - Starts the FreeRTOS scheduler.