External fragmentation is a situation when enough

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: e loaded into this partition. This scheme of memory management was used in IBM OS/360 mainframe systems for several years. It was called MFI (Multiprogramming with a Fixed number of Tasks). It is no longer in use. Multiprogramming with Variable Number of Memory Partitions In the scheme described above, since the partitions are of fixed size, any space in a partition that is in excess of actual memory requirement of the process loaded into it is lost (remains unused) till the process terminates. On an average, 50% of the memory may remain unused due to this reason. To overcome this problem of under utilization of memory, the scheme with variable number of memory partitions was introduced. In this the scheme, number, size, and location of the partitions vary dynamically as processes come and go. This memory management scheme is illustrated in Figure 14.13 with an example. Initially, all memory in the user area is available for user processes. When a process arrives, only as much memory as is needed by it is allocated to it, keeping the rest available to satisfy future requests. As processes come and go, memory partitions get allocated and deallocated, each partition being exactly of the size of the memory required by the process to which it is allocated. Since the memory requirement of different processes is generally different, as processes come and go, various sizes of free memory blocks get created throughout the memory. The operating system maintains a table to keep track of which parts of memory are free and which are occupied. When a new process arrives, the operating system searches for a free block that is large enough for this process. If the free block is too large, it is split into two parts. One part is large enough to meet the memory requirement of the process and is allocated to the process. The other part contains the remaining memory that is entered as a smaller free block in the operating system table. When a process terminates, it releases the partition allocated to it. If the released partition is adja...
View Full Document

This document was uploaded on 04/07/2014.

Ask a homework question - tutors are online