操作系统问题练习题:1.假设当前处理机上执行的进程的页表如下,所有数字都是十进制,页的大小为1024B。对于给定的以下虚拟地址,其物理地址是多少? (a)1052 (b)2221 (c)5499给出答案步骤。
2019-06-20
操作系统问题
练习题:1.假设当前处理机上执行的进程的页表如下,所有数字都是十进制,页的大小为1024B。
对于给定的以下虚拟地址,其物理地址是多少?
(a)1052
(b)2221
(c)5499
给出答案步骤。
优质解答
答:对于一级页表,进行地址变换的步骤如下:
(1)虚地址计算出页号和页内偏移量。
(2)根据页号和进程的页表首址,找到对应的页表项,取出帧号.
(3)(帧号*页面大小)+页内偏移 形成物理地址。
答:p=INT(A/L) d=[A]mod L (A为虚地址,L为页面大小,p为页号,d为页内偏移)
(i) p=INT(1052/1024)=1 d=28
根据页号查页表得桢号为4,则该页帧的物理起始地址为: 4*1024=4096,再加页内偏移量28得物理地址为:4096+28=4124
(ii) p=INT(2221/1024)=2 d=173
该页不在内存中,将产生缺页中断。
(iii) p=INT(5499/1024)=5 d=379
根据页号查页表得桢号为0,则该页帧的物理起始地址为: 0*1024=0,再加页内偏移量379得物理地址为:0+379=379
答:对于一级页表,进行地址变换的步骤如下:
(1)虚地址计算出页号和页内偏移量。
(2)根据页号和进程的页表首址,找到对应的页表项,取出帧号.
(3)(帧号*页面大小)+页内偏移 形成物理地址。
答:p=INT(A/L) d=[A]mod L (A为虚地址,L为页面大小,p为页号,d为页内偏移)
(i) p=INT(1052/1024)=1 d=28
根据页号查页表得桢号为4,则该页帧的物理起始地址为: 4*1024=4096,再加页内偏移量28得物理地址为:4096+28=4124
(ii) p=INT(2221/1024)=2 d=173
该页不在内存中,将产生缺页中断。
(iii) p=INT(5499/1024)=5 d=379
根据页号查页表得桢号为0,则该页帧的物理起始地址为: 0*1024=0,再加页内偏移量379得物理地址为:0+379=379