这个问题在我大三的时候开始搞嵌入式编程一直困扰着我。后来做了一些实验搞懂了,但当时还没有写博客的习惯。
* p_vaddr 也就是运行地址
该成员给出了该段在内存中的首字节地址。
* p_paddr 也就是加载地址
在物理地址定位有关联的系统中,该成员是为该段的物理地址而保留的。由于
System V 忽略了应用程序的物理地址定位,该成员对于可执行文件和共享的
object 而言是未指定内容的。
而在生成bin文件时,会考虑到加载地址,所以将生成的文件大小是加载地址的最大差值。