- A thread is a basic unit of CPU utilization, consisting of a program counter, a stack, and a set of registers, ( and a thread ID. )
- There are two types of threads to be managed in a modern system: User threads and kernel threads.
- In the many-to-one model, many user-level threads are all mapped onto a single kernel thread.
- The one-to-one model creates a separate kernel thread to handle each user thread.
- The many-to-many model multiplexes any number of user threads onto an equal or smaller number of kernel threads, combining the best features of the one-to-one and many-to-one models.