Fragmentation
Fragmentation
External fragmentation exists in both memory allocations first-fit and best-fit strategies. When a process is loaded or removed from the memory then free memory space is broken down into small pieces. External fragmentation occurs when there is enough total memory space to satisfy a memory request but then the available space is not in contagious because the storage is fragmented a large number of small holes. This problem of fragmentation can be severe. we could have a block of wasted or free memory between every two processes in the worst case.
When these all small pieces of memory were in one big free block instead then it might be able to run the several more process. Use for first fit and best fit strategies they can affect the amount of fragmentation. Memory partition is shown as:
There are two types of fragmentations which are given as:
- External fragmentations
- Internal fragmentations
External Fragmentation
Over-all memory space is enough to satisfy a request or to locate a process in it, but it is not adjacent so it cannot be used.
Internal Fragmentation
Memory block allocated to process is bigger. Some slice of memory is left unused as it cannot be used by another process.
External fragmentations can be decreased by shuffle or compaction memory contents to place all free memory together in one large block. To make compaction reasonable, relocation should be dynamic. External fragmentations can be major or minor problem is totally depending on the total amount of memory storage and the average process size. According statistical analysis of first fit, for instance, disclosures that even with some optimization, given N assigned blocks, an-other 0.5 N blocks will be lost to fragmentations. That is 1/3 of memory may be remain useless. This property is known as the 50-percent rule.