(5 pts.)
What is the effect of allowing two entries in a page table to point to the
same frame of memory? Explain how this effect could be used to decrease
the amount of time needed to copy a large amount of memory from one place
to another. What effect would updating some byte on the one page have on
the other page?
(5 pts.)
Compare the memory organization schemes of contiguous memory allocation
with variable partitions and pure paging with respect to the following
issues:
External fragmentation.
Internal fragmentation.
Ability to share code across processes.
(10 pts.)
Consider a simple paging system with the following parameters:
bytes of physical memory; page size of bytes; pages of
logical address space.
How many bits are in a logical address?
How many bytes in a frame?
How many bits in the physical address specify the frame?
How many entries in the page table?
How many bits in each page table entry? Assume each page table
entry contains a valid/invalid bit.
(10 pts.)
A group of operating system designers for the Gigasloth Computing Company
are thinking about ways of reducing the amount of swap space needed in
their new, disk-hungry operating system: Tiptoes . The head guru has
just suggested not bothering to save the text segment in the swap file at
all, but just swap it in directly from the program file whenever
necessary. (He is now cavorting about the room shouting ``Developers!'' at
the top of his lungs.) Discuss the advantages and disadvantages of this
approach.
(10 pts.)
Consider a system that uses pure demand paging.
When a process first starts execution, how would you characterize
the page fault rate?
Once the working set for a process is loaded into memory, how
would you characterize the page fault rate?
Assume that a process changes its locality and the size of the new
working set is too large to be stored in available free memory.
Identify some options system designers could choose from to handle
this situation.
(10 pts.)
Consider a demand-paged computer system which uses a paging drum, global
LRU replacement, and an allocation policy which shares frames equally among
processes (i.e., if there are frames and processes, then each
process gets
frames). The degree of
multiprogramming is currently
fixed at four. The system was recently measured to determine utilization
of the CPU and the paging drum. Consider each of the following to be the
results of the measurement. For each case, what is happening? Can the
degree of multiprogramming be increased to increase the CPU utilization?
Is the paging helping?