物理地址到逻辑地址的转换
任务:给出物理地址phy_adr,找出phy_adr对应的进程和对应进程的逻辑地址logic_addr
伪代码如下:
(空想的,没实验过,不知对错。如果有种方法能保存某一时刻的物理内存快照,这种办法貌似是可行的。)
for segment in 所有段表{
for page in segment段的所有页表{
if(phy_adr>=page.块号*块大小 && phy_adr<page.块号*块大小+块大小)
go to c;
}
}
c:
logic_addr=(segment.段号, page.页号*页大小+phy_adr%页大小);
pyh_adr对应的进程id=(segment所在的pcd).进程id