Online Tutorials & Training Materials | STechies.com
Register Login
Advertisement

Difference between Paging and Segmentation Comparison Chart

|| 0

Difference between Paging and Segmentation Comparison Chart
Stechies

Operating systems allow for more virtual memory allocation than the entire size of actual (physical) memory space on any given computer system. Before we set out to explain paging and segmentation, do know that they are both parts of memory management and an important function of operating systems.

Segmentation and paging help memory management processes unite large-sized slow memory along with small-sized high-speed memory for the sake of achieving higher-speed memory for more effective use.

Here, we aim to throw light on paging and segmentation in the operating system, the difference between segmentation and paging, etc. in the simplest of ways. Read on for a closer look at what is segmentation in computer architecture and the points highlighting segmentation vs paging via a table and points.

Segmentation vs Paging in OS

Basis of Difference

Paging

Segmentation

Function

Paging is utilized for getting a large linear address space. This can be done without having to purchase more physical memory.

Segmentation permits codes, programs, and data to break up into independent address spaces. These spaces help in sharing and protection of the programs.

Sharing of Procedures

Paging does not facilitate any sharing of procedures.

Segmentation allows for the sharing of procedures.

Knowledge of Memory limits

Paging is transparent and clear for programmers as the system manages it automatically.

 

Segmentation makes it essential for programmers to have prior knowledge of memory limits. This has to be done even as the programmer

attempts to allocate memory space to functions and/or variables; or strives to reach the read

only memory violation that eventually results in segmentation faults.

Security for data and procedures

Paging fails to distinguish and secure procedures and data in a separate fashion.

 

Segmentation differentiates between and secures procedures and data separately.

Physical memory

Paging is needed for getting a linear address space that is larger in size without making it important to purchase more physical memory.

Segmentation permits programs and data segregation into independent address spaces. This enables sharing and protection.

Advantages

Paging is transparent to programmers and therefore it eliminates the requirement of external fragmentation. It always ensures the efficient and effective use of the main memory space. The units that move across the main memory are of the same size and fixed. Therefore, complicated memory management algorithms for exploiting the program’s behaviour are not possible.

Segmentation is visible and can be seen by developers. This process has the capability of managing the overall growth of modularity, data structure, and provides support for the exchange and protection of data.

Memory space wastage

In paged systems, memory in its physical form is divisible into blocks of equal magnitude. Processes are designated with specified number of pages that happen to be larger than what’s required physically. Overall, lesser space is wasted when the last page is reached.

In segmented systems, as the allocated memory size is flexible in nature, the operating system allocates the desired amount of space as asked for by the process. This may lead to memory space wastage in certain cases.

What is Paging?

Paging in operating system is a means of writing data to, as well as reading it from, the secondary storage unit for the sake of using the same in the primary storage that’s referred to as the main memory. In computer architecture, paging serves a vital role in enabling memory management processes.

  • In order to define paging in OS, we have to understand how OS reads and accesses data from the secondary storage in the form of blocks called pages. These blocks or pages have same identical size.
  • The physical area of memory comprises of a singular page referred to as a frame. While using paging, the frame need not comprise of a singular physically contiguous area in the secondary storage.
  • The approach of paging in computer architecture provides users with an advantage over the conventional memory management methods. This because it allows for more efficient and speedier usage of the available storage.

What is Segmentation?

Segmentation in operating system is an important means of achieving memory protection. Segmentation in os relates to the use of an instruction operand or a memory location. It includes a value identifying a segment as well as an offset in that segment.

  • Segmentation leads to the presence of a set of permissions, as well as length, which is associated with the same.
  • In case the process running at any given point of time is permitted by the permissions to create the type of referencing to the memory that’s being attempted; in addition, if the offset present in the segment lies in the range as specified by the segment’s length; then the referencing is permitted; else a hardware exception will be raised.
  • The user program, as well as the associated data, is divisible into number of segments. These segments need not be of the same size, even though there exists a maximum segment length.
  • The logical address using the segmentation comprises of two parts - the number of segments plus the dislocations present in that segment.

Key difference between Segmentation and Paging

The main difference between paging and segmentation is as follows:

  • An important difference between paging and segmentation is that paging delivers virtual as well as physical address space It also provides a secondary memory space in the form of blocks (pages) of equivalent lengths. Segmentation gives a virtual address space in the form of blocks (segments). These blocks correspond directly to objects on the programming level. Segments have no fixed length and can be altered during program execution.
  • Yet another difference between paging and segmentation in operating system is that application developers are unaware of paging. To them, memory is linear; in addition, they know that the system and processing unit are managing the partition and converting them to virtual addresses. In segmentation systems, the segment and page are listed as two parts in the programs. The pages are of equal length while the segments are different in size.

Conclusion

This tutorial explains user about paging vs segmentation, the definitions of paging and segmentation in os, and how to explain segmentation with paging concept. Do tell us about your views on what is paging and segmentation as well, we shall wait to hear from you.


Advertisement