《操作系统导论》第20章习题

《操作系统导论》第20章习题

目标: 了解多级页表的工作原理,翻译虚拟地址到物理地址

实验环境

  • The page size is an unrealistically-small 32 bytes
  • The virtual address space for the process in question (assume there is
    only one) is 1024 pages, or 32 KB
  • physical memory consists of 128 pages

Thus, a virtual address needs 15 bits (5 for the offset, 10 for the VPN).
A physical address requires 12 bits (5 offset, 7 for the PFN).

实验

以一个例子介绍地址转换过程(其实并没有完全学懂,看了代码才会计算的.....)

1.运行 python paging-multilevel-translate.py

得到128个物理页存放的内容弄,以及页目录基址寄存器(PDBR)为108,表示页目录存放在物理页page108中。

计算虚拟地址 0x611c的物理地址

将 0x611c用二进制表示为:0110 0001 0001 1100

1.最高位0不用直接抛弃,取高5位11000(dec 24)代表页目录项(PDE)索引。

2.找到以PDBR开头的索引28位置,读出该值为0xa1(bin 1010 0001).。最高位为1,表示该项指向的页表有效。

3.将0xa1最高位去除后得到0x21(dec 33),找到物理页page33。

4.取0x611c中间5位 01000(dec 8),即找到页表项(PTE)索引为8。找到page33开头的索引8位置,读出该值为0xb5(bin 1011 0101),最高位为1,表示地址有效。

5.将0xb5最高位去除后得到0x35(dec 53),此为物理帧(PFN)。

6.将物理帧和偏移地址组合即可得到物理地址。偏移地址为0x611c的最低5位,最后得到真实物理地址为0x6bc(bin 0110 1011 1100)。

终于求到了物理地址,真是不容易啊,这还只是两级页表,真实的操作系统可能涉及更多级的页表和其他复杂的机制,所以学无止境啊。

教材提供的readme文件和实验详细输出结果放在文末。

ReadMe

This fun little homework tests if you understand how a multi-level page table
works. And yes, there is some debate over the use of the term fun in the
previous sentence. The program is called:
paging-multilevel-translate.py

Some basic assumptions:

  • The page size is an unrealistically-small 32 bytes
  • The virtual address space for the process in question (assume there is
    only one) is 1024 pages, or 32 KB
  • physical memory consists of 128 pages

Thus, a virtual address needs 15 bits (5 for the offset, 10 for the VPN).
A physical address requires 12 bits (5 offset, 7 for the PFN).

The system assumes a multi-level page table. Thus, the upper five bits of a virtual
address are used to index into a page directory; the page directory entry (PDE), if valid,
points to a page of the page table. Each page table page holds 32 page-table entries
(PTEs). Each PTE, if valid, holds the desired translation (physical frame number, or PFN)
of the virtual page in question.

The format of a PTE is thus:

VALID | PFN6 ... PFN0

and is thus 8 bits or 1 byte.

The format of a PDE is essentially identical:

VALID | PT6 ... PT0

You are given two pieces of information to begin with.

First, you are given the value of the page directory base register (PDBR),
which tells you which page the page directory is located upon.

Second, you are given a complete dump of each page of memory. A page dump
looks like this:

page 0: 08 00 01 15 11 1d 1d 1c 01 17 15 14 16 1b 13 0b ...
page 1: 19 05 1e 13 02 16 1e 0c 15 09 06 16 00 19 10 03 ...
page 2: 1d 07 11 1b 12 05 07 1e 09 1a 18 17 16 18 1a 01 ...
...

which shows the 32 bytes found on pages 0, 1, 2, and so forth. The first byte
(0th byte) on page 0 has the value 0x08, the second is 0x00, the third 0x01,
and so forth.

You are then given a list of virtual addresses to translate.

Use the PDBR to find the relevant page table entries for this virtual page.
Then find if it is valid. If so, use the translation to form a final physical
address. Using this address, you can find the VALUE that the memory reference
is looking for.

Of course, the virtual address may not be valid and thus generate a fault.

