wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Memory Management

profile
dhruvi acharya
Jul 04, 2024
0 Likes
0 Discussions
105 Reads

Memory management is an essential operating system (OS) service responsible for the efficient and secure allocation, utilization, and protection of primary memory (RAM) during program execution. It directly impacts system stability, program performance, and the ability to run multiple programs concurrently.It involves managing both primary memory (RAM) and secondary memory (SSD and hard disk).

 

Importance of Memory Management :

 

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.

 

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 (hard drive) for extending RAM. It does it by swapping temporarily less used parts of programs to virtual memory freeing up the space of RAM for current use. This allows the system to multitask more effectively by exceeding the physical memory RAM capacity.

 

Protection: The OS enforces a strict hierarchy of memory access permissions. The kernel, the core of the operating system, enjoys the highest privilege level and has unrestricted access to all memory regions. User processes, on the other hand, operate with limited privileges. They can only access memory locations explicitly allocated to them and are prohibited from modifying critical system areas. 

 

Techniques of Memory Management : 

Contiguous Memory Allocation : In contiguous memory allocation elements are allocated 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 elements are stored 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.

 

Non Contiguous Memory Allocation : In non contiguous memory allocation every element is stored in different locations (memory is not next to it like in contiguous memory allocation) blocks can be placed anywhere in physical memory. As memory is non contiguous memory is efficiently utilized and is also flexible as elements are 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 that increases the security. But there are some limitations too like it increases the complexity and also calculation of address is difficult as compared to contiguous memory allocation.


Comments ()


Sign in

Read Next

IT Service Continuity Management

Blog banner

Ethical Hacking

Blog banner

World’s rarest passport owned by 500 people.

Blog banner

Synchronization

Blog banner

Theads

Blog banner

Social Media Marketing Trends 2022

Blog banner

The Impact of Tolerances and Wall Thickness on Pipeline Integrity

Blog banner

Operating Systems

Blog banner

10 Survival Tips that might save your life

Blog banner

My Favorite Sportsperson

Blog banner

Expressing and Measuring Risk (Risk Management)

Blog banner

10 Reasons why Monica and Chandler are the best couple ever.!!!

Blog banner

Full Disk Encryption on Digital Forensics

Blog banner

NodeJs

Blog banner

Google App Engine

Blog banner

Mail merge

Blog banner

What is a geographic information system (GIS)?

Blog banner

Firewall in Computer Network

Blog banner

Virtual machine.

Blog banner

Digital Marketing

Blog banner

VIRUS

Blog banner

EVOLUTION OF THE MIRCOPROCESSOR

Blog banner

Linux Threads:

Blog banner

Device driver

Blog banner

Telegram and it's features

Blog banner

A BLOG ON MYSQL

Blog banner

Sweet and Sour Mango Pickle (Gol Keri)

Blog banner

Explain website hacking issues

Blog banner

Buffering

Blog banner

Cyber Bullying - Neeta Vonkamuti

Blog banner

Python as a tool for Data science task & project

Blog banner

Kernel Modes: User Mode vs. Kernel Mode - 80

Blog banner

Explain the concept of ( MIS) Management information systems

Blog banner

Next time you click on "Remind me later", think twice!

Blog banner

Making Money through Instagram

Blog banner

Electronic Evidence in Cyber Forensics

Blog banner

Mariana Trench: The deepest depths

Blog banner

Models of Information Security.

Blog banner

THE ACTORS LIFE

Blog banner

How India made the GIS its Own, and its Use in Infrastructural Developments

Blog banner

SmartData Collective: Data Science aur Analytics ki Duniya

Blog banner

MYNTRA

Blog banner