Explain Paging and Segmentation in Detail
Explain Paging and Segmentation in Detail
Paging
Paging is a memory management technique in which process address space is broken into
blocks of the same size called pages (size is power of 2, between 512 bytes and 8192 bytes).
The size of the process is measured in the number of pages.
Similarly, main memory is divided into small fixed-sized blocks of (physical) memory called
frames and the size of a frame is kept the same as that of a page to have optimum utilization
of the main memory and to void external fragmentation.
When the system allocates a frame to any page, it translates this logical address into a
physical address and create entry into the page table to be used throughout execution of the
program.
When a process is to be executed, its corresponding pages are loaded into any available
memory frames.
Suppose you have a program of 8Kb but your memory can accommodate only 5Kb at a given point in
time, then the paging concept will come into picture.
When a computer runs out of RAM, the operating system (OS) will move idle or unwanted
pages of memory to secondary memory to free up RAM for other processes and brings them
back when needed by the program.
This process continues during the whole execution of the program where the OS keeps
removing idle pages from the main memory and write them onto the secondary memory and
bring them back when required by the program.