a.out

✍ dations ◷ 2024-09-20 10:40:06 #可执行文件格式

a.out是旧版类Unix系统中用于执行档、目的码和后来系统中的函数库的一种文件格式,这个名称的意思是汇编器输出。

尽管目前大多数类Unix系统都已改用ELF格式,不再采用格式,但编译器和链接器依然会在用户未指定文件名时,将输出文件取名为“a.out”。

在UNIX第一版中,就出现了给PDP-7和PDP-11用的格式。之后它被UNIX System V中的COFF所取代,而COFF最后也被SVR4中的ELF格式所取代。

尽管BSD曾经沿用了一段时间的格式,但较新的BSD系统都已切换到ELF。NetBSD/i386在1.5版中正式从切换到ELF,FreeBSD/i386则是在2.2到3.0的转换中切换到ELF的。

格式对调试信息的支持是由符号表中称作“stabs”的特殊项实现的。许多COFF和ELF变体中也用到了stabs格式。

Linux在1.2版内核之前也曾使用格式(实验性的1.1.52版中加入了对ELF的支持),在此之后也被ELF取代了。 Linux之所以转向ELF,或多或少是因为在此平台上构建一个格式的函数库所需的复杂性过高:因为Linux中的ld.so不能重定位共享函数库,所以需要一个中央机构来注册各个函数库的虚拟地址域。一些BSD变体在Linux被迫转向ELF之后仍然用了很久的格式,因为相比于Linux,BSD的略微更灵活一些。由于a.out格式的相关代码已经老旧并缺乏维护,而且已经几乎没有使用a.out格式的存在,5.1版内核决定移除相应的功能支持。

MINIX 3仍将作为二进制文件的格式,但其不支持共享函数库。

执行档通常是以下几种变体之一:OMAGIC、NMAGIC、QMAGIC或ZMAGIC。

文件包含至多七节,顺序如下:

相关

  • 内分泌疾病内分泌疾病是内分泌系统的疾病。与内分泌失调相关的医学分支称为内分泌学。从广义上讲,内分泌失调可分为三类:内分泌失调通常非常复杂,由于内分泌系统中涉及的反馈机制,可能有的
  • 全身性过敏反应过敏性休克(英语:Anaphylaxis)反应系指一种严重的全身性过敏反应,发病极快且具有致命性。通常会伴随以下症状:起痒疹、舌头或咽喉肿胀、呼吸困难、呕吐、头晕及低血压;以上症状往
  • 三叶虫三叶虫纲(学名:Trilobita)的动物通称三叶虫,是节肢动物门中已经灭绝的一纲。它们最早出现于寒武纪,在古生代早期达到顶峰,此后逐渐减少至灭绝。最晚的三叶虫(砑头虫目)于二亿五千万
  • 比才乔治·比才(法语:Georges Bizet,1838年10月25日-1875年6月3日),法国作曲家。比才著名的作品包括歌剧《卡门》、戏剧配乐《阿莱城的姑娘》等。比才生于巴黎,本名Alexandre César L
  • 巴特勒尼古拉斯·默里·巴特勒(Nicholas Murray Butler,1862年4月2日-1947年12月7日),美国哲学家、外交官和教育家。他和简·亚当斯一起获得了1931年诺贝尔和平奖。巴特勒1887年创办了
  • 东海油气田东海油气田问题指中国和日本双方就开采东海油气田的争论。由于东海最宽处仅为三百六十海里,因此中日双方的专属经济区互相交叠。根据1982年《联合国海洋法公约》,如果各自主张
  • 塞加拉萨卡拉(阿拉伯语:سقارة‎;英语:Saqqara)是埃及境内一个古代大型墓地,位于开罗以南约30公里,面积约7公里乘1.5公里。该地现时仍屹立着最古老金字塔——阶梯金字塔,该金字塔在前2
  • 核反应核反应(英语:Nuclear reaction)指的是某种微观粒子与原子核相互作用(碰撞)时,使核的结构发生变化,形成新核,放出一个或几个粒子的过程;重核可以发生裂变。从原子物理学上来说,参与核反
  • 阿拉斯加狭地阿拉斯加狭地(Alaska Panhandle),是指阿拉斯加的东南隅的狭长地带,位于加拿大卑诗省的北半部的西边,但北部亚库塔特湾部分邻育空地方,是长达1,040公里的北面直线边界(西经141度)
  • 2019冠状病毒病印度尼西亚疫情3月3月4月4月过去15日过去15日2019冠状病毒病印度尼西亚疫情,介绍在2019新型冠状病毒疫情中,在印度尼西亚发生的情况。截至24日,目前共有新增确诊个案107例,累积确诊病例升至686