188宝金博页面版

  • 图案背景
  • 纯色背景
视图
标记
批注
批注本地保存成功,开通会员云端永久保存 去开通
beitongc13..

上传于:2015-04-22

粉丝量:38

该文档贡献者很忙,什么也没留下。


  • 相关
  • 目录
  • 笔记
  • 书签

188宝金博页面版:更多相关文档

  • 我们看到黑暗 更看到了光明

    星级: 1 页

  • 威客的高手们

    星级: 10 页

  • 经常看到高手做的动画

    星级: 9 页

  • 看到他们奔走看到辽宁足球希望

    星级: 1 页

  • 妈妈看到要疯掉的小孩们

    星级: 5 页

  • 我们都看到的

    星级: 2 页

  • 写给心雨们

    星级: 1 页

  • 刚看到杨澜写给女儿的十四

    星级: 5 页

  • LINUX高手写给初学者

    星级: 4 页

  • 看到活泼的学弟学妹们

    星级: 2 页

  • 写给同学们

    星级: 5 页

暂无目录

点击鼠标右键菜单,创建目录

暂无笔记

选择文本,点击鼠标右键菜单,添加笔记

暂无书签

在左侧文档中,点击鼠标右键,添加书签

188宝金博页面版: 题记:写给看到的高手们

下载积分: 1000

内容提示: macair 暗组 题记: 写给看到的高手们 一个人的技术永远只是一个人的技术, 永远只会死在暂时满足的襁褓里, 强烈建议高手共享信息, 知识的贫穷让我等菜鸟无法呼吸,带带我们的菜鸟吧! 这个 JB 学校真的让我快疯了, 沉痛悼念死去的学生! 但愿人们不要在自己的职责里玩社会工程学! 这是一个需要责任的年代! 因为能力问题可能写的有错误, 大家心情讨论! 一: PE 结构基础 看了很多 PE 结构类的东东, 要不上来就是整体结构, 要不就是一大堆 ASM 代码, 看的我等菜鸟有点难受! 所以自己写个帖· 学习 PE 我们先来弄懂几个问题! 1:几个地址的概念 VA:虚拟地址, 也就是内存...

文档格式:DOC | 页数:5 | 浏览次数:208 | 上传日期:2015-04-22 12:54:47 | 文档星级:
macair 暗组 题记: 写给看到的高手们 一个人的技术永远只是一个人的技术, 永远只会死在暂时满足的襁褓里, 强烈建议高手共享信息, 知识的贫穷让我等菜鸟无法呼吸,带带我们的菜鸟吧! 这个 JB 学校真的让我快疯了, 沉痛悼念死去的学生! 但愿人们不要在自己的职责里玩社会工程学! 这是一个需要责任的年代! 因为能力问题可能写的有错误, 大家心情讨论! 一: PE 结构基础 看了很多 PE 结构类的东东, 要不上来就是整体结构, 要不就是一大堆 ASM 代码, 看的我等菜鸟有点难受! 所以自己写个帖· 学习 PE 我们先来弄懂几个问题! 1:几个地址的概念 VA:虚拟地址, 也就是内存中的地址! RVA:相对虚拟地址, 等于 VA-ImageBase Offset:物理地址, 磁盘上文件的地址, 等于 RVA-ImageBase-节偏移! PE 装入器: 程序需要装入内存后才可以运行, PE 装入器就是为了装入 PE 文件 装入: 装入是将磁盘上程序的指令数据转的地址载入内存并进行地址转换的过程! 连接: 连接是将多个 OBJ 文件制作成可供 PE 装载器装入模块的过程! 对于装入和连接的理解我们在下面进行! 2:OD 中的地址为什么是虚拟地址 很多朋友都知道内存中的地址为 VA, 那么为什么是 VA 呢? 这是有装入概念引起的, 上面说明了装入的概念, 在 DOS 年代, 内存中任何时刻只有一个任务, 所以将程序直接载入内存就可以了, 这称为静态装入, 当多任务操作系统出现后, 所谓的多任务是人类不可感知的 CPU 时间片下的单任务, 多个任务需要同时装入, 这时候每一个任务的必须在前一个任务的后面, 所以磁盘上的程序装入内存进行地址转换的时候必须知道前一个任务的结束的内存地址, 这就是可重定位装入方式, 但是伴着 X86 保护模式的产生, 动态可重定位方式产生, 在 WINDOWS 中是一种运行时动态可重定位方式, 也就是说当程序真正运行的时候才会去进行地址转换, 程序载入内存的时候只是一种内存映射, 执行程序的时候系统会通过内存中的页表去查找数据和指令的真实地址! 这里在说一下分页机制中的两个基本概念, 分页是分的进程, 而内存是分块的, 页表要解决的就是进程的分页的号码与内存分块号码的对应,一定要学会用集合的概念去理解东西! 3: DLL 文件是怎么来的 朋友都知道 DLL 文件是动态连接库, 不过为了说明的更清楚, 我们还是看一下它的起源,世界是一个完全不相同又存在众多交集的矛盾, 每个程序虽然不同, 但是它们总有交集——功能相同的地址, 从统计学上来说, 我们如果将很多程序的交集提取出来, 当程序需要的时候我们就不用手动的去输入了, 直接引入它就可以了, 这就是库概念的引入的原因, 最早使用库的方法就是 STATIC LINKING, 静态连接方式, 这与动态的连接的根本区别在于前者每个程序都有一个库 COPY, 而动态连接只会有一个库的引用说明, 并没有将库连接的时候写进每一个程序, 所以 WINDOWS 缺少 DLL 文件的时候, 某些程序会不能执行, 这时候 PE 装入器会自动告诉我们, 而且是运行程序时候的才报错, 显然这说明 Windows 的 DLL文件是一种运行时动态连接的工作方式! 那么它到底有什么好处呢? 库是一个程序相同功能的交集, 相同功能到底有多少, 我们是不知道的, 相同功能的代码进行升级的时候我们也不知道, 采用静态连接如果库作了更新显

188宝金博页面版:关注我们

  • 新浪微博

关注188宝金博页面版公众号

188宝金博页面版
阅读
APP
阅读
返回
顶部
188宝金博页面版官网登录在线平台入口(2026已更新)—江苏协昌电子科技股份有限公司