首页
社区
课程
招聘
[讨论] <<程序员的自我修养 -- 链接、装载与库>> 书籍相关问题
2021-2-2 12:07 30842

[讨论] <<程序员的自我修养 -- 链接、装载与库>> 书籍相关问题

2021-2-2 12:07
30842

<<程序员的自我修养 -- 链接、装载与库>> 书籍相关问题

SECTION HEADER中的Virtual Size字段

问: VirtualSize代表的含义?

书中的答案:该段被加载至内存后的大小.
微软官方文档给的回答如下:

1
The total size of the section when loaded into memory. If this value is greater than SizeOfRawData, the section is zero-padded. This field is valid only for executable images and should be set to zero for object files.

个人看法:VirtualSize代表代码原始大小,未按照磁盘对齐之前的大小。

书籍9.3.1重定位基址(267页)

书中一处矛盾,原文:Windows PE采用了一种与ELF不同的方法,它采用的是装载时重定位的方法.但前文(7.3.2节,190页)中提到:

1
我们前面在静态链接时提到过重定位,那时的重定位叫做链接时重定位(Link time relocation), 而现在这种情况经常被称为装载时重定位(Load Time relocation),在Windows中,这种装载时重定位又被叫做基址重置(Rebasing).

请大家发表自己的看法


[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
点赞0
打赏
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回