奇思妙想 · 2024年 3月 21日 0

如何确定语言使用的地址是不是物理地址?

37 次浏览

一种最简单的原则就是,确认代码所处的运行环境是否有开启虚拟地址。比如在Kernel里面,一般开启VM后,程序默认使用和申请的地址均是虚拟地址,除非特别指定申请物理地址或转换。Bootloader根据所处的阶段,可能BL1用物理地址,进BL2开启VM,总之根据特定情况考虑。一般而言,用户态应用程序使用的均是虚拟地址。