ChorusOS 5.0 Application Developer's Guide

The Timeout Service

The timeout service enables supervisor actors to set up timeouts. A timeout may be described as a callback performed after a given delay has expired. Callbacks are performed using the LAP invocation mechanism.

The TIMEOUT feature provides the traditional one-shot timeout service. At timeout expiration, a caller-provided handler is executed directly at the interrupt level. The execution is generally performed on the interrupt stack (if it exists) with the thread scheduling disabled. The handler execution environment will be restricted accordingly. This feature is restricted to supervisor threads.

In the current version of the ChorusOS operating system, timeouts are based on a regular system-wide clock tick, and timeout granularity is determined by the clock tick.

The timeout API includes the following system calls:

svSysTimeoutCancel()

Cancel a timeout

svSysTimeoutSet()

Request a timeout

svTimeoutGetRes()

Get timeout resolution