This document discusses different types of threads including kernel threads and user threads. Kernel threads are implemented by the operating system and each user thread maps directly to a kernel thread. User threads are implemented as a library and many user threads can map to a single kernel thread. While user threads are faster, kernel threads allow for physical parallelism and better performance with I/O. Most operating systems use a hybrid approach combining user and kernel threads.