a.out - a.out

редактировать
Старый формат исполняемого файла unix
a.out
Расширение имени файла none,.o,.so
РазработаноAT&T
Тип форматаДвоичный, исполняемый, объект, разделяемые библиотеки

a.out- это формат файла, используемый в более старых версиях Unix-подобных компьютерных операционных систем для исполняемых файлов, объектного кода, а в более поздних системах - разделяемые библиотеки. Это сокращенная форма «ассемблер вывод», имя файла вывода ассемблера Кена Томпсона PDP-7. Впоследствии этот термин был применен к формату результирующего файла, чтобы контрастировать с другими форматами объектного кода.

"a.out" остается именем выходного файла по умолчанию для исполняемых файлов, созданных некоторыми компиляторами и компоновщиками, когда выходное имя не указано, даже если созданные файлы на самом деле не в формате a.out.

Содержание

  • 1 История
  • 2 Использование
    • 2.1 Связывание
    • 2.2 Отладка
  • 3 См. также
  • 4 Ссылки
  • 5 Внешние ссылки

История

Формат a.out для PDP-7, аналогичный формату a.out, используемому в PDP-11, появился в первое издание UNIX. Он был заменен форматом COFF в AT&T Unix System V, который, в свою очередь, был заменен форматом ELF в System V Release 4.

Хотя Berkeley Unix продолжал использовать формат a.out в течение некоторого времени, современные BSD-системы с тех пор перешли на ELF. NetBSD / i386 формально переключился с a.out на ELF в версии 1.5 (декабрь 2000 г.). FreeBSD / i386 перешла на ELF во время перехода с 2.2 на 3.0 (октябрь 1998 г.).

MINIX 3 переключился на ELF в версии 3.2.0.

Linux также использовал a.out до ядра 1.2 (март 1995 г.), когда он был заменен ELF для этой платформы. (Поддержка ELF была добавлена ​​в экспериментальное ядро ​​1.1.52.) Переход Linux на ELF был более или менее вынужденным из-за сложной природы построения разделяемых библиотек a.out на этой платформе, что включало необходимость регистрации виртуального адресного пространства по адресу Библиотека находилась в центральном офисе, поскольку a.out ld.so в Linux не мог перемещать разделяемые библиотеки. Различные варианты BSD могли продолжать использовать двоичные файлы a.out еще долго после того, как Linux был вынужден перейти на ELF, из-за несколько более гибкого характера формата a.out BSD по сравнению с Linux. Формат файла a.out в Linux устарел с выпуском ядра Linux 5.1.

Используйте

Связывание

Отладка

Файл a.out поддержка информации debug осуществляется с помощью специальных записей в таблице символов, называемых stabs. Формат stabs также использовался во многих вариантах COFF и ELF.

См. Также

Ссылки

Внешние ссылки

Последняя правка сделана 2021-06-07 18:24:46
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте