Segmentation and Paging | Segmented Paging

Segmentation and Paging-

 

Before you go through this article, make sure that you have gone through the previous articles on Paging and Segmentation.

 

We have discussed-

  • Paging and Segmentation are the non-contiguous memory allocation techniques.
  • Paging divides the process into equal size partitions called as pages.
  • Segmentation divides the process into unequal size partitions called as segments.

 

Segmented Paging-

 

Segmented paging is a scheme that implements the combination of segmentation and paging.

 

Working-

 

In segmented paging,

  • Process is first divided into segments and then each segment is divided into pages.
  • These pages are then stored in the frames of main memory.
  • A page table exists for each segment that keeps track of the frames storing the pages of that segment.
  • Each page table occupies one frame in the main memory.
  • Number of entries in the page table of a segment = Number of pages that segment is divided.
  • A segment table exists that keeps track of the frames storing the page tables of segments.
  • Number of entries in the segment table of a process = Number of segments that process is divided.
  • The base address of the segment table is stored in the segment table base register.

 

Translating Logical Address into Physical Address-

 

  • CPU always generates a logical address.
  • A physical address is needed to access the main memory.

 

Following steps are followed to translate logical address into physical address-

 

Step-01:

 

CPU generates a logical address consisting of three parts-

  1. Segment Number
  2. Page Number
  3. Page Offset

 

 

  • Segment Number specifies the specific segment from which CPU wants to reads the data.
  • Page Number specifies the specific page of that segment from which CPU wants to read the data.
  • Page Offset specifies the specific word on that page that CPU wants to read.

 

Step-02:

 

  • For the generated segment number, corresponding entry is located in the segment table.
  • Segment table provides the frame number of the frame storing the page table of the referred segment.
  • The frame containing the page table is located.

 

Step-03:

 

  • For the generated page number, corresponding entry is located in the page table.
  • Page table provides the frame number of the frame storing the required page of the referred segment.
  • The frame containing the required page is located.

 

Step-04:

 

  • The frame number combined with the page offset forms the required physical address.
  • For the generated page offset, corresponding word is located in the page and read.

 

 

Diagram-

 

The following diagram illustrates the above steps of translating logical address into physical address-

 

 

Advantages-

 

The advantages of segmented paging are-

  • Segment table contains only one entry corresponding to each segment.
  • It reduces memory usage.
  • The size of Page Table is limited by the segment size.
  • It solves the problem of external fragmentation.

 

Disadvantages-

 

The disadvantages of segmented paging are-

  • Segmented paging suffers from internal fragmentation.
  • The complexity level is much higher as compared to paging.

 

Next Article- Practice Problems On Segmented Paging

 

Get more notes and other study material of Operating System.

Watch video lectures by visiting our YouTube channel LearnVidFun.

Summary
Segmentation and Paging | Segmented Paging
Article Name
Segmentation and Paging | Segmented Paging
Description
Segmented Paging in OS is a scheme that implements the combination of segmentation and paging. Segmentation and Paging are non-contiguous memory allocation techniques.
Author
Publisher Name
Gate Vidyalay
Publisher Logo
Liked this article? Share it with your friends and classmates now-