wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Memory management

profile
Riya Singh
Aug 15, 2024
0 Likes
0 Discussions
115 Reads

The term memory can be defined as a collection of data in a specific format .The CPU fetches instructions from memory according to the value of the program counter and executes them .

To achieve a degree of multiprogramming and proper utilisation of memory, memory management is important.

Main memory is a repository of rapidly available information shared by the CPU and I/O devices. Main memory is also known as RAM (Random Access Memory).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.  

Why is Memory Management Required?

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

To keep track of used memory space by processes.

To minimize fragmentation issues.

To proper utilization of main memory.

To maintain data integrity while executing the process.

Static and Dynamic Loading

Loading a process into the main memory is done by a loader. There are two different types of loading :


Static Loading: Static Loading is basically loading the entire program into a fixed address. It requires more memory space.

Dynamic Loading: The entire program and all data of a process must be in physical memory for the process to execute. So, the size of a process is limited to the size of

physical memory.

To gain proper memory utilization, dynamic loading is used. In

dynamic loading

, a routine is not loaded until it is called. All routines are residing on disk in a

relocatable

load format. One of the advantages of dynamic loading is that the unused

routine

is never loaded. This loading is useful when a large amount of code is needed to handle it efficiently.

Static and Dynamic Linking

To perform a linking task a linker is used. A linker is a program that takes one or more object files generated by a compiler and combines them into a single executable file. 


Static Linking: In static linking, the linker combines all necessary program modules into a single executable program. So there is no runtime dependency. Some operating systems support only static linking, in which system language libraries are treated like any other object module.

Dynamic Linking: The basic concept of dynamic linking is similar to dynamic loading. In

dynamic linking, “Stub” is included for each appropriate library routine reference. A stub is a small piece of code. When the stub is executed, it checks whether the needed routine is already in memory or not. If not available then the program loads the routine into memory.



Comments ()


Sign in

Read Next

How to grow followers on Instagram business account?

Blog banner

Modern operating system

Blog banner

THE ROLE OF CYBER FORENSICS IN CRIMINOLOGY

Blog banner

Understanding the 4 Types of Learning Methods in Early Childhood

Blog banner

How Sleep Impacts Learning and Behaviour for Toddlers?

Blog banner

The art of being alone

Blog banner

Electronic data interchange

Blog banner

AI and Technology- Related Anxiety: Understanding the Psychological Impact of Living in an AI-Driven World

Blog banner

Principles of Service Operation

Blog banner

What is Password Cracking ? and it's Techniques.

Blog banner

Why Travellers from Miami & Orlando Are Visiting Arcadia for Weekend Getaways?

Blog banner

Memory Management

Blog banner

File management In Operating System

Blog banner

Pipedrive

Blog banner

From Loom to Luxury: How Patola Elevates Modern Wardrobes

Blog banner

A-B-C of Networking: Part-1 (Basics)

Blog banner

CYBERPEACEKEEPING: NEW WAYS TO PREVENT AND MANAGE CYBERATTACKS

Blog banner

MODERN OPERATING SYSTEM

Blog banner

Disk Scheduling

Blog banner

Memory Management

Blog banner

Celebrate Raksha Bandhan with Premium Dry Fruit Gift Hampers

Blog banner

KAHAWA TEA

Blog banner

How to Plan a Week of Healthy Meals Without Stress

Blog banner

Blockchain

Blog banner

Understanding E-mail Servers

Blog banner

Deadlocks in operating system

Blog banner

The Future of Web Development in 2026: Trends Every Business Must Know

Blog banner

CYBER FORENCIS: PAST, PRESENT AND FUTURE.

Blog banner

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

Blog banner

CoWIN

Blog banner

Development Of Modern Operating System

Blog banner

Earth with no trees

Blog banner

Raid and levels of raid.

Blog banner

Exploring Virtual Machines and Computer Forensic Validation Tools

Blog banner

Cyber Security Control

Blog banner

Importance of Education

Blog banner

Data Science in Mental Health Prediction

Blog banner

Install Ubuntu Easily

Blog banner

Operating system evolution

Blog banner

Gamer life

Blog banner

How covid-19 impacted Social media ad spend forecast globally

Blog banner

Cache memory

Blog banner