Module r3::kernel[][src]

Expand description

The RTOS kernel

Modules

Static configuration mechanism for the kernel

Structs

Represents a single event group in a system.

Represents a single hunk in a system.

Represents a registered (second-level) interrupt handler in a system.

Refers to an interrupt line in a system.

The object returned by Kernel::debug. Implements fmt::Debug.

Represents a single mutex in a system.

Represents a single semaphore in a system.

Hunk for a task stack.

Represents a registered startup hook in a system.

Global kernel state.

Represents a single task in a system.

The static properties of a task.

Task control block - the state data of a task.

Represents a single timer in a system.

Enums

Error type for Mutex::lock.

Specifies the locking protocol to be followed by a mutex.

Error type for Kernel::park.

Specifies the sorting order of a wait queue.

All result codes (including success) that the C API can return.

Error type for Kernel::sleep.

Error type for Timer::stop.

Error type for Task::unpark.

Error type for wait operations such as EventGroup::wait.

Error type for wait operations with timeout such as EventGroup::wait_timeout.

Constants

The extent of how overdue the firing of timer_tick can be without breaking the kernel timing algorithm.

The extent of how overdue a timed event can be made or how far a timed event can be delayed past Duration::MAX by a call to adjust_time.

Traits

Provides access to the global API functions exposed by the kernel.

Associates “system” types with kernel-private data. Use build! to implement.

Associates “system” types with kernel-private data. Use build! to implement.

Represents a particular group of traits that a port should implement.

Implemented by a port. This trait contains items related to controlling interrupt lines.

Implemented by a port. This trait contains items related to low-level operations for controlling CPU states and context switching.

Implemented by a port. This trait contains items related to controlling a system timer.

Methods intended to be called by a port.

Type Definitions

Unsigned integer type backing event groups.

Numeric value used to identify various kinds of kernel objects.

Numeric value used to identify interrupt lines.

Priority value for an interrupt line.

Unsigned integer type representing the number of permits held by a semaphore.

Unsigned integer type representing a tick count used by a port timer driver. The period of each tick is fixed at one microsecond.