Technical Reports

The ICICS/CS Reading Room

UBC CS TR-95-07 Summary

Real Time Threads Interface, March 1995 David Finkelstein, Norman C. Hutchinson and Dwight J. Makaroff, 22 pages

The Real Time Threads package (abbreviated RT Threads) provides a user-level, preemptive kernel running inside a single address space (e.g., within a UNIX process). RT Threads implements thread management, synchronization, and communication functions, including communication between RT Threads environments (i.e., with different address spaces, possibly on different machines and different architectures). Threads are scheduled using a real-time, multi-priority, preemptive scheduling algorithm. Each thread is scheduled on the basis of its modifiable scheduling attributes: starting time, priority and deadline. No thread is scheduled before its starting time. Schedulable threads (i.e., threads whose starting time has passed) are scheduled on a highest priority first basis. Schedulable threads of equal priority use an earliest deadline first (EDF) scheduling policy. An RT Threads environment is cooperative in the sense that memory is shared among all threads, and each thread runs to completion unless preempted on the basis of priorities and deadlines. Alternate scheduling policies, such as time slicing, can be implemented at the application level using the scheduling mechanisms provided by RT Threads. This report describes the interface to the RT Threads package.

If you have any questions or comments regarding this page please send mail to