Free Space Management Techiniques
Free Space Management Techiniques
Free Space Management Techiniques
It keeps track of each and every memory location and It checks how much memory is to be
allocated to processes
It tracks whenever some memory gets freed or unallocated and correspondingly it updates
the status.
Contiguous Techniques
Non-contiguous Techniques
a method which allocates the memory space present in different locations to the
process as per it’s requirements
FREE SPACE MANAGEMENT TECHINIQUES
No multiprogramming
Advantages:
Fixed partitioning
Number of partitions in memory are fixed but size of each partition may or may not be
same.
simplest technique used to put more than one processes in the main memory
Advantages:
Easy to implement
Little OS overhead
Disadvantages:
Internal Fragmentation
External Fragmentation
Limited process size
Limitation on Degree of Multiprogramming
FREE SPACE MANAGEMENT TECHINIQUES
Internal fragmentation
Internal fragmentation happens when the memory is split into mounted-sized blocks.
Whenever process is requested for the memory, the mounted-sized block is allotted to it
In the case where the memory allotted to the process is somewhat larger than the memory
requested, then the difference between allotted and requested memory is called internal
fragmentation
External fragmentation
External fragmentation happens when there’s a sufficient quantity of area within the
memory to satisfy the memory request of a process.
However, the process’s memory request cannot be fulfilled because the memory offered is
in a non-contiguous manner.
FREE SPACE MANAGEMENT TECHINIQUES
Variable partitioning
Initially main memory is empty and partitions are made during the run-time according to
process’s need instead of partitioning during system configure
Number of partitions are not fixed and depends on the number of incoming process and
Main Memory’s size
No Internal Fragmentation
Difficult Implementation
External Fragmentation
FREE SPACE MANAGEMENT TECHINIQUES
Spanning is allowed
In non-contiguous allocation, Operating system needs to maintain the table for each
process which contains the starting address of the each block which is acquired by the
process in memory space
Paging
Segmentation
Paging