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. Kernel Thread:
Kernel thread is a type of thread in which threads of a process are managed at kernel level. Kernel threads are scheduled by operating system (kernel mode).
Difference between Process and Kernel Thread:
|Process is a program being executed.||Kernel thread is the thread managed at kernel level.|
|It is high overhead.||It is medium overhead.|
|There is no sharing between processes.||Kernel threads share address space.|
|Process is scheduled by operating system using process table.||Kernel thread is scheduled by operating system 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 kernel thread leads to all the threads stop running.|
|Its types are – user process and system process.||Its types are – kernel level single thread and kernel level multi thread.|
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.
- Difference between User Level thread and Kernel Level thread
- Relationship between User level thread and Kernel level thread
- Difference between Process Image and Multi Thread Process image
- Difference between Thread.start() and Thread.run() in Java
- Difference between Process and Thread
- Difference between Process and User Level Thread
- Difference between Thread Context Switch and Process Context Switch
- Difference between Operating System and Kernel
- Process-based and Thread-based Multitasking
- Monolithic Kernel and key differences from Microkernel
- Allocating kernel memory (buddy system and slab system)
- Kernel I/O Subsystem in Operating System
- The Linux Kernel
- Kernel in Operating System
- Process Table and Process Control Block (PCB)
- Process states and Transitions in a UNIX Process
- Process Scheduler : Job and Process Status
- Pass the value from child process to parent process
- Difference between Product and Process
- Difference between Program and Process
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.