函数指针:物理或虚拟地址

时间:2009-08-24 18:24:50

标签: c

当我们得到函数或任何对象的地址时,是该对象的虚拟地址还是物理地址?

2 个答案:

答案 0 :(得分:13)

你是在问一般的指针吗?

在大多数操作系统上,它们都是逻辑地址。

操作系统负责通过虚拟内存和分页机制将它们转换为物理地址。这对程序是透明的。这就是误入歧途的计划“击中边界”和GPF的原因。

在某些旧系统(例如DOS)上,它们是物理的,允许您覆盖内存其他部分的内容。

答案 1 :(得分:8)

取决于操作系统以及代码运行的级别。

对于现代操作系统上的普通用户登陆程序,您将获得虚拟地址。