中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > Visual C++ > 综合文章
深入理解Win32PE文件格式(1)
作者:未知 时间:2005-06-16 12:12 出处:Blog 责编:chinaitpower
              摘要:暂无

作者:Matt Pietrek
本文中大部分内容翻译自MSDN.如有翻译不正确的地方,还望大家多多指点.

摘要:  对PE文件格式的深入理解能够帮助我们更好的理解操作系统.如果你真正理解DLL和EXE的本质是什么,那么将有助于你成为一名更加优秀的程序员.这篇是两篇中深入理解关于PE格式中的第一篇,首先浏览一下最近几年PE格式所发生的变化,以及PE格式
              大约有好几年前(1994年),我为Microsoft System Journal所写的第一篇文章<<Peering Inside the PE: A Tour of the Win32 Portable Executable File Format",结果出乎我的意料之外.一直到今天,我仍然知道许多人在用这篇文件来帮助他们理解PE格式,而且现在在MSDN中这篇文件仍是可以查阅的.不过不幸的是,Win32世界已经发生一些变化,而我那篇文章是写于好几年前,所以很多东西是过时的.所以我从这个月开始写这篇文章来弥补这些.
            
 你可能奇怪为什么要这么关注PE格式呢.答案是:一个操作系统的可执行文件格式能够反映一些在操作系统层面的一些东西.通过理解DLL和EXE,你能变成一个更加优秀的程序员.
              当然,你可以阅读Microsoft的规范,但是这将会牺牲可读性.在这篇文件,我的重点是解释一些与之相关的的部分,来填补在规范中没有关于"怎么样"和"为什么".另外,我也有一些在规范是所没有的东西.

              首先我用一个例子来说一下自从我在1994年写的那篇文章以后所发生的变化.16位的Windows已经成为了历史,所以也就没有去与16 位Windows 可执行文件格式进行比较的必要.一个受欢迎的变化是从Win32 .在Windows3.1上运行Win32 的程序是相当的不稳定的.
   那时,Windows95(代号为"Chicago")还没有发行,WindowsNT版本仍在3.5,Microsoft 的连接器的设计者还没有开始为他们的可执行文件进行优化.然而,在这时Windows NT能够实现在MIPS 和DEC Alpha 平台上的运行.
   自从这篇文章以后有哪些新的东西呢?64位的Windows提出了自已的PE格式.Windows CE添加了新的处理器类型.在优化方面添加了诸如DLL的延时加载,section合并....


             


关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有