"This article covers mapping of threading and synchronization
primitives. Subsequent articles in this series will cover system
calls, networking calls, and other programming constructs.
"A thread is the basic unit of execution in OS/2. Threads are
the dispatchable units within an OS/2 process. Thread scheduling
and priority is handled entirely in the kernel.
"The Linux kernel uses a process model rather than a threading
model. However, the Linux kernel provides a lightweight process
framework for creating threads, and the actual thread
implementation is in the user space. Currently there are various
threading libraries available (LinuxThreads, NGPT, NPTL, and so
on). Research for this article was done using the LinuxThreads
library, but the information here is also applicable to Red Hat's
Native POSIX Threading Library (NPTL)..."