Skip to content
Related Articles

Related Articles

Process-Based and Thread-Based Multitasking

View Discussion
Improve Article
Save Article
Like Article
  • Difficulty Level : Easy
  • Last Updated : 03 Jan, 2022

Prerequisite: Thread, Difference between multitasking, multithreading, and multiprocessing 

A multitasking operating system is an operating system that gives you the perception of 2 or more tasks/jobs/processes running simultaneously. It does this by dividing system resources amongst these tasks/jobs/processes and switching between the tasks/jobs/processes while they are executing over and over again. Usually, the CPU processes only one task at a time, but the switching is so fast that it looks like the CPU is executing multiple processes simultaneously. They can support either preemptive multitasking, where the OS doles out time to applications (virtually all modern OSes), or cooperative multitasking, where the OS waits for the program to give back control (Windows 3.x, Mac OS 9 and earlier), leading to hangs and crashes. Also known as Timesharing, multitasking is a logical extension of multiprogramming. 

Multitasking Programming is of Two Types: 

  1. Process-based Multitasking
  2. Thread-based Multitasking
S. No.

Process-Based Multitasking

Thread-Based Multitasking

1.In process-based multitasking, two or more processes and programs can be run concurrently.In thread-based multitasking, two or more threads can be run concurrently.
2.In process-based multitasking, a process or a program is the smallest unit.In thread-based multitasking, a thread is the smallest unit.
3.The program is a bigger unit.Thread is a smaller unit.
4.Process-based multitasking requires more overhead.Thread-based multitasking requires less overhead.
5.The process requires its own address space.Threads share the same address space.
6.The process to Process communication is expensive.Thread to Thread communication is not expensive.
7.Here, it is unable to gain access over the idle time of the CPU.It allows taking gain access over idle time taken by the CPU.
8.It is a comparatively heavyweight.It is comparatively lightweight.
9.It has a faster data rate multi-tasking.It has a faster data rate multi-tasking.
10.Example: We can listen to music and browse the internet at the same time. The processes in this example are the music player and browser. Example: Using a browser we can navigate through the webpage and at the same time download a file. In this example, navigation is one thread, and downloading is another thread. Also in a word-processing application like MS Word, we can type text in one thread, and spell checker checks for mistakes in another thread. 

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!