首页
社区
课程
招聘
[求助]一直挺想问的一个问题。
发表于: 2012-12-31 15:16 5101

[求助]一直挺想问的一个问题。

2012-12-31 15:16
5101

求大牛解答呀。
应该和文件对齐粒度无关吧,内存的对齐值高于文件对齐值。所以节区装载偏移一般大于文件节区装载偏移。
V.Size、R.Size究竟哪个更准确?

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 0
支持
分享
最新回复 (10)
雪    币: 22
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
PE 文件对齐?

段 在磁盘 中按   0x200 bytes 对齐 (对齐当然就是补0了)
段 在内存 中按   0x1000 对齐

你这里的 v.size 应该是该 Section 的大小 (IMAGE_SECTION_HEADER.SizeOfRawData)

SectionHeader 还有段在 文件 和 内存 的偏移 ,用LoadPE 多看看就ok了。
2012-12-31 16:57
0
雪    币: 1115
活跃值: (122)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
3
一直在等待回答这个问题:
一个是文件中的原始大小,一个是加载到内存后的大小。section加载到内存后,以页对齐。一页==0x1000
2012-12-31 16:59
0
雪    币: 2815
活跃值: (2608)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
4
R.Size就是节在文件的中大小,一般都是对齐的。见过最后一个节可以不对齐
V.Size是加载到内存中大小(加载后会自动对齐),通常与R.Size差不多。但如果数据节未初始化变量比较多,就比R.Size大了。

不知你要的准确是指什么?准确的内存大小,还是准确的文件大小?或者你只是想计算一下文件中冗余空间?
2012-12-31 17:09
0
雪    币: 55
活跃值: (519)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
5
我就是疑惑为什么加载到内存中会变小呢?
从图中看,
代码段,
只读数据段,
资源段,
重定位段,
为何都比在文件中的大小要小呢?丢掉的究竟是什么。
如果按照200文件,1000内存的方式对齐,如果说Size会把对齐补填的那部分大小算进来,那么应该是内存中的Size大于文件中的Size才对。
如果是碰巧,可我连续看了几个PE文件都是VSize< RSize
2012-12-31 17:34
0
雪    币: 1115
活跃值: (122)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
6
加载后肯定会大于等于原始文件中的数据。
2012-12-31 17:46
0
雪    币: 55
活跃值: (519)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
7
PEID没有误报,它的意思是内存中的大小,比文件中的大小要小。
2012-12-31 21:05
0
雪    币: 1559
活跃值: (1795)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wbs
8
我也很困惑 大牛出来解释一下吧
2013-1-9 16:09
0
雪    币: 71
活跃值: (242)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
9
按内存对齐后的值来算的
2013-1-9 16:44
0
雪    币: 411
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
10
我是这么理解的。
R.size显示的是文件中的对齐后的大小,而V.size显示的不是在内存中对齐后的值。


上传的附件:
2013-1-9 16:58
0
雪    币: 2155
活跃值: (29)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
11
楼主的程序应该是VC的,或者说应该是MS的开发工具生成的。特点是内存和磁盘文件的对齐都是0x1000,并且V.SIZE明显的是不可以被0x1000整除的,而R.SIZE可以乘除0x1000。

再来看看这个,是我的一个C++Builder的程序区段信息。
对齐尺寸:文件是0x100或者0x200,内存中是0x1000。并且V.SIZE明显可以被0x1000整除


所以我感觉这个是编译器的问题。
VC++的编译器在生成PE头的时候,在计算V.SIZE的时候没有计算上该段末尾填充的0的数量。
C++Builder的编译器在生成PE头的时候,把末尾填充的0也算作是段的一部分长度了。
上传的附件:
2013-1-9 17:44
0
游客
登录 | 注册 方可回帖
返回
//