CIS343|510
Chapter Seven ReviewIdentify the five requirements that memory management is intended to satisfy.
1. No process should be subject to unwanted interference from another
process, whether accidental or intentional.
2. Controlled access to shared areas of memory must be allowed, without
compromising essential protection.
3. Since we cannot know ahead of time where in memory a program should
be placed, and since a program may be moved from one memory area to
another, our memory management must provide for...
4. The task of finding areas of main memory and secondary memory for a
program and of moving information between the two levels of memory.
5. Providing for the programmer useful concepts for program organization,
which may or may not exact physical parallels.
Identify these memory management techniques.
6. Main memory is divided into a number of equal-size frames. Each process
is divided into a number of equal-size units, of the same size as the frames.
7. Main memory is divided into a number of static partitions at system
generation time.
8. Each process is divided into a number of segments, not all of which are
resident at any one point in time.
9. Partitions are created as needed, so that each process is loaded into a
partition of exactly the same size as the process.
10. Each process is divided into a number of segments, all of which are
loaded into memory at run time, though not necessarily contiguously.
11. Each process is divided into frames, some of which, though not all, are
resident at run time.
Briefly characterize the fragmentation that is found with each of these memory management techniques. (For example, “no internal fragmentation, a small amount of external fragmentation”).
12. Fixed partitioning
13. Dynamic partitioning
14. Simple paging
15. Simple segmentation
16. Virtual memory paging
17. Virtual memory segmentation
18. What is compaction? Why is it needed? For which memory management
techniques is it needed?
Identify these terms related to relocation.
19. A reference to a memory location independent of the current assignment
of data to memory.
20. An address expressed as a location relative to some known point.
21. An absolute address, an actual location in main memory.
Identify these terms related to paging and segmentation.
22. The equal-size chunks that a process is divided into.
23. The equal-size chunks that memory is divided into.
24. The chunks that a program is divided into which are not necessarily all
of the same length.
25. What is the advantage of using a page size that is a power of 2?