Skip to content
Related Articles

Related Articles

Thread Models in Operating System
  • Last Updated : 26 Jun, 2020

A thread is a light weight process which is similar to a process where every process can have one or more threads. Each thread contains a Stack and a Thread Control Block. There are four basic thread models :

1. User Level Single Thread Model :

  • Each process contains a single thread.
  • Single process is itself a single thread.
  • process table contains an entry for every process by maintaining its PCB.

2. User Level Multi Thread Model :

  • Each process contains multiple threads.
  • All threads of the process are scheduled by a thread library at user level.
  • Thread switching can be done faster than process switching.
  • Thread switching is independent of operating system which can be done withing a process.
  • Blocking one thread makes blocking of entire process.
  • Thread table maintains Thread Control Block of each thread of a process.
  • Thread scheduling happens within a process and not known to Kernel.

3. Kernel Level Single Thread Model :

  • Each process contains a single thread.
  • Thread used here is kernel level thread.
  • Process table works as thread table.

4. Kernel Level Multi Thread Model :

  • Thread scheduling is done at kernel level.
  • Fine grain scheduling is done on a thread basis.
  • If a thread blocks, another thread can be scheduled without blocking the whole process.
  • Thread scheduling at Kernel process is slower compared to user level thread scheduling.
  • Thread switching involves switch.

My Personal Notes arrow_drop_up
Recommended Articles
Page :