虚拟地址到物理地址的转换(十进制)

时间:2019-03-08 00:18:38

标签: operating-system virtual

  

假定一个系统具有6位虚拟地址和每帧16个字节的页面。虚拟页码到进程的物理页的映射为:

Virtual Page       Physical Page
     0                   8
     1                   3
     2                   11
     3                   1
     

将虚拟地址40(十进制)转换为十进制物理地址。

从6位虚拟地址中,我知道虚拟地址空间中有2 ^ 6个地址。

每帧有2 ^ 4字节的页面。

因此每个地址页有(2 ^ 6)/(2 ^ 4)= 2 ^ 2个字节,这意味着有4位偏移。

但是,我不知道从那里继续,然后使用该表将虚拟地址转换为十进制的物理地址。

1 个答案:

答案 0 :(得分:2)

40 = 0000000101000b

如果我们为虚拟机000.000010.1000b解释该地址。
偏移量= 1000b(4LSB)
虚拟页号= 000010(后6位)

因此虚拟页数= 2。如果看页面表,我们看到虚拟页面2映射到物理页面11 = 001011b

因此物理地址将为00.001011.1000 = 8 + 16 + 32 + 128 = 184d