March 1, 2013
Memory Management Requirements
In this paper I will discuss the memory management requirements for Operating Systems. The memory management requirements in operating systems are relocation, protection, sharing, logical organization, and physical organization. Memory Management
Memory management is where an operating system, like Windows or Linux, subdivides the user part of memory in order to accommodate multiple processes. This subdivision occurs in a multiprogramming system. Relocation
A basic requirement of memory management is relocation. The main memory is shared among a number of processes in a multiprogramming system. The programmer does not know in advance which programs will be taking up main memory when the program is executed. Because of this, there is a need to relocate the process to a different area of memory. Protection
The processor or hardware must satisfy the memory protection requirement rather than the operating system. Therefore, the protection requirement is only possible at the time of execution of the instruction making the reference. To accomplish this, the processor hardware must have that ability. Sharing
The memory management system must allocate access to shared areas of memory without compromising the above described protection. Processes that are cooperating on some task may need to share access to the same data structure.
Main memory is organized as a linear or one-dimensional address space that consists of sequence of bytes or words. Secondary memory at its physical level is similarly organized. Most of the programs are organized into modules. According to Stallings (2012), “Modules can be written and compiled independently, with all references from one module to another resolved by the system at run time. With modest additional overhead, different degrees of protection (read only, execute only) can be given to different...