Memory management requirements can be broken up into five different sections: Relocation, Protection, Sharing, Local organization, and Physical organization. Many online resources confirm these exact requirements and seem to have the same information published so it is difficult to find something unique. It will be necessary to use information from the referenced textbook to explain memory management requirements.
In a multiprogramming system, relocation is the act of moving a process into different areas of memory from which it began. To maximize efficiency, processes move into and out of main memory. Relocation therefore is essential for moving the process into available memory while keeping the memory reference information up to date.
Protection of memory is best understood as preventing unwanted access to processes resident in memory and allowing authorized access only to the level allowed when permission is granted. It is ...view middle of the document...
Logical organization has many facets to it and most programs organized into modules. There are many partitioning techniques used in logically organization. Fixed Partitioning, Dynamic Partitioning, Simple Paging, Simple Segmentation, Virtual Memory Paging, and Virtual Memory Segmentation (Stallings, 2012) are the techniques defined in the textbook. Fixed partitioning divides memory into static partitions at system generation time. Dynamic Partitioning is memory partitioning as needed when a process is loaded. Simple Paging divides main memory into equal size frames and each process into same size pages to be loaded into the frames. Simple Segmentation divides a process into segments to be loaded into dynamic partitions. Virtual Memory Paging is the same as Simple Paging but loads only what is necessary and can load nonresident pages later. Virtual Memory Segmentation is the same as Simple Segmentation but only loads the necessary segments of a process and can load nonresident segments later.
Physical organization refers to main and secondary memory (Stallings, 2012). Main memory is fast access memory, comes at a high cost and is volatile whereas secondary memory is large, slow, cheaper, and usually nonvolatile. These two levels of memory are left up to the system to manage because of the waste of programmer time with overlay programming practices.
In conclusion, memory management is composed of five major requirements. The five requirements are Relocation, Protection, Sharing, Local organization, and Physical organization (Stallings, 2012). Relocation moves data around in memory and protection is the security aspect. Sharing helps reduce duplication and can make process intercommunication faster. Logical organization organizes programs into modules and has many techniques to help memory be more efficient. Finally, physical organization is the requirement for main and secondary memory.
Stallings, W. (2012). Operating systems: Internals and design principles (7th ed.). Boston, MA: Prentice Hall.
Streicher, Martin. (2010). Speaking UNIX: Interprocess communication with shared memory. Retrieved September 30, 2013 from website: http://www.ibm.com/developerworks/aix/library/au-spunix_sharedmemory