Pthreads. Upthreads is a user space implementation of the POSIX thread library implemented using setjmp/longjump (or equivalent). This libpthreads implementation is useful when threads are needed in deeply embedded systems with little OS support. I developed Upthreads while considering a port of a JVM onto an extremely primitive OS -- nearly bare hardware.
Add-Ons. In addition to the basic pthreads, UPthread can also be configured to support POSIX Message Queues and POSIX Semaphores.
Process Scope. All threads operate with in a single "process." The system/OS outside of UPthreads has no knowledge of the threads. In this since, UPthreads have process scope (vs. system scope).
Non-preemptible. UPthreads are very fast and very compact. What you lose with Upthreads is pre-emptibility and, hence, probably some response time.
Thread Pools? However, I have been considering some options to improve this. I am thinking about incorporating a thread pool. In the base UPthreads, a single thread services many "apparent" threads using setjmp and longjmp to perform context switches. By adding a thread pool -- of say 2-4 threads -- then many more "apparent" threads could be supported and with possibly very good response time.
Pre-emptibility?. Of course, another way to improve the response time would be to make UPthreads pre-emptible (via interrupts on hardware or singles in the simulated environment). Then UPthreads would be a true RTOS (see NuttX).
NuttX. UPthreads has been extended to provide a full-featured, pre-emptible, multi-threaded RTOS. That RTOS is called NuttX and is also available in SourceForge.
CheapThreads. CheapThreads (FreshMeat, Home, Google) is a similar, more mature project. UPthreads is a separate development (although the design is inspired in areas by CheapThreads). UPthreads differs primarily in that it has a BSD licence and attempts to support standard, POSIX interfaces.
Protothreads Protothreads are extremely lightweight, stackless threads designed for severely memory constrained systems.
UThread. The UThread project (SourceForge) looks interesting as well but has never released any source code.