wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Memory Management

profile
Vansh Dedhia
Aug 17, 2024
0 Likes
0 Discussions
102 Reads

What is Memory Management?

In a multiprogramming computer, the Operating System resides in a part of memory, and the rest is used by multiple processes. The task of subdividing the memory among different processes is called Memory Management. Memory management is a method in the operating system to manage operations between main memory and disk during process execution. The main aim of memory management is to achieve efficient utilization of memory. In Simpler words, Memory management is the process of controlling and coordinating a computer's main memory. It ensures that memory space are properly managed and allocated so the operating system (OS), applications and other running processes have the memory they need to carry out their operations. So the functions of each process will happen smoothly.


Why memory management is Required?


1.Allocate and de-allocate memory before and after process execution.

2.To keep track of used memory space by processes.

3.To minimize fragmentation issues.

4.To proper utilization of main memory.

5.To maintain data integrity while executing of process.



The memory management techniques can be classified into following:

Contiguous memory management schemes and Non-Contiguous memory management schemes, this is explained further below,


1.Contiguous Memory Management Schemes:-

Contiguous memory management is a way to allocate memory for programs in a computer.


Let's understand with an example here,

Imagine you have a big library with many books (programs) that need to be stored on shelves (memory). Contiguous memory management assigns each book in a continuous block of shelves, so all the pages (data) of a book are together in one place.


It is discussed below how it will work:

1.Fixed-size partitions: Divide the library (memory) into fixed-size sections (partitions) like small, medium, and large shelves.

2.Program allocation: When a program (book) needs memory, find a partition that fits its size and allocate it.

3.Continuous block: Assign a continuous block of shelves within the partition to the program, so all its data is stored together.


2.Non-Contiguous memory management schemes:-

Non-Contiguous memory management is a way to allocate memory for programs in a computer, where programs don't need to be stored in a single, continuous block of memory. Here's a simplified explanation:


Let's take the same example from above to understand and relate with it, Non-Contiguous memory management allows books to be stored in different sections of the library, as long as there's enough space.


Let's understand how it will works:-

1.Paging: Divide the library (memory) into small, equal-sized sections called pages.

2.Program allocation: When a program (book) needs memory, allocate pages from anywhere in the library.

3.Page table: Keep a page table (index) to track which pages belong to which program.


Comments ()


Sign in

Read Next

How College Events Build Real-world Skills You Can’t Learn From Textbooks

Blog banner

Topic: Sessions in Operating system

Blog banner

STARVATION

Blog banner

NETWORK SECURITY RISKS

Blog banner

Why Data Security Is Important

Blog banner

The Art of Slow Fashion: Why Patola Defines Sustainable Luxury

Blog banner

Article on Fresh Book

Blog banner

I/O Buffering

Blog banner

Fault Tolerance in an Operating System

Blog banner

Data-Driven Prediction of Virtual Item Prices in Online Games

Blog banner

Deadlocks in Operating System

Blog banner

"Games and the future"

Blog banner

Modern operating system

Blog banner

Memory Management Techniques

Blog banner

Deadlock

Blog banner

Smitten Kitchen Keepers

Blog banner

Dal Bafla Recipe

Blog banner

Linux 94

Blog banner

My First Trek - Sondai, Karjat - Shoaib Malik

Blog banner

AI and Cyber Security

Blog banner

Routers

Blog banner

You'll get to know about Pankaj Negi

Blog banner

Tomato Butter Sauce with Bucatini

Blog banner

Business Intelligence v/s Big Data

Blog banner

AutoML: The Future of Automated Data Science

Blog banner

What Your Child Learns During Free Play (That You Might Not Notice)

Blog banner

A Traveller’s Guide to Offbeat Places in Arcadia, Florida

Blog banner

Networking 101: How to Build Meaningful Connections in College

Blog banner

IT Service Continuity Management

Blog banner

The seven-step improvement process

Blog banner

(Input/Output) in os

Blog banner

Telegram and it's features

Blog banner

How to Encrypt and Decrypt Using GNU PGP

Blog banner

Earth with no trees

Blog banner

Improving defences Proxy Device(defense in depth)

Blog banner

Understanding Gen Z: A Generation Facing Crisis and Potential

Blog banner

Junk food vs healthy food

Blog banner

Types of Malware in Cyber Security

Blog banner

Time Series Analysis

Blog banner

Evolution of Operating system

Blog banner

Real-time Scheduling - 53003230061

Blog banner

Uniprocessor Scheduling

Blog banner