Memory Management Techniques are basic techniques that are used in managing the memory in operating system. Memory Management Techniques are basically classified into two categories:
(i) Contiguous (ii) Non-contiguous
Contiguous Memory Management Techniques:
In this technique, memory is allotted in a continuous way to the processes. It has two types:
Fixed Partition Scheme:
In the fixed partition scheme, memory is divided into fixed number of partitions. Fixed means number of partitions are fixed in the memory. In the fixed partition, in every partition only one process will be accommodated. Degree of multi-programming is restricted by number of partitions in the memory. Maximum size of the process is restricted by maximum size of the partition. Every partition is associated with the limit registers.
- Limit Registers: It has two limit:
- Lower Limit: Starting address of the partition.
- Upper Limit: Ending address of the partition.
Internal Fragmentation is found in fixed partition scheme.
To overcome the problem of internal fragmentation, instead of fixed partition scheme, variable partition scheme is used.
Variable Partition Scheme:
In the variable partition scheme, initially memory will be single continuous free block. Whenever the request by the process arrives, accordingly partition will be made in the memory. If the smaller processes keep on coming then the larger partitions will be made into smaller partitions.
External Fragmentation is found in variable partition scheme.
To overcome the problem of external fragmentation, compaction technique is used or non-contiguous memory management techniques are used.
Moving all the processes toward the top or towards the bottom to make free available memory in a single continuous place is called as compaction. Compaction is undesirable to implement because it interrupts all the running processes in the memory.
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.
- Implementing Non-contiguous Memory Management Techniques
- Implementation of all Partition Allocation Methods in Memory Management
- Difference between Contiguous and Noncontiguous Memory Allocation
- Difference between Volatile Memory and Non-Volatile Memory
- Random Access Memory (RAM) and Read Only Memory (ROM)
- Introduction to memory and memory units
- Difference between Byte Addressable Memory and Word Addressable Memory
- Difference between Virtual memory and Cache memory
- Operating Systems | Memory Management | Question 1
- Program for Next Fit algorithm in Memory Management
- Overlays in Memory Management
- Requirements of Memory Management System
- First Fit algorithm in Memory Management using Linked List
- Program for Best Fit algorithm in Memory Management using Linked List
- Partition Allocation Methods in Memory Management
- Database Recovery Techniques in DBMS
- Congestion Control techniques in Computer Networks
- Analysis of different sorting techniques
- Techniques to handle Thrashing
- Resource Allocation Techniques for Processes
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.