PE 学习之总结1

每学习一门新的课程,我都会习惯性的问自已几个问题,为什么要学习它?学习它之后我能干什么?

什么是PE?

为什么要学习PE?

学习完PE我能干什么?

才刚刚开始学习这门课程,对它的理解我也只能停留在表层,但为了记录这个过程及思想起伏的一个状况,我依然把我对它的理解给记录下来。

1.什么是PE?即一个操作系统的可执行文件映射到虚拟内存中的格式,通过学好它我们可以很清楚的知道我们的一个应用程序从硬盘加载到内存(这里说的内存是虚拟的4GB内存),应用程序中的数据与代码分别在哪里,还有这4GB的内存空间它的每一部分分别存放的什么,这一大堆数据当中我们如何找到我们想要的东西,了解它的数据存储方式及对数据的管理。我把这4GB的内存看成一本书,这本书中的汉字达到近43亿,一本书应该不会那么厚只是一个比喻。书中有目录,有章节,每章节中有内容,内容中还有它隐含的内容。那么这么庞大的一本书我该怎么查找到我要的内容?学习PE也就是在学习这本书它的数据组织,它每一章节对应的内容在哪里。学习PE我总觉得应该不会那么简单,那么我们就慢慢尝试。

2.为什么要学习PE?学习PE是为了想更深入的了解一个应用程序,了解它的内存机制及文件处理,更深入的理解标识及结构体。

3.学习完它我能干什么?这个以后再说。


今天学习PE主要是对几个结构体的理解及它们之间的关系,还有就是大概的知道几个名词。

结构体:

IMAGIC_DOS_HEADER  (64)

DOS stub

PE signature  (PE 标识符)  (4)

IMAGIC_FILE_HEADER  (20)

IMAGIC_OPTIONAL_HEADER32  (224)


IMAGIC_DATA_DIRECTORY  (8)

IMAGIC_SECTION_HEADER  (40)

其中:

IMAGIC_NT_HEADERS包含了三部分:PE signature,IMAGIC_FILE_HEADER,IMAGIC_OPTIONAL_HEADER32

关系:

通过IMAGIC_DOS_HEADER  我们可以找到PE signature,也就是

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值