Some useful options:

-s SEED, --seed=SEED the random seed
-n NUM, --addresses=NUM number of virtual addresses to generate
-c, --solve compute answers for me

Change the seed to get different problems, as always.

Change the number of virtual addresses generated to do more translations
for a given memory dump.

Use -c (or --solve) to show the solutions.

实验详细数据

c@ubuntu:~/studyos/Part20$ python paging-multilevel-translate.py -c
ARG seed 0
ARG allocated 64
ARG num 10

page 0: 1b 1d 05 05 1d 0b 19 00 1e 00 12 1c 19 09 19 0c 0f 0b 0a 12 18 15 17 00 10 0a 06 1c 06 05 05 14
page 1: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 2: 12 1b 0c 06 00 1e 04 13 0f 0b 10 02 1e 0f 00 0c 17 09 17 17 07 1e 00 1a 0f 04 08 12 08 19 06 0b
page 3: 7f 7f 7f 7f cd 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 88 7f 7f 7f 7f 7f 7f 7f 7f b9
page 4: 0b 04 10 04 05 1c 13 07 1b 13 1d 0e 1b 15 01 07 08 05 07 07 1b 0e 1b 04 11 00 1c 00 0c 18 1e 00
page 5: 17 13 1d 0a 12 02 11 19 06 08 15 07 08 1d 1e 04 1b 11 01 12 13 01 17 19 02 14 0e 07 0e 04 0a 14
page 6: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 7: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 8: 11 10 1a 12 0f 10 18 0a 11 15 1e 15 1d 0c 12 17 0a 08 1e 0a 1e 1a 06 19 1e 08 14 17 02 19 09 15
page 9: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 11: 09 10 14 1d 04 01 1a 18 17 0e 15 0c 05 0c 18 18 1d 1b 15 10 16 05 1c 16 12 0d 13 13 1b 11 06 0d
page 12: 06 0b 16 19 1c 05 14 1d 01 14 1a 0a 07 12 0d 05 0e 0c 11 0f 09 0b 19 07 11 00 16 0a 01 08 07 1d
page 13: 19 10 0b 0e 00 06 14 14 0f 1d 0e 09 1a 08 12 15 19 18 0b 01 01 16 1d 0a 0d 16 14 08 14 09 0b 10
page 14: 12 18 14 0b 00 0d 1c 0a 07 04 0f 10 02 0c 14 1d 0d 0d 0e 06 0c 14 0c 12 19 1e 1b 0b 00 12 0e 07
page 15: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 16: 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f ea 7f 7f 7f
page 17: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 18: 7f 7f 7f 7f 7f 7f ab 7f 7f 7f 8e 7f 7f 7f dd 7f 7f 7f 7f 7f 7f 7f 8b 7f 7f 7f 7f 7f 7f 7f 7f 7f
page 19: 00 13 00 01 06 14 02 01 1e 0d 1b 06 0d 0b 05 0a 1e 17 0b 0c 08 10 16 15 0e 01 1c 0c 0c 00 04 1a
page 20: 1a 19 04 02 02 0c 1d 11 08 07 03 04 19 04 1a 19 04 11 00 1a 11 17 0f 15 1c 11 1b 0a 03 00 07 19
page 21: 0b 08 1b 0e 1c 15 1e 12 1e 05 0d 11 1e 11 1a 13 0f 0c 0b 09 06 1d 10 1a 1b 1d 07 0a 13 09 04 17
page 22: 12 12 15 0f 08 1b 0a 0e 13 0f 1d 1d 1c 1c 12 0f 15 06 08 01 05 00 14 04 18 15 1e 0c 1c 0e 0a 03
page 23: 1d 0f 03 0b 0c 0f 1e 1e 11 13 14 0f 0f 09 15 02 09 1b 07 1d 1e 11 01 02 06 0a 03 18 0b 07 01 0b
page 24: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 25: 03 03 1c 03 1b 0e 0e 0a 0c 0b 11 0a 19 07 07 0e 1c 00 16 00 0c 17 0d 0d 07 0e 07 08 14 12 1c 1e
page 26: 09 0e 1d 18 08 11 15 18 0d 0c 17 0d 07 0e 1d 04 0e 13 0e 06 00 15 13 00 09 17 13 10 04 15 0e 15
page 27: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 28: 0f 1d 0f 0a 02 11 07 0b 0b 17 07 1d 17 0e 1b 0b 0b 04 18 0c 0f 0e 14 0b 1c 0d 0b 0c 17 1e 1a 0e
page 29: 17 08 1e 03 1b 01 07 10 12 0c 03 07 08 17 1c 12 01 18 09 0a 10 07 1c 05 0c 08 10 11 13 10 0c 13
page 30: 7f 7f 7f 7f 7f 84 7f 7f 7f 7f 97 7f bd 7f 7f f4 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 9c 7f
page 31: 7f 7f 7f 7f 7f 7f d0 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f
page 32: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 33: 7f 7f 7f 7f 7f 7f 7f 7f b5 7f 9d 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f f6 b1 7f 7f 7f 7f
page 34: 04 13 05 0d 0c 02 16 15 18 10 11 05 06 07 10 19 0b 1b 16 16 0a 03 1d 1a 0c 1a 1b 0a 0f 0a 15 1c
page 35: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 36: 1d 13 13 16 0c 0c 14 00 05 0a 07 13 0b 1b 11 0c 0c 15 0c 14 01 0d 08 04 10 0f 11 17 1b 0f 09 0e
page 37: 1e 0f 0a 0d 0c 10 0c 02 1e 1e 05 07 0d 15 00 19 13 08 1a 14 09 10 1e 01 15 1a 15 04 12 18 0c 12
page 38: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 39: 1b 11 1e 17 11 08 15 0e 16 0c 0f 00 16 01 15 12 18 08 15 06 10 0a 1e 1e 06 11 0a 1e 1c 12 16 15
page 40: 0d 03 0b 10 07 19 0b 07 09 19 1c 1d 00 17 10 03 07 08 0c 0e 1d 01 15 1a 0b 07 06 09 04 11 07 00
page 41: 7f 7f 7f 7f 7f 7f 7f 7f e5 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 8d 7f 7f 7f 7f 7f
page 42: 03 04 15 01 11 1c 10 15 00 13 12 11 0c 0b 1e 01 00 1d 05 03 06 18 1d 00 0d 03 08 06 14 0a 05 0f
page 43: 19 08 02 04 13 11 01 1e 0e 09 16 00 0d 14 1d 17 1b 03 0d 00 08 0b 0a 0b 18 05 19 10 0a 11 05 0f
page 44: 7f 7f 7f 7f 7f 7f cc 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f a2 7f 7f 7f 7f 7f 7f
page 45: 7f b2 7f ef 7f 7f 7f 7f a4 f5 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f
page 46: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 47: 07 0a 0f 10 02 09 0b 0c 0e 0d 02 06 13 19 0f 04 02 04 0b 11 14 10 11 0a 14 16 0c 19 17 1c 0e 0a
page 48: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 49: 1e 0a 0f 07 02 03 0d 13 10 10 03 01 0b 1d 05 08 0e 1c 1d 00 14 07 14 17 1b 15 1a 18 04 01 16 10
page 50: 16 1b 04 07 06 01 1a 0f 02 0d 0d 18 17 04 13 0f 00 04 14 0b 1d 0f 15 04 0e 16 19 06 0c 0e 0d 0e
page 51: 14 00 0f 1a 07 0a 1a 05 11 07 1d 18 0d 02 09 0f 1c 03 11 15 10 19 10 1d 12 12 0d 12 0b 11 09 05
page 52: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 53: 0f 0c 18 09 0e 12 1c 0f 08 17 13 07 1c 1e 19 1b 09 16 1b 15 0e 03 0d 12 1c 1d 0e 1a 08 18 11 00
page 54: 19 01 05 0f 03 1b 1c 09 0d 11 08 10 06 09 0d 12 10 08 07 03 18 03 16 07 08 16 14 16 0f 1a 03 14
page 55: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 56: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 57: 1c 1d 16 02 02 0b 00 0a 00 1e 19 02 1b 06 06 14 1d 03 00 0b 00 12 1a 05 03 0a 1d 04 1d 0b 0e 09
page 58: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 59: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 61: 01 05 10 02 0c 0a 0c 03 1c 0e 1a 1e 0a 0e 15 0d 09 16 1b 1c 13 0b 1e 13 02 02 17 01 00 0c 10 0d
page 62: 7f 7f 7f a8 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f
page 63: 06 12 06 0a 1d 1b 19 01 04 07 18 1a 12 16 19 02 02 1a 01 06 01 00 1a 0a 04 04 14 1e 0f 1b 0f 11
page 64: 18 12 17 08 08 0d 1e 16 1d 10 11 1e 05 18 18 1a 17 04 14 1c 11 0b 1d 11 0c 13 18 07 00 10 1d 15
page 65: 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 99 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f
page 66: 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f d7 7f 7f
page 67: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 68: 12 12 16 02 0f 06 0c 0f 0a 0c 16 01 1d 12 05 11 02 0f 15 0d 09 14 1c 1b 0b 1a 03 01 1e 17 13 11
page 69: 19 0a 19 02 0d 0a 0d 19 0f 1e 1a 03 09 00 16 00 1b 05 0c 01 09 0c 01 17 16 0b 19 02 01 0b 1b 17
page 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 71: 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 85 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f
page 72: 18 0c 00 18 05 0c 0b 03 0a 05 13 14 00 0e 11 1b 0f 02 01 1a 18 1a 08 14 02 19 0a 1d 0e 01 1c 13
page 73: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 74: 0d 0b 1e 08 18 0d 0b 01 1a 15 1b 0d 14 03 0c 06 01 1d 06 04 06 0b 10 04 1e 1e 04 0c 15 1b 0f 1c
page 75: 1a 1c 01 1b 00 14 1c 0f 0c 0a 1c 1c 13 16 0a 04 1e 14 08 1e 12 0a 1b 02 18 04 03 08 16 12 0d 04
page 76: 0c 11 15 0c 1b 1d 1e 01 19 1b 04 1d 03 06 1d 19 11 08 07 0c 00 13 01 17 02 00 08 17 19 0f 1d 03
page 77: 1c 06 16 06 00 1b 1a 02 05 07 1c 0b 19 0d 0b 17 13 08 12 15 19 14 13 12 02 1d 16 08 15 13 14 0b
page 78: 0e 02 17 1b 1c 1a 1b 1c 10 0c 15 08 19 1a 1b 12 1d 11 0d 14 1e 1c 18 02 12 0f 13 1a 07 16 03 06
page 79: 1e 1b 15 16 07 17 08 03 0e 0a 05 0d 1b 0d 0d 15 10 04 1c 0d 18 0c 19 0c 06 06 1d 12 01 0c 07 02
page 80: 1b 08 1d 1c 02 0d 17 0d 0f 19 15 1d 05 1c 1c 13 1d 07 1b 17 12 02 00 00 07 17 0b 18 13 0c 1b 01
page 81: 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f e2 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f fa
page 82: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 83: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 84: 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 94 7f 7f 7f 7f 7f ce
page 85: 7f 7f 7f 7f 7f 7f 7f 7f 9a 7f bf 7f 7f 7f 7f 7f 7f 7f 7f 7f af 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f
page 86: 7f 7f 7f 7f 7f 7f 7f c5 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f ca 7f 7f ee 7f 7f 7f 7f 7f 7f 7f 7f
page 87: 18 05 18 0d 17 0e 18 02 01 1c 0f 1b 1d 14 11 06 02 19 1b 18 15 0d 09 03 0d 11 1c 1d 0c 03 17 16
page 88: 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f c4 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f
page 89: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 90: 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f c0 7f 7f 7f 7f 7f 7f 7f 7f de 7f 7f 7f 7f 7f 7f
page 91: 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f a5 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f
page 92: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 93: 0a 1a 19 07 00 19 05 18 15 05 02 1c 12 13 0e 04 12 07 18 16 00 1c 01 02 09 04 07 0b 16 0c 08 0f
page 94: 14 06 19 07 10 14 07 13 08 05 19 11 0a 12 00 04 0c 1e 0f 02 17 18 18 11 15 06 16 19 17 0a 12 13
page 95: 0a 1d 0f 1d 1e 19 15 04 00 12 15 1d 10 15 14 06 13 1e 03 15 13 0b 18 00 1b 19 0e 03 0e 12 07 0f
page 96: 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f b6 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f
page 97: 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f c8 7f 7f 7f 7f 7f e7 7f 7f 7f 7f 7f 7f 7f 7f 7f
page 98: 15 19 18 03 17 1a 17 0e 15 03 17 08 18 13 0f 10 02 01 00 18 04 03 0b 1e 1b 09 19 02 0c 11 1e 01
page 99: 09 0b 13 04 15 0b 12 04 14 0a 0e 0c 0e 15 09 14 01 09 17 01 13 00 0e 1b 00 10 02 1a 15 17 14 00
page 100: 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f a7 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f e3 7f 7f
page 101: 0e 0a 00 01 0b 06 10 05 06 14 16 09 1a 07 0a 16 01 1c 02 0e 16 01 19 1e 0e 03 02 03 17 0c 1c 0d
page 102: 1d 03 1b 01 16 00 0d 1a 0c 1c 16 12 05 0a 0c 12 1e 08 0f 1c 0a 13 17 13 17 06 1d 05 12 09 13 09
page 103: 1e 17 1c 06 10 12 19 0e 18 0c 12 1a 18 14 00 05 0f 07 02 1a 1d 09 0c 19 01 13 03 08 19 01 01 0c
page 104: 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 80 aa 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f f0 7f 7f 7f
page 105: b3 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 93 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f
page 106: 16 0a 00 0e 10 01 11 0a 00 05 03 10 01 1c 1a 1d 09 1c 1e 17 08 14 12 0c 09 01 03 04 0e 13 17 01
page 107: 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f f1 7f 7f 7f 7f 7f 7f 7f 7f 7f f3 7f 7f 7f 7f 7f 7f 7f
page 108: 83 fe e0 da 7f d4 7f eb be 9e d5 ad e4 ac 90 d6 92 d8 c1 f8 9f e1 ed e9 a1 e8 c7 c2 a9 d1 db ff
page 109: 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 82 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f
page 110: 16 14 04 1e 0c 12 0b 01 0e 04 01 13 13 03 11 0a 0b 18 0f 1b 12 0e 13 0a 03 15 13 18 03 1c 18 1c
page 111: 08 00 01 15 11 1d 1d 1c 01 17 15 14 16 1b 13 0b 10 06 12 00 04 0a 18 16 0a 13 01 05 1e 08 0c 11
page 112: 19 05 1e 13 02 16 1e 0c 15 09 06 16 00 19 10 03 03 14 1b 08 1e 03 1a 0c 02 08 0e 18 1a 04 10 14
page 113: 1d 07 11 1b 12 05 07 1e 09 1a 18 17 16 18 1a 01 05 0f 06 10 0f 03 02 00 19 02 1d 1e 17 0d 08 0c
page 114: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 115: 11 06 01 04 0d 14 06 15 1a 17 0d 14 1e 1b 0a 15 05 11 0b 0d 0d 14 1a 0e 04 17 17 1d 0c 0e 10 1b
page 116: 0a 13 0b 11 15 0f 14 17 1a 05 06 0f 0f 19 10 1b 18 0f 19 0e 0a 0d 0e 14 01 16 1e 0e 02 06 03 07
page 117: 1b 0a 17 00 19 11 1d 0b 13 0a 18 12 1e 00 04 01 03 1c 1d 0e 1d 19 18 17 05 11 0d 1d 05 05 14 04
page 118: 11 19 02 1a 1c 05 19 1a 1b 10 12 06 15 0c 00 04 0c 1b 11 1c 1c 02 12 0a 0f 0e 0e 03 19 0f 13 0e
page 119: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 120: 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f cb 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f
page 121: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 122: 05 1e 03 12 04 1b 1d 18 09 07 17 09 0d 01 04 00 02 02 0d 11 16 04 0d 13 02 0d 0b 1d 01 0c 0c 16
page 123: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 124: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 125: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
page 126: 7f 7f 7f 7f 7f 7f 7f 7f 8c e6 cf 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 96 7f 7f 7f 7f 7f
page 127: 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f df 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 7f 95 7f 7f

PDBR: 108 (decimal) [This means the page directory is held in this page]

Virtual Address 611c:
--> pde index:0x18 [decimal 24] pde contents:0xa1 (valid 1, pfn 0x21 [decimal 33])
--> pte index:0x8 [decimal 8] pte contents:0xb5 (valid 1, pfn 0x35 [decimal 53])
--> Translates to Physical Address 0x6bc --> Value: 08
Virtual Address 3da8:
--> pde index:0xf [decimal 15] pde contents:0xd6 (valid 1, pfn 0x56 [decimal 86])
--> pte index:0xd [decimal 13] pte contents:0x7f (valid 0, pfn 0x7f [decimal 127])
--> Fault (page table entry not valid)
Virtual Address 17f5:
--> pde index:0x5 [decimal 5] pde contents:0xd4 (valid 1, pfn 0x54 [decimal 84])
--> pte index:0x1f [decimal 31] pte contents:0xce (valid 1, pfn 0x4e [decimal 78])
--> Translates to Physical Address 0x9d5 --> Value: 1c
Virtual Address 7f6c:
--> pde index:0x1f [decimal 31] pde contents:0xff (valid 1, pfn 0x7f [decimal 127])
--> pte index:0x1b [decimal 27] pte contents:0x7f (valid 0, pfn 0x7f [decimal 127])
--> Fault (page table entry not valid)
Virtual Address 0bad:
--> pde index:0x2 [decimal 2] pde contents:0xe0 (valid 1, pfn 0x60 [decimal 96])
--> pte index:0x1d [decimal 29] pte contents:0x7f (valid 0, pfn 0x7f [decimal 127])
--> Fault (page table entry not valid)
Virtual Address 6d60:
--> pde index:0x1b [decimal 27] pde contents:0xc2 (valid 1, pfn 0x42 [decimal 66])
--> pte index:0xb [decimal 11] pte contents:0x7f (valid 0, pfn 0x7f [decimal 127])
--> Fault (page table entry not valid)
Virtual Address 2a5b:
--> pde index:0xa [decimal 10] pde contents:0xd5 (valid 1, pfn 0x55 [decimal 85])
--> pte index:0x12 [decimal 18] pte contents:0x7f (valid 0, pfn 0x7f [decimal 127])
--> Fault (page table entry not valid)
Virtual Address 4c5e:
--> pde index:0x13 [decimal 19] pde contents:0xf8 (valid 1, pfn 0x78 [decimal 120])
--> pte index:0x2 [decimal 2] pte contents:0x7f (valid 0, pfn 0x7f [decimal 127])
--> Fault (page table entry not valid)
Virtual Address 2592:
--> pde index:0x9 [decimal 9] pde contents:0x9e (valid 1, pfn 0x1e [decimal 30])
--> pte index:0xc [decimal 12] pte contents:0xbd (valid 1, pfn 0x3d [decimal 61])
--> Translates to Physical Address 0x7b2 --> Value: 1b
Virtual Address 3e99:
--> pde index:0xf [decimal 15] pde contents:0xd6 (valid 1, pfn 0x56 [decimal 86])
--> pte index:0x14 [decimal 20] pte contents:0xca (valid 1, pfn 0x4a [decimal 74])
--> Translates to Physical Address 0x959 --> Value: 1e

你可能感兴趣的:(《操作系统导论》第20章习题)