Trait kernel::platform::KernelResources
source · [−]pub trait KernelResources<C: Chip> {
type SyscallDriverLookup: SyscallDriverLookup;
type SyscallFilter: SyscallFilter;
type ProcessFault: ProcessFault;
type ContextSwitchCallback: ContextSwitchCallback;
type Scheduler: Scheduler<C>;
type SchedulerTimer: SchedulerTimer;
type WatchDog: WatchDog;
fn syscall_driver_lookup(&self) -> &Self::SyscallDriverLookup;
fn syscall_filter(&self) -> &Self::SyscallFilter;
fn process_fault(&self) -> &Self::ProcessFault;
fn scheduler(&self) -> &Self::Scheduler;
fn scheduler_timer(&self) -> &Self::SchedulerTimer;
fn watchdog(&self) -> &Self::WatchDog;
fn context_switch_callback(&self) -> &Self::ContextSwitchCallback;
}
Expand description
Combination trait that boards provide to the kernel that includes all of the extensible operations the kernel supports.
This is the primary method for configuring the kernel for a specific board.
Required Associated Types
The implementation of the system call dispatch mechanism the kernel will use.
The implementation of the system call filtering mechanism the kernel will use.
The implementation of the process fault handling mechanism the kernel will use.
The implementation of the context switch callback handler the kernel will use.
The implementation of the scheduling algorithm the kernel will use.
The implementation of the timer used to create the timeslices provided to applications.
Required Methods
fn syscall_driver_lookup(&self) -> &Self::SyscallDriverLookup
fn syscall_driver_lookup(&self) -> &Self::SyscallDriverLookup
Returns a reference to the implementation of the SyscallDriverLookup this platform will use to route syscalls.
fn syscall_filter(&self) -> &Self::SyscallFilter
fn syscall_filter(&self) -> &Self::SyscallFilter
Returns a reference to the implementation of the SyscallFilter this platform wants the kernel to use.
fn process_fault(&self) -> &Self::ProcessFault
fn process_fault(&self) -> &Self::ProcessFault
Returns a reference to the implementation of the ProcessFault handler this platform wants the kernel to use.
Returns a reference to the implementation of the Scheduler this platform wants the kernel to use.
fn scheduler_timer(&self) -> &Self::SchedulerTimer
fn scheduler_timer(&self) -> &Self::SchedulerTimer
Returns a reference to the implementation of the SchedulerTimer timer for this platform.
Returns a reference to the implementation of the WatchDog on this platform.
fn context_switch_callback(&self) -> &Self::ContextSwitchCallback
fn context_switch_callback(&self) -> &Self::ContextSwitchCallback
Returns a reference to the implementation of the ContextSwitchCallback for this platform.