What Is Memory Management?


4 Answers

raaga Profile
raaga answered
Main management is the responsibility of operating systems. Memory management involves the efficient allocation of the memory, its use, then freeing the memory after the program terminates.

Main memory plays vital role in the processing. It is a large array of words whose size ranges from hundreds of thousands to billions. Programs and data should be in main memory before CPU executes it. CPU reads instructions from main memory and executes
these instructions during fetch and execute cycle. In the multiprogramming environment several processes are processed simultaneously therefore all the corresponding programs must be in the memory so that they are executed properly.

It is the responsibility of the operating system to ensure the proper management of memory. In order to execute a program, it must be mapped to absolute address, as the program executes it accesses the instructions and data from main memory by generating these absolute addresses and then it terminates and then the free space is declared available that can be allocated to some other program for its execution.

In order to improve the utilization and the user response, operating system keeps track of all the running programs as well as the programs waiting in the queue. Many different memory management schemes are available, most of which are hardware dependent. Following are some main tasks of operating systems as far as memory management is concerned:
· Keeping track of the portions of memory that are being used and by whom
· Deciding which program will be loaded in the memory when some existing program terminate
· Allocation and deallocation of memory of memory whenever needed.
ayesha sana Profile
ayesha sana answered
Now a days the computer architectures put together the computer's reminiscence in a hierarchical approach, starting from the best ever registers, CPU cache and haphazard access reminiscence and disk storage. An operating system's recollection manager coordinates the make use of these a variety of types of memory by tracking which one is obtainable, which is to be to be paid or de-allocated and how to be in motion data between them. This movement, more often than not referred to as virtual memory management, adds to the amount of memory obtainable for each procedure by making the disk storage given the impression like main memory.

There is a velocity penalty connected with using disks or extra slower storage as memory – if management processes require considerably more RAM than is obtainable, the system may begin beating. This can come about either because one procedure requires a great amount of RAM or for the reason that two or more processes struggle for a superior quantity of memory than is to be had. This subsequently leads to invariable transfer of every one process's data to slower storage space.
Kainat hasan Profile
Kainat hasan answered
The needs of users can be must best by a computing that supports modular programming and the flexible use of data. System manager efficient and orderly control of storage allocation. The operating system, to satisfy these requirements has five principal storage management's responsibilities:
1) Process isolation: The operating system must prevent independent processes from interfering with the data and memory of each other.

2) Automatic allocation and management: Programs should be dynamically allocated across the memory hierarchy as required. Allocation should be transparent to the programmer. Thus, the programmer is relived of concerns relating to memory limitations, and the operating system can achieve efficiency by assigning memory to jobs only as needed.
Support of modular programming: Programmers should be able to define program modules and to create destroy and alter the size of modules dynamically.

3) Protection and access control: Sharing of memory, at any level of the memory hierarchy, creates the potential for one program to address the memory space of another.
Long-term storage: Many applications programs require means for storing information for extended periods of time, after the computer has been powered down.
ayesha sana Profile
ayesha sana answered
Significant element of memory management is organization of virtual addresses. If manifold processes are in recollection at once, they must be prohibited from intrusive with every other's memory (if not there is an explicit ask for to utilize communal memory). This is achieved by containing separate address spaces. Every one process sees the in one piece virtual address space, characteristically from address 0 up to the utmost size of virtual memory, as exclusively assigned to it.

The operating system upholds a piece of paper table that matches effective addresses to corporeal addresses. These recollection allocations are tracked so that as soon as a process comes to an end, all memory used by that progression can be completed available for additional processes.

The operating arrangement can also inscribe inactive memory pages to less important storage. This procedure is described "paging" or "exchange" – the expressions varies flanked by operating systems.

It is also characteristic for operating systems to make use of otherwise vacant physical memory as a page cache; requirements for data from a slower piece of equipment can be retained in memory to get better presentation. The operating system can also pre-load the commemorative cache with information that may be requested by the consumer in the near prospect; Super Fetch is a case in point of this.

Answer Question