wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Paging

profile
Jay Bhanushali
Aug 14, 2024
0 Likes
0 Discussions
99 Reads

As far as memory management is concerned, both unequal fixed-size partitions and variable-size partitions reflect inefficiencies. Unequal fixed-size partitions are the cause of internal fragmentation, which is when the memory space given to a process is not entirely used and as a result, there is some unused space within the partition. Variable-size partitions can, however, give rise to the problem of external fragmentation such that the free memory is distributed in small, non-contiguous blocks which makes it difficult to allocate the available spaces that are larger and contiguous.

In order to come up with a solution to these problems, the “paging” notion is introduced. In paging, the main memory is split into equal fixed-size pieces that are called frames, and the processes are also split into the same size pages. This technique is a good way to fix the fragmentation problem. So, it is like this:


  1. Page and Frame Allocation: Each page of a process can be allocated to an arbitrary free frame in memory. For example, if the process has several pages and the memory space has free frames, the OS can place these pages into any free frames, irrespective of the physical location of the pages. Hence, the requirement of needing contiguous free memory blocks is avoided.
  2. Internal fragmentation: The main waste in paging is internal fragmentation, which is confined to the last page of a process if it is not completely full. Take for instance if’s last page consists of the allocated space only partially. In that case, the remainder is wasted). Within a page that is not being used, one might find a small area that is still closed and thus not being used. However, given that the pages are fixed in size, such a loss is restricted to the last page only and is usually very small in comparison with the losses resulting from variable-size partitions.
  3. Address Translation and Page Table: The operating system is in charge of the page table for each process, which translates logical addresses into physical addresses. The physical memory frame that contains each page of the process is explicitly stated in this table. The logical address is split up into a page number and an offset which tells the position of the traveled page. The page number is the one that is used to look up the corresponding frame through the page table, and then the offset is the one that is used to find the exact location within that frame.
  4. Handling Memory Allocation: Imagine a situation when a process is to be loaded, but the available contiguous memory is insufficient, paging is the solution. The OS can now place pages in all the frames that are available, and it is not necessary to have contiguous memory allocation. For instance, if a new process requires the production of more pages than there are contiguous free frames, the OS can load these pages into non-contiguous ones that are randomly distributed in memory. This flexibility is a significant advantage over partitioning schemes that require contiguous memory allocation.


In summary, paging solves the memory fragmentation problems by splitting the whole memory into fixed-size units and allowing free allocation of these units. The OS page tables, which map the logical addresses to physical addresses, are used to manage the memory efficiently and avoid the problems of internal and external fragmentation.




Comments ()


Sign in

Read Next

Why is online marketing is important in current scenario

Blog banner

The Essential Guide to Dynamic Arrays vs. Linked Lists: Which to Use and When ?

Blog banner

Health is Wealth

Blog banner

objectives and functions of operating system

Blog banner

CoWIN

Blog banner

Data Warehousing

Blog banner

The seven-step improvement process

Blog banner

Os Virtual Memory

Blog banner

Earth with no trees

Blog banner

Impacts of Data Breach On Companies Challenges and Prevention

Blog banner

Malware Defense

Blog banner

Direct Memory Access

Blog banner

Have You Explored India Yet?

Blog banner

OPERATING SYSTEM

Blog banner

Capacity management in ITSM

Blog banner

Digital Balance: Keeping Children Mindful in the Screen Age

Blog banner

Having passion in life

Blog banner

What is 'Multi-core and Multi-threading' ?

Blog banner

Elegant fashion style

Blog banner

Types of Threads

Blog banner

Time Series Analysis

Blog banner

URL vs Domain

Blog banner

Hubspot

Blog banner

Different Types of Data

Blog banner

Multiprocessor and Multicore Organization

Blog banner

Music is life

Blog banner

MODERN OPERATING SYSTEMS

Blog banner

GIS info about Bermuda Triangle

Blog banner

Scala - a programming tool

Blog banner

Telegram and it's features

Blog banner

Objectives and Functions of Operating System

Blog banner

Goa Trip With Friends

Blog banner

Importance of Morning Routines for Students During the Festive Season

Blog banner

COMPUTER FORENSICS AND GRAPHICS

Blog banner

A Statistical Analysis of Player Performance and their Value in cricket

Blog banner

38_Network Sniffing Techniques_SBC

Blog banner

Tiranga - Abbas Haveliwala

Blog banner

Operating system

Blog banner

The Evolution of the Microprocessor ~ Aditya Pai

Blog banner

Cache memory

Blog banner

INDIAN CHEAPEST COSMETICS BRAND

Blog banner

PHONE TECHNOLOGY

Blog banner