我有一个在cortexA8.上运行的嵌入式linux系统。我理解内核符号PHYS_OFFSET代表RAM http://www.kernelport.org/defines.html的物理起始地址。我需要在用户空间中使用此符号的值,以便在内核启动后运行的某些shell脚本中进行某些验证。 / proc文件系统没有这个信息。如果我能通过某种方式获得这个价值,请告诉我。
答案 0 :(得分:2)
您可以通过阅读/proc/iomem
来尝试利用I / O内存映射,这应该告诉System RAM
- iomem
中的所有地址都是真实/物理地址。
这是来自我的Android手机,它有1GB内存(0xbfffffff - 0x80000000)。
$cat /proc/iomem
...
80200000-88cfffff : System RAM
80300000-80c708cf : Kernel text
80d00000-80fb1dcb : Kernel data
88d00000-88d00fff : ramdumpinfo
88d01000-88d04fff : amsslog
88de0000-88dfffff : ram_console
90000000-ab4fffff : System RAM
b9a02000-bfffffff : System RAM
您需要将系统内存中指定的范围转换为您需要的范围。