问答题 在处理器上执行的一个进程页表见下表,表中的虚页号和物理块号是十进制数,起始页号(块号)均为0,所有的地址均是存储器字节地址,页的大小为1024B。
进程页表
虚页号 状态位 访问位 修改位 物理块号
0 1 1 0 4
1 1 1 1 7
2 0 0 0 -
3 1 0 0 2
4 0 0 0 -
5 1 0 1 0
(1)详述在设有快表的请求分页存储管理系统中,一个虚地址转换成物理地址的过程。
(2)虚地址5499、2221对应于什么物理地址?
【正确答案】(1)进行地址变换时首先检索快表,如果在快表中找到所访问的页面号,便修改页表项中的访问位;对于写指令还要将修改位置为1;最后利用该页表项中给出的物理块号和页内位移形成要访问的物理地址。 如果在快表中未找到该页的页表项,则到内存中的页表中查找(实际上是与快表同时进行),并通过找到的页表项中的状态来了解该页是否已经调入内存。若该页已调入内存,则将该页的页表写入快表;如果快表已满,则选择一页置换。若该页尚未调入内存,则产生缺页中断并由系统将该页从外存调入。 (2)5499=1024×5+379,查表得知虚页号5对应的物理块号为0,即物理地址为379。 2221=1024×2+173,查表得知虚页号2对应的物理块号为空,产生缺页中断,等待将该页调入后再确定物理地址。
【答案解析】