memory-management - 如何将这个逻辑地址翻译成物理地址呢?

标签 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

谢谢!

最佳答案

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

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

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

现在 第 9 帧的第 1027 个字节位于 18342 + 1027 = 19369 物理内存地址。

将数字转换成二进制,你就有了答案。
看这个answer并点击那里给出的链接来理解这个概念。

干杯......

关于memory-management - 如何将这个逻辑地址翻译成物理地址呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14644005/

相关文章:

c - 当命令有选项时 execvp 失败

linux - 虚拟内存是否用于内核本身?

python - 内存管理和 Tkinter

java - 避免初始内存堆大小错误

ios - 获取 CPU 使用率 IOS Swift

c - 我在 c 中的 realloc() 做错了什么?

c++ - 在 std::vector.reserve() 之后在 std::vector 中重新分配

css - 了解网络分析器

vba - 从网络主机(LAN 连接的 PC)获取操作系统信息

进程控制 block 与进程表?