一个程序是如何访问另一个程序的内存地址的?

32位的情况,指针只有4字节大小,能访问 4G 的空间。

两个程序A和B运行,都分配 4G 的虚拟地址空间
那 A程序 如何访问 B程序 的内存地址呢?

4字节指针好像只能表示自己 4G 空间的地址吧?

阅读 2.7k
1 个回答

就现代操作系统而言都是保护模式了,程序 A 不可能直接访问程序 B 的内存地址啊……

都是逻辑地址,要通过操作系统做转换的,A 不需要知道 B 的物理地址,也就不会溢出啊。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题