Homework Assignment #10 – Page Tables [50 pts]


You are expected to do your own work on all homework assignments. You may (and are encouraged to) engage in general discussions with your classmates regarding the assignments, but specific details of a solution, including the solution itself, must always be your own work. (See the statement of Academic Dishonesty on the Syllabus)

How to turn in?

Assignments need to be turned in via Laulima. Check the Syllabus for the late assignment policy for the course.

What to turn in?

You should turn in single plain text file named README.txt with your answers to the assignment’s questions. Your file must be readable “as is” and points will be removed if the report is not readable.


Exercise #1 [20 pts]

Consider the following page table, in which “x” means an invalid entry.

------------------
logical | physical
------------------
|  15   |    x   |
|  14   |    x   |
|  13   |    7   |
|  12   |    x   |
|  11   |    x   |
|  10   |    x   |
|   9   |    2   |
|   8   |    1   |
|   7   |    x   |
|   6   |    x   |
|   5   |    6   |
|   4   |    5   |
|   3   |    9   |
|   2   |   11   |
|   1   |    8   |
|   0   |   13   |
------------------

Assume a 8KiB page size. For convenience, in this exercise all physical and logical addresses are decimal values.

Give the physical address corresponding to the following logical addresses, or state that an error occurs (your answer should thus be decimal values and should include the details of how you performed the computation):


Exercise #2 [6 pts]

Consider a logical address space of 32 pages with 2,048 bytes per page, mapped onto a physical memory of 8 frames.


Exercise #3 [8 pts]

Consider a computer system with a 32-bit logical address and 8-KiB page size. The system supports up to 2GiB of physical memory.


Exercise #4 [16 pts + 5 pts]

Suppose we have a computer system with a 38-bit logical address, page size of 32KiB, and 8 bytes per page table entry.