What is Memory Management

CPU to share between multiple processes may extend to its use and performance. CPU  utilization and enhance performance, all processes are kept together in primary memory. So CPU (CPU) to increase the performance of the sharing of memory is required. Main memory organization and management of the major factors affecting the operating system's design.
  Primarily to process requests in regards to memory management to allocate main memory, since no long run can not be processed until the memory allocated to it is not.

 
Memory Management
Memory Management

Memory management schemes



Single Process Monitoring: -

            Single Process Monitor is the most simple memory management approach. In this approach, the memory is divided into two parts, the first part is for the operating system, programs, called the monitor. The second part is for the user program. This type of approach, operating system, memory locations of the first and the last figure holds for the location of the user program. To provide contiguous area for user program, the operating system is loaded into memory the top or trough. Since interrupt vector, short stays in memory. So the operating system program, which is also called the monitor, are placed in low memory.


Multiprogramming: -

            Multiprogramming in environments with more than one program are stored in primary memory and the CPU faster than one program to another program control passes between. Multiprogramming in the main memory is divided into several parts and each part is one Allocate process.

Memory partitioning can be of two types-the

- Static partitioning

- Dynamic partitioning

Static partitioning in the system generation process start time, ie, the memory is divided into different size of the partition and the partition size can not change. In the dynamic partition memory into different partitions, is divided into run-time, as well as the partition size is determined by the operating system.

 Relocation

            Relocation means any program desired to be executed is loaded into memory partition. Address or physical address of the primary memory Vrichual translated into real addresses when and how, depending on the relocation process or program can be of two types-Static and Dynamic Relocation Relocation. Moved by the linker or loader moved while loading a program into memory before or is shifted, then the static Relocation Relocation call this approach.

Dynamic Relocation

            Dynamic relocation process when someone is on the schedule, the base register is loaded with the starting address. Each memory addresses (which are automatically generated) before sending in the main memory, the base register is added to the content .

Dynamic partitioning

            Fixed Size partitioning of the biggest problem is that the partition size is smaller in the case of the wastage of memory. To overcome this problem, a dynamic partitioning approach is used for memory management. Dynamic partitioning (or variable partitioning) according to the needs of each request process are dynamically create a proper partition. When a process is terminated or swap-out, the memory manager to partition the empty space that is returned to the free memory area in which the allocation is made Partisns. Dynamic partitioning nor the size of dynamically allocated partition nor a limit to the number of partitions. Because the memory manager, to process the request and then create a partition that is allocated until the completion of the physical memory space is not completely filled.

 Paging

            Paging is a memory management technique, a process by which the physical address physical memory is used to store non-contiguous manner. Ie either by paging memory to process any potential physical addresses can be assigned. In the first physical memory paging is divided into blocks of fixed size, which adds frames. Then divided into logical blocks of memory size is fixed, which says Pages. When a program is running, then the pages from disk or storage of any banking are loaded into a memory frame. Into fixed-size blocks of disk storage or banking is divided. Frames size of these blocks is equal to the size of memory.

 Segmentation


Segmentation is a memory management scheme, which the programmer to think in terms of memory supports. No one program can translate Time logically related entities Segments are created group together. Formation of these Segments vary according to the compiler.

Virtual memory

            Virtual memory is a memory management technology, the program split into pieces and swap-in and swap-out of the works. By the way virtual memory or execute programs that can be loaded into the memory, whose size exceeds the physical memory. Virtual memory management techniques, except in the memory of all processes execute their stay before or are required to keep in memory. But by the virtual memory to execute those processes can be used, which are held entirely in memory. This type of physical memory to virtual memory programmer generates the illusion of having more than the actual size. Paged virtual memory or Segmented memory management technique that can be implemented as an extension, Demand paging or segmentation Demand says.

Post a Comment

0 Comments