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

Operating System

Blog banner

Developments in Modern Operating Systems

Blog banner

SMARTSHEET MANAGEMENT SOFTWARE

Blog banner

ADD A SPICE TO YOUR LIFE.

Blog banner

Principal of concurrency

Blog banner

MODERN OPERATING SYSTEMS

Blog banner

The Psychology of Diversity, Equity & Inclusion: How Inclusive Workplaces Boost Productivity

Blog banner

Krishna Rao SAP ID--53003230076

Blog banner

Full Disk Encryption on Digital Forensics

Blog banner

Data carving - using hex editor

Blog banner

Sniffing: A Cyber Security Threat

Blog banner

Why You Need 2FA (Two-Factor Authentication) On Your Email And Other Online Accounts

Blog banner

Starvation

Blog banner

Memory input output management

Blog banner

Service Operations Principles

Blog banner

Deadlock

Blog banner

Operating system

Blog banner

Metasploit

Blog banner

Web Site

Blog banner

What is Influencer Marketing and its Trends

Blog banner

Operating system

Blog banner

Multiprocessor and Multicore Organization

Blog banner

Google classroom

Blog banner

Uniprocessor Scheduling

Blog banner

Data Warehousing

Blog banner

CRISP-DM Methodology

Blog banner

The Memory Hierarchy

Blog banner

Mariana Trench: The deepest depths

Blog banner

KPMG (Klynveld Peat Marwick Goerdeler)

Blog banner

Kernel in Operating System

Blog banner

Diwali

Blog banner

Craziness of dream 11 and how it impacts on our life

Blog banner

File and File System Structure

Blog banner

Unlocking the Secrets: Basic Operations of Computer Forensic Laboratories

Blog banner

What is Vishing?

Blog banner

Malicious softwares

Blog banner

File Management

Blog banner

Security in Operating Systems

Blog banner

What's Better : Supervised or Unsupervised Learning

Blog banner

Memory Management

Blog banner

Platonic Solids

Blog banner

Be you

Blog banner