peexplorer1.9: PE文件格式 1.9版 完整译文(附注释)(4)

  =

  |“PE文件格式”1.9版注释:|

  =

  ①Win32s和Win32

  Win32s是“WIN32sub缩写它是个可被加入到Windows3.1和WindowsforWorkgroups系统中以使它们能够运行32位应用软件Software包正如它名字所暗示那样Win32s只是Windows95和WindowsNT系统中使用Win32API个子集Win32s主要功能就是在32位和16位内存地址间相互转换也就是种被称为换长操作

  Win32是32位Windows(包括WindowsNT,95,98和2000等)操作系统编程接口(API)当应用是按Win32API编写时它们就具有16位API(Win16)所不具备些高级性能个按Win32编写能运行在所有操作系统的上除非这个要求特定操作系统特性而这些特性别操作系统又没有时例如WindowsNT提供安全特性Windows95/98就没有个为NT系统这些特性编写就不能运行在其它Windows系统的上

  使用此API            能运行在...上

  Win32                 95,98,NT,2000,XP

  Win32s              3.1,95,98,NT,2000,XP

  Win32c                95 

  Win16            3.0,3.1,95,98,NT,2000,XP

  ②目标文件(Objectfile )和映象文件(Imagefile)

  目标文件(Objectfile)指是链接(链接器)输入文件链接器输出是映象文件映象文件反过来又是加载器输入文件“objectfile”词未必含有任何和面向对象编程有关联系

  映象文件(Imagefile)指就是可执行文件:或者是.EXE或者是.DLL个映象文件可被想象为“内存映象”“映象文件”词常被用来代替“可执行文件”后者有时被用来专指.EXE文件

  ③UNIX

  是个很流行多用户、多任务操作系统由贝尔实验室于上世纪70年代早期开发出来只有很少员建立UNIX系统本来是设计给他们这些员专用、小巧、灵活系统UNIX是用高级编程语言就是C语言编写批操作系统的这就意味着只要电脑上有C语言编译器UNIX就可以被虚拟地安装到任何电脑上天生可移植性加上低廉价格使得UNIX成为各大学流行选择(反信用条款禁止贝尔实验室将UNIX作为它全权产品推向市场所以UNIX价格不贵)

  贝尔实验室只发布它自己源语言形式UNIX操作系统所以任何获得份拷贝人都可以按照自己意愿来修改和定制它到上世纪70年代末时有好几十种区别版本UNIX运行在世界各地(更多信息请参阅别资料)

  ④VMS

  “OpenVirtualMemory”或仅VMS是运行于VAX和Alpha系列电脑的上高端电脑服务器操作系统名字现在用于使用英特尔ItaniumCPUHewlett-Packard(惠普)系统的上VAX和Alpha系列电脑由美国马萨诸塞州Maynard市数据设备(DEC)公司(现在由HP拥有)生产OpenVMS是个基于多用户、多处理虚拟存储操作系统设计用于时间共享、批处理和事项处理等

  ⑤SDK

  是“softwaredevelopmentkit”(软件Software开发工具箱)缩写它是个供员为特定平台开发应用编程包典型个SDK包含个或多个API库、各种编程工具和相关文档等

  ⑥NeFormat(New-styleEXEFormat缩写)

  是个早期Windows操作系统可执行文件(.EXE)包含个代码和数据集合或者个代码、数据和资源集合这种可执行文件也包括两个头:个MS-DOS头和个Windows头些节(具体参看其他资料)

  ⑦OS/2(IBMOperating/2IBM操作系统/2)

  操作系统/2(OS/2)最初是由Microsoft和IBM共同合作开发种应用于PC机操作系统现在只由IBM销售、支持和管理其设计目标是替换传统DOS操作系统OS/2和DOS、Windows都相兼容换句话说OS/2操作系统可运行所有DOS和Windows但在OS/2下运行某些特殊写却不能在DOS或Windows下运行

  OS/2是个32位、为个人计算机而设计、支持保护模式和多任务操作系统OS/2系统中图形表示管理器(PresentationManager)作为其图形系统主要负责管理窗口、字体及Control控件等OS/2系统顶部是Workplace命令解释(WPS-该内容在OS/22.0中有具体介绍)WPS以文档为中心允许用户访问文件和打印机并可以启动WPS遵循IBM用户界面标准即“通用用户访问”

  OS/2操作系统中包含种系统对象模型(SOM)包括磁盘、文件夹、文件、对象及打印机等对象SOM允许应用间代码共享但这和编程语言无关种称为DSOM分布式版本支持区别计算机上对象间相互通信DSOM建立在CORBA基础上SOM类似于微软组件对象模型(ComponentObjectModel)同时两者相互竞争目前人们对SOM和DSOM已停止深度开发

  OS/2操作系统也包括种叫做OpenDoc混合文档技术它由Apple开发而成但目前人们对OpenDoc也已停止深度开发

  由于OS/2存在市场局限性IBM公司已于2003年3月12日按照电子商务计划停止了OS/2发展市场

  ⑧MIPS

  MIPS是世界上很流行种RISC处理器MIPS意思是“无内部互锁流水级微处理器”(Microprocessorwithouterlockedpipedstages)其机制是尽量利用软件Software办法避免流水线中数据相关问题它最早是在80年代初期由斯坦福(Stanford)大学Hennessy教授领导研究小组研制出来MIPS公司R系列就是在此基础上开发RISC工业产品微处理器这些系列产品为很多计算机公司采用构成各种工作站和计算机系统如R3000、R4000、R10000等都是其生产处理器

  MIPS技术公司是美国著名芯片设计公司它采用精简指令系统计算结构(RISC)来设计芯片和英特尔采用复杂指令系统计算结构(CISC)相比RISC具有设计更简单、设计周期更短等优点并可以应用更多先进技术开发更快代处理器MIPS是出现最早商业RISC架构芯片的架构集成了所有原来MIPS指令集并增加了许多更强大功能

  ⑨big-endian、Little-endian和endian 

  Big-endian和Little-endian是用来表述组有序字节数存放在计算机内存中时顺序术语Big-endian(即“大端结束”或者“大尾”)是将高位字节(序列中最重要值)先存放在低地址处顺序而Little-endian(即“小端结束”或者“小尾”)是将低位字节(序列中最不重要值)先存放在低地址处顺序举例来说在使用Big-endian顺序计算机中要存储个十 6进制数4F52所需要字节将会以4F52形式存储(比如4F存放在内存1000位置而52将会被存储在1001位置)而在使用Little-endian顺序系统中存储形式将会是524F(52在地址1000处4F在地址1001处)IBM370种大型机、大多数基于RISC计算机以及Motorola微处理器使用是Big-endian顺序TCP/IP协议也是而Intel处理器和DEC公司则使用Little-endian方式

  “endian”这个词出自格列佛游记小人国内战就源于吃鸡蛋时是究竟从大头(Big-Endian)敲开还是从小头(Little-Endian)敲开由此曾发生过 6次叛乱其中个皇帝送了命个丢了王位

  我们般将endian翻译成“字节序”将bigendian和littleendian称作“大尾”和“小尾”

  ⑩AlphaAXP

  “DECAlpha”,也被称作“AlphaAXP”,是个原来由美国数据设备公司(DEC)开发和制造64位RISC微处理器(例如:DECAlphaAXP21064微处理器)他们将它用在自己工作站和服务器系列上被设计作为VAX系列计算机继承者AlphaAXP不但支持VMS操作系统同时也支持DigitalUNIX操作系统后来些开放源码操作系统也能运行于Alpha的上著名Linux和BSDUNIX操作系统特别支持微软直到WindowsNT4.0SP6才支持这种处理器但Windows2000第2版的后就又不支持了

  UTC

  是“CoordinatedUniversalTime”缩写意为“协调通用时间”它是综合了只以地球不停旋转速率为基准格林威治标准时间(GreenwichMeanTime)和高度精确原子时间种时标当原子时间和地球时间达到时差时个闰秒就被算进UTC时间中UTC设计于1972年1月1日并被国际度量衡局(InternationalBureauofWeightsandMeasures)于巴黎协调通过跟格林威治标准时间UTC也被设定于0经度本初子午线

  BSS

  是“BlockStartedbySymbol”缩写意为“以符号开始块”BSS是Unix链接器产生化数据段其他段分别是包含代码“text”段和包含已化数据“data”段BSS段变量只有名称和大小却没有值此名后来被许多文件格式使用包括PE

  “以符号开始块”指是编译器处理未化数据地方BSS节不包含任何数据只是简单维护开始和结束地址以便内存区能在运行时被有效地清零BSS节在应用 2进制映象文件中并不存在例如:

  unsignedcharvar;  //分配到.bss节8位未化变量

  unsignedcharvar2=25; //分配到.data节8位已化变量

  BSOD(bluescreenofdeath蓝屏死机)

  是运行在Windows环境下计算机上出现甚至包括最早版本Windows比如Windows3.0和3.1在后来Windows版本比如MicrosoftWindows95,Windows98,WindowsNT,和Windows2000上仍能出现它被开玩笑地称为蓝屏的死是发生时屏幕变成蓝色电脑总是不能正常运转并需要重新启动

  POSIX

  是“PortableOperatingInterfaceforUNIX”(UNIX可移植操作系统接口)首字母缩写它是定义和操作系统的间接口套IEEE和ISO标准通过将他们设计为符合POSIX标准开发者就能获得些让他们可以容易地被移植到其他POSIX兼容操作系统上保证主要包括大多数UNIX操作系统POSIX标准目前由IEEE下叫做“PortableApplicationsStandardsCommittee”(PASC)(可移植应用标准委员会)维护

  thunk

  (动词)换长变长;已经想到预先想到

  (指在个人电脑中个16位内存地址转换为个32位地址或者相反换长是必须英特尔老16位微处理器使用种叫分段内存定址方式而它32位微处理器使用却是个统地址空间Window95支持种允许32位16位DLL换长机制叫统换长而另方面运行在Windows3.x和WindowsforWorkgroup下16位应用不能使用32位DLL除非32位地址被转换为16位地址这就是Win32功能并被称为通用换长

  根据民间传说thunk词是由位Algol-60编程语言开发者编出他在天深夜意识到参数数据类型是可以被编译器稍先点知道也就是说到了编译器处理参数时候它就已经想到了(thunked)数据类型了该词含义近年来已变化很大了)



  (名词)换长变长(在个分段内存地址空间和个统地址空间的间互相转换操作)

  (我查遍书店中所有大大小小英汉和英英词典都没有找到thunk这个词含义后在网上找到了它英语解释却找不到它对应汉语译法现根据它意思姑且译的各位勿笑还请高手指点)

  (英文参见:http://www.webopedia.com/TERM/T/thunk.html)

  MSB

  “MostSignicantBit”首字母缩写意为“最重要位”个 2进制数字中它就是最左边也是最重要



Tags:  pe文件格式 peexplorer1.9

延伸阅读

最新评论

发表评论