【发布时间】:2014-05-27 03:53:03
【问题描述】:
据我所知,CPU 在运行时为每条指令生成逻辑地址。
现在这个逻辑地址将指向指令的线性或虚拟地址。
现在我的问题是,
1) 操作系统可以为两个不同的进程生成相同的逻辑地址吗?
参考 "In virtual memory, can two different processes have the same address?" ,如果两个不同的进程在这种情况下可以具有相同的虚拟地址,那么逻辑地址也可能相同。
2) 只是为了澄清我的理解,每当我们编写复杂的 C 代码或简单的“hello world”代码时,虚拟地址将在构建时生成(编译->汇编->链接),其中逻辑地址将由 CPU 在运行时间?
请澄清我上面的疑问,如果我走错了路,请纠正我。
【问题讨论】:
标签: c memory linux-kernel operating-system