C Microkernel Realtime eXecutive
Realtime Operating System for Cortex-M based microcontrollers
 
Loading...
Searching...
No Matches
Interrupt Service Routines

Kernel services accessible from interrupt service handlers. More...

Functions

void isr_kill (Thread_t thread_id, uint32_t signal)
 Send signal from ISR context.
 
void isr_notify_object (const void *object)
 Notify object from ISR context.
 

Detailed Description

Kernel services accessible from interrupt service handlers.

Kernel interface is not accessible from the realm of interrupt service routines. Normally, interrupt service routines can't call the kernel syscalls. This behavior is by design. The idea is to do as little of work in the context of the ISR handler and then either pass the CPU to the interrupted thread, or wake up some specific thread to finish the work. Calls present in this section are not system calls, can only be called from interrupt handler context.

Function Documentation

◆ isr_kill()

void isr_kill ( Thread_t  thread_id,
uint32_t  signal 
)

Send signal from ISR context.

This routine is an equivalent of kill() syscall, which is usable from interrupt service routine context.

Parameters
thread_idthread, which should receive the signal
signalsignal to be sent

◆ isr_notify_object()

void isr_notify_object ( const void *  object)

Notify object from ISR context.

This routine is an equivalent of notify_object() syscall which is usable from interrupt service routine context.

Parameters
objectobject to be notified