Homework Assignment #10 – Page Tables [50 pts]


You are expected to do your own work on all homework assignments. (See the statement of Academic Dishonesty on the Syllabus.)

Check the Syllabus for the late assignment policy for this course.

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: Address Translation [20 pts]

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

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

Assume a 2KiB (i.e., 2,048 bytes) page size. Give the physical address corresponding to the following logical addresses. For convenience, in this exercise all physical and logical addresses are decimal values.

Your answer should thus be decimal values. Show your work.


Exercise #2: Logical and physical address size [6 pts]

Consider a logical address space of 16 pages with 4,096 bytes per page, mapped onto a physical memory of 8 frames.


Exercise #3: Page table size [8 pts]

Consider a computer system with 64-bit logical addresses, 2-KiB page/frame size, and 4GiB of physical memory. (Give all answers as powers of 2.)


Exercise #4: Page table structure [16 pts]

Suppose we have a computer system with 44-bit logical addresses, page size of 64KiB, and 4 bytes per page table entry.