元始天尊 发表于 2014-4-29 15:36:11

PE的节和汇编的段

很容易混淆的概念,下面列出的不全,有兴趣的来补充
PE的常见节名:
.data
.rdata
.text
.edata      导出数据
.idata      导入数据
.pdata      异常表
.rsrc      资源数据
.reloc      基址重定位数据
.debug      调试数据
.tls      线程本地存储数据
.cormeta CLR数据

汇编伪指令段名
.data
.code
.stack
.data?
.const
.idata
.xdata
.bit

0xAA55 发表于 2014-4-29 21:50:31

段名不一定是固定的。16位Turbo C++就有_TEXT、_DATA、_BSS段。
汇编的话更是。只要8个字符以内都可以。
还有就是多进程共享段的段名也是需要定义的。
VC的语句#pragma comment(linker,"/SECTION:foo,RWS")就是定义一个名为foo的共享段。
主要是段的Characteristics成员决定了段的特性。比如只读、可读写、可执行、共享、带有重定向资料等。段名只是起个标记作用,便于调试。
当然我们所见到的绝大多数PE文件都有固定的段名称。因此在WinHex等工具里看PE的时候可以根据段名来做粗略的判断。
页: [1]
查看完整版本: PE的节和汇编的段