1. Process :
Process is an activity of executing a program. Process is of two types – User process and System process. Process control block controls the operation of the process.
2. User Level Thread :
On the basis of level, threads are of two types:
- User level
- Kernel Level
User level thread is a type of thread in which threads of a process are managed at user level. User threads are scheduled by thread library (user mode).
Difference between Process and User Level Thread:
PROCESS |
USER LEVEL THREAD |
Process is a program being executed. |
User level thread is the thread managed at user level. |
It is high overhead. |
It is low overhead. |
There is no sharing between processes. |
User level threads share address space. |
Process is scheduled by operating system. |
User level thread is scheduled by thread library. |
Blocking one process does not affect the other processes. |
Blocking one user Level thread will block whole process of the thread. |
Process is scheduled using process table. |
User level thread is scheduled using thread table. |
It is heavy weight activity. |
It is light weight as compared to process. |
It can be suspended. |
It can not be suspended. |
Suspension of a process does not affect other processes. |
Suspension of user level thread leads to all the threads stop running. |
Its types are – user process and system process. |
Its types are – user level single thread and user level multi thread. |
Each process can run on different processor. |
All threads should run on only one processor. |
Processes are independent from each other. |
User level threads are dependent. |
Process supports parallelism. |
User level threads do not support parallelism. |
Level Up Your GATE Prep!
Embark on a transformative journey towards GATE success by choosing
Data Science & AI as your second paper choice with our specialized course. If you find yourself lost in the vast landscape of the GATE syllabus, our program is the compass you need.