next up previous contents
Next: The Main Thread-Initialization Up: Overview Previous: Memory Model


The programmer may at any time create threads with the thread_create() function. The program may save threads for later dispatch, or may run them. Each thread has a handle that represents the thread to the various thread manipulation functions, and uCR provides the ThreadQueue class as a container for holding threads. There are no tasks, as systems running uCR are not expected to have virtual memory.

Threads are generally non-preemptive, but interrupt handlers can switch threads so giving the appearance of preemptive threads. There is no special kernel mode, and interrupt handlers have no special threads attached to them.

Stephen Williams