Open In App

Swapping in Operating System

Pre-requisites: Memory Management in Operating System

To increase CPU utilization in multiprogramming, a memory management scheme known as swapping can be used. Swapping is the process of bringing a process into memory and then temporarily copying it to the disc after it has run for a while. The purpose of swapping in an operating system is to access data on a hard disc and move it to RAM so that application programs can use it. It’s important to remember that swapping is only used when data isn’t available in RAM. Although the swapping process degrades system performance, it allows larger and multiple processes to run concurrently. Because of this, swapping is also known as memory compaction.  The CPU scheduler determines which processes are swapped in and which are swapped out. Consider a multiprogramming environment that employs a priority-based scheduling algorithm. When a high-priority process enters the input queue, a low-priority process is swapped out so the high-priority process can be loaded and executed. When this process terminates, the low priority process is swapped back into memory to continue its execution. Below figure shows the swapping process in operating system:



 

Swapping has been subdivided into two concepts: swap-in and swap-out.

Advantages

Disadvantages

Only one process occupies the user program area of memory in a single tasking operating system and remains in memory until the process is completed.
When all of the active processes in a multitasking operating system cannot coordinate in main memory, a process is swapped out of main memory so that other processes can enter it.



For more information, you can refer Difference between Paging and Swapping in OS, and the Difference between Swapping and Context Switching

Article Tags :