漫谈兼容内之六:二进制映像的类型识别.docVIP

  • 1
  • 0
  • 约 20页
  • 2016-12-08 发布于河南
  • 举报

漫谈兼容内之六:二进制映像的类型识别.doc

漫谈兼容内之六:二进制映像的类型识别

漫谈兼容内核之六:二进制映像的类型识别 漫谈兼容内核之六:二进制映像的类型识别 [b][size=4][align=center]漫谈兼容内核之六:二进制映像的类型识别[/align][/size][/b] [align=center][i]毛德操[/i][/align] 除了某些嵌入式系统之外,一般而言操作系统都有个在创建(或转化成)新进程时如何装入目标程序的二进制映像并启动其运行的问题。由于在计算机技术的发展历史中并没有形成某种单一的、为所有操作系统和编译/连接工具所共同遵循的标准,这个装入/启动的过程就不可避免地呈现出多样性。而且,即使是同一种操作系统,也会在其发展的过程中采用多种不同的目标映像格式和装入机理。而动态连接库技术的出现,则又使这个过程进一步地复杂化了,因为此时需要装入的不仅是目标程序的映像,还有动态连接库的映像,并且还要解决目标程序与具体库函数的动态连接问题。至于这个过程的重要性,那是不言而喻的,要不然操作系统就要么实际上不能做“有用功”,要么失去了通用性和灵活性。 以Linux应用软件为例,就既有a.out格式,又有ELF格式,又支持动态连接库。我在“情景分析”一书中只讲了a.out映像的装入和启动,是因为a.out相对比较简单,否则篇幅太大。读者也许会问,既然有了更复杂、功能更强的ELF格式,为什么还要保留a.out格式呢?这当然是为了向后

文档评论(0)

1亿VIP精品文档

相关文档