Next-generation, hard real-time systems will require new, flexible function
ality and guaranteed, predictable performance. This paper describes the UMa
ss Spring threads package, designed specifically for multiprocessing in dyn
amic, hard real-time environments. This package is unique because of its su
pport for new thread semantics for real-time processing. Predictable creati
on and execution of threads is achieved because of an underlying predictabl
e kernel, the UMass Spring kernel. Design decisions and lessons learned whi
le implementing the threads package are presented. Measurements affirm the
predictability of this implementation on a representative multiprocessor pl
atform. The adoption of the threads package in the UMass Spring kernel resu
lts in additional performance improvements, which include reduced context s
witching overhead and reduced average-case memory access durations.