wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Memory Management in Operating System

profile
Rishi Chauhan
Jul 04, 2024
0 Likes
0 Discussions
61 Reads

Memory management in an Operating System (OS) plays very important role in allocating memory, for using memory very efficiently or for protection of primary memory (i.e. RAM) while program is being executed. It involves managing both primary memory (RAM) and secondary memory (Solid State Drive and Hard Disk Drive). 

Importance of Memory Management :

  1. Allocating Memory : Allocating memory is important because when you install or run a program managing memory is very important. Operating System (OS) maintains track of free memory and allocates them when required. this memory allocation can be contigous (continous blocks) or non contigous (not in continous blocks seprated in memroy) both have their own advantages and disadvantages.
  2. Multitasking and Virtual Memory : To enable effiicient multitasking, operating system introduces to virtual memory technique. Virtaul memroy creates an illusion of larger memory space than physically available by utilizing secondary storage (i.e. Hard disk drive) for extending RAM. It does it by swapping temporarily  less used portions of programs to virtual memory freeing up the space of RAM for active processes. This allows the system to run multiple programs more effectively by exceeding the physical memory RAM capacity.
  3. Memory Sharing : Memory management enables sharing of memory between different processors giving them access to modify the same memory. This can help in preventing data redundancy (i.e. multiple copy of same data).It enhance the performance of applications that rely heavily on data exchange or coordinated access to common resources.

Memory Management Techniques : 

  1. Contiguous Memory Allocation : In contiguous memory allocation to process is in continous order i.e. a single contiguous block of memory. This means all memroy is assigned to a process are in a continous range. In Programming array is a good example of this in array memroy stored is in contiguous (conitnous) format. As it is contiguous it is easy to implement and calculating address is simple as compared to non contiguous. As all memory is contiguous accessing memory is fast. But as it is contiguous it is hard to allocate memory i.e. it is hard to find free conotiguous memory space. And it is also not flexible as if there is somthing stored next to that contiguous memory it will be hard to extend it.
  2. Non Contiguous Memory Allocation : In non contiguous memory allocation to process is in different locations i.e. memory is not next to it like in contiguous memory allocation i.e. blocks can be placed anywhere in physical memory. As memory is non contiguous memory utilization is efficient and it is also flexible as memroy is stored in different locations. Memory isolation is easier to implement as every memroy is at different locations so it will be hard to access the memory. But there are some limitations too like it increases the complexity and also calcualting the address is difficult as compared to contiguous memory allocation.

Comments ()


Sign in

Read Next

Process and Threading

Blog banner

Child labour

Blog banner

Microsoft Word

Blog banner

Social Media.

Blog banner

Unlocking Success: Mastering Google Ads Strategies

Blog banner

USPS mail

Blog banner

TAILS OS

Blog banner

Affiliate Marketing V/S Influencer Marketing

Blog banner

Vikrant’s first blog

Blog banner

ROLE OF THE COMPUTER FORENSICS TOOLS AND TECHNIQUES

Blog banner

Direct Memory Access

Blog banner

The khan mehtab transforming the modular switches company

Blog banner

Operating system

Blog banner

How Cyber Forensics help prevent Crimes

Blog banner

Memory Management

Blog banner

Understanding Univariate, Bivariate, and Multivariate Analysis in Data Science

Blog banner

Mental Health

Blog banner

10 Problems you face if you are an Otaku

Blog banner

Cloud Technology and its Implications for Entrepreneurship

Blog banner

Fault Tolerance

Blog banner

Process State

Blog banner

Internet of Things and cyber security

Blog banner

HUBSPOT

Blog banner

What is OS and its overview

Blog banner

How to use GIT & GITHUB

Blog banner

MY FIRST BLOG?

Blog banner

BITCOIN WALLET

Blog banner

SQL Injection practice on DVWA

Blog banner

Malicious softwares

Blog banner

Solitary Play Activities for Preschoolers: Types and Benefits

Blog banner

MoSCoW METHOD IN DATA SCIENCE

Blog banner

EVOLUTION OF THE MIRCOPROCESSOR

Blog banner

All you need to know about Cassandra

Blog banner

Race Condition in Operating Theatre

Blog banner

Navigating the Digital Battlefield: Security Breaches and Effective Countermeasures

Blog banner

15 Websites that will make your life easier ...!!!

Blog banner

What is semaphore in operating system?

Blog banner

MailChimp

Blog banner

Dangers of Using Public WiFis

Blog banner

E-learning in today's world

Blog banner

INTRODUCTION

Blog banner

Virtual Memory

Blog banner