逻辑地址空间为8页,每页为2KB。
物理地址空间有4帧(帧的大小等于页面的大小)。
我得到一个草图,其中有一个从第0页到第1页的箭头,表示第0页到第1帧之间的映射。
我需要找到逻辑地址2500的物理地址。
我想知道我的解决方案是否正确。
这是我的解决方案: 因为页面的大小是2KB,这意味着我们需要14位的偏移量。 (原因2KB = 2 ^ 14) 有8页(0到7)所以我们需要3位页码。
所以给定的二进制虚拟地址是:
000 00100111000100 = 2500
左起第3位 - 000 - 表示页码0
其余位 - 00100111000100 - 表示偏移2500
第0页----->第1帧(在草图中映射)
所以我的实际地址是: 0100100111000100 = 18884.
前2位 - 表示帧号-01 其余位 - 表示偏移量 - 00100111000100。 (有4帧,因此我们需要2位帧号)。
我会感谢你的回应 谢谢, 使然
答案 0 :(得分:1)
2KB = 2 ^ 1 * 2 ^ 10 = 2 ^ 11 ---> 11位,不是14
答案 1 :(得分:1)
逻辑地址是连续的,您可以按照步骤
(1)计算2500 /(2 * 1024)
商是1 - >页面号逻辑地址
剩余部分是452 - >逻辑地址的偏移量 - >同样是物理地址的偏移量
(2)找到帧号。物理地址页面号(即,从上面计算的1)逻辑地址指的是。不幸的是,问题中没有给出映射。假设逻辑地址中的第1页被映射到物理地址中的第4帧。
(3)物理地址是[帧号] * [帧全长] +偏移量,即
4 *(2 * 1024)+452 = 8644或0010000111000100(二进制)或21c4(H)。
希望它有所帮助。