Thread
- Gewöhnlich einem Prozess fest zugeordnet
- Entspricht einem Kontrollfluss (von ggf. mehreren) dieses Prozesses
- Operiert im selben virtuellen Adressraum und mit denselben Betriebsmitteln (Ausnahme: Stack (IntroProg)) wie alle anderen Threads des Prozesses
- Hat eigene Priorität, Prozesszustand (bereit, laufend, blockiert, …), Befehlszähler, Registerwerte, die aber nicht in PCB, sondern in einer Threadtabelle gespeichert werden
- Erzeugung von neuem Prozess immer implizit mit einem Thread; Prozess selbst kann zur Laufzeit weitere anlegen
- Single-Threaded: ein Thread pro Prozess (klassische Prozesse)
- Multi-Threaded: mehrere Threads innerhalb eines Prozesses
- Grundsätzlich werden Threads aufgeteilt in
- Kernel-Level-Threads (KL-Threads): realisiert im Kernadressraum
- User-Level-Threads (UL-Threads): realisiert im Benutzeradressraum