Memory management 如何将此逻辑地址转换为物理地址?

Memory management 如何将此逻辑地址转换为物理地址?,memory-management,operating-system,Memory Management,Operating System,鉴于: Logical addresss space=16 bits Physical address space=16 bits Page size=2K 如何将逻辑地址1027映射到下一页表的物理地址 p f 0 9 1 7 2 3 p f 0 9 1 7 2 3 谢谢大家! 地址1027映射到p0,因为1027%2048(2K)=1027层(1027/2048)=0。所以1027映射到虚拟地址中第0页的第1027字节

鉴于:

Logical addresss space=16
bits Physical address space=16 
bits Page size=2K
如何将逻辑地址1027映射到下一页表的物理地址

p f 0 9 1 7 2 3 p f 0 9 1 7 2 3
谢谢大家!

地址
1027
映射到
p0
,因为
1027%2048(2K)=1027层(1027/2048)=0
。所以1027映射到虚拟地址中第0页的第1027字节

第0页虚拟地址根据页表映射到第9帧

第9帧的基址为
9*2048=18432
。帧9在物理内存中的基址为18342

现在,第9帧的第1027字节位于物理内存的18342+1027=19369

将数字更改为二进制,您就有了答案。
查看此链接并按照此处给出的链接理解此概念


Cheers…

p是页表中的索引,f是物理地址空间中相应的帧。我已经计算了16位中的5位的p和11位的偏移量(d)。非常感谢@deepthink。我是内存管理新手,对于是否将逻辑地址转换为物理地址感到非常困惑。你巩固了我的观念。谢谢将选择您的答案作为最佳答案!再次感谢!