Crate kernel [−] [src]
Core Tock Kernel
The kernel crate implements the core features of Tock as well as shared code that many chips, capsules, and boards use. It also holds the Hardware Interface Layer (HIL) definitions.
Most unsafe
code is in this kernel crate.
Reexports
extern crate core as core; |
use core::prelude::v1::*; |
pub use callback::AppId; |
pub use callback::Callback; |
pub use driver::Driver; |
pub use grant::Grant; |
pub use mem::AppPtr; |
pub use mem::AppSlice; |
pub use mem::Private; |
pub use mem::Shared; |
pub use process::Process; |
pub use process::State; |
pub use returncode::ReturnCode; |
Modules
callback |
Data structure for storing a callback to userspace or kernelspace. |
common |
Common operations in the Tock OS. |
debug |
Support for in-kernel debugging. |
driver |
System call interface for userspace applications. |
grant |
Data structure to store a list of userspace applications. |
hil |
Public traits for interfaces between Tock components. |
ipc |
Inter-process communication mechanism for Tock. |
mem |
Data structure for passing application memory to the kernel. |
memop |
Implementation of the MEMOP family of syscalls. |
mpu |
Interface for configuring the Memory Protection Unit. |
platform | |
process |
Support for creating and running userspace applications. |
returncode |
Standard return type for invoking operations, returning success or an error code. |
sched |
Tock core scheduler. |
support |
A bare-metal library supplying functions rustc may lower code to. |
syscall |
Tock syscall number definitions. |
systick |
Interface system tick timer. |
Macros
debug |
In-kernel |
debug_gpio |
In-kernel gpio debugging, accepts any GPIO HIL method |
debug_verbose |
In-kernel |
register_bitfields |
Define register types and fields. |
register_bitmasks |
Helper macro for defining register fields. |
static_init |
Allocates a global array of static size to initialize data structures. |
storage_volume |
Allocates space in the kernel image for on-chip non-volatile storage. Storage volumes are placed after the kernel code and before relocated variables (those copied into RAM on boot). They are placed in a section called ".storage". |
Traits
Chip |
Interface for individual MCUs. |
Platform |
Interface for individual boards. |
SysTick |
Interface for the system tick timer. |
Functions
main |
Main loop. |