1地址
PE文件中涉及的地址有四类
1虚拟内存地址(VA)
PE文件对应的进程支配了自己独立的4GB虚拟空间,在这个空间定位的地址是VA,VA的范围是4GB。在VA中VA=进程基地址+RVA.
2相对虚拟内存地址(RVA)
模块:同时加载到进程空间的文件,如一个进程和同时要加载的动态链接库都是模块
每个模块都有一个基地址。如果两个模块的基地址是相同的,由操作系统来决定模块的具体位置。
而RVA是针对于模块的概念。是用来定位某个特殊位置距离某个模块基地址的偏移量。
3文件偏移地址(FOA)
FOA 和内存无关,它是指某个位置距离文件头的偏移。
4特殊地址
2指针
如果数据结构中的某个字段存储的是一个地址(上诉的四个之一)那么这个字段就是指针
3 对齐
1内存对齐
由于windows操作系统对内存属性的设置以页为单位,所以通常情况下,节在内存中的对齐单位必须是一个页的大小,对于32位的来说这个值是4KB(1000h),对于64位的来说,这个值是8KB(