Chapter 8: Memory Management

1442 Words3 Pages

In the previous chapter, we discussed deadlocks, resource allocation graphs, and strategies for handling deadlocks. Deadlock is a situation where some processes wait for each other's actions indefinitely, which happens in process synchronization. Operating systems use resource allocation policies to prevent and avoid deadlocks. In this chapter, we’ll discuss the various memory management techniques such as main memory, swapping, memory allocation, paging, and segmentation.

(1)Objectives

In this chapter, the student will:

1. Explain what memory management is and why it is important.

2. Be able to identify different memory management schemes and the processes they use to manage memory.

(1)Basic Concepts

Operating systems manage the computer’s memory by accomplishing two tasks. In the first task, each process must have enough memory to execute. After the process is executed, it must not invade the memory space of another process. This task requires that the operating system have memory boundaries set up. In the second task, the different types of memory in the system must be used properly so that each process is able to run effectively.

When applications are loaded into memory, they are loaded into block sizes that are determined by the operating system. For example, if the block size is 2 kilobytes (kB), then each process that is loaded into memory will be given a block of memory in the size of 2kB. Application are also loaded in these fixed block sizes with the blocks beginning and ending on the boundaries established. These blocks and boundaries ensure that the applications aren’t loaded on top of each other’s memory space.

However, most of the information that an application stores in memory is not being used at any g...

... middle of paper ...

...sm to control memory access rights on a computer and its purpose is to prevent a process from accessing memory that has not been allocated to it. All memory allocated to a process must be protected to guard against interference by other processes. This is not achieved by software, but it is achieved by implementing support from the computer's architecture: memory bound registers and memory protection keys associated with areas of memory. The memory bound registers is implemented using the lower-bound register (LBR) and the upper-bound register (UBR) in the CPU. These registers contain the beginning and ending addresses of the memory area allocated to a process. These registers are stored in the memory protection information (MPI) field of the program status word (PSW), which is an internal register to the CPU denoting the state of the computer at a moment in time.

Open Document