Module kernel::syscall

source ·
Expand description

Mechanisms for handling and defining system calls.

This includes:

  • syscall class
  • error types
  • interface trait for context switches


  • pub use crate::syscall_driver::CommandReturn;
  • pub use crate::syscall_driver::SyscallDriver;


  • ContentSwitchReason specifies why the process stopped executing and execution returned to the kernel.
  • Decoded system calls as defined in TRD 104.
  • Enumeration of the system call classes based on the identifiers specified in the Tock ABI.
  • Enumeration of the possible system call return variants specified in TRD104.
  • Enumeration of the system call return type variant identifiers described in TRD104.
  • Enumeration of the yield system calls based on the Yield identifier values specified in the Tock ABI.


  • The UserspaceKernelBoundary trait is implemented by the architectural component of the chip implementation of Tock. This trait allows the kernel to switch to and from processes in an architecture-independent manner.