a.out - a.out

a.out
Rozszerzenie nazwy pliku
brak, .o, .więc, .out
Opracowany przez AT&T
Rodzaj formatu Biblioteki binarne , wykonywalne , obiektowe , współdzielone

a.out to format plików używany w starszych wersjach systemu Unix komputerze systemów operacyjnych dla plików wykonywalnych , kodu wynikowego , aw późniejszych systemów, bibliotek współdzielonych . Jest to skrócona postać „ asemblera wyjście”, nazwa pliku wyjściu Ken Thompson jest PDP-7 montera. Termin ten został następnie zastosowany do formatu wynikowego pliku w celu kontrastu z innymi formatami kodu obiektowego.

"a.out" pozostaje domyślną nazwą pliku wyjściowego dla plików wykonywalnych utworzonych przez niektóre kompilatory i konsolidatory, gdy nie określono nazwy wyjściowej, nawet jeśli utworzone pliki w rzeczywistości nie są w formacie a.out.

Historia

A.out Format dla PDP-7 , podobnie jak a.out formatu używanego na PDP-11 , pojawił się w pierwszej edycji UNIX. Został on zastąpiony przez format COFF w AT&T Unix System V , który z kolei został zastąpiony przez format ELF w Systemie V Release 4 .

Chociaż Berkeley Unix przez jakiś czas używał formatu a.out , nowoczesne systemy BSD przeszły od tego czasu na ELF. NetBSD/i386 przeszedł formalnie z a.out na ELF w wydaniu 1.5 (grudzień 2000). FreeBSD/i386 przeszedł na ELF podczas przejścia z 2.2 do 3.0 (październik 1998).

MINIX 3 przeszedł na ELF w wersji 3.2.0.

Linux również używał a.out aż do jądra 1.2 (marzec 1995), kiedy został zastąpiony przez ELF również dla tej platformy. Obsługa ELF została dodana w eksperymentalnym jądrze 1.1.52. Przejście Linuksa na ELF było mniej lub bardziej wymuszone ze względu na złożoną naturę budowania bibliotek współdzielonych a.out na tej platformie, która obejmowała konieczność zarejestrowania wirtualnej przestrzeni adresowej, w której znajdowała się biblioteka, w urzędzie centralnym, jako a. out ld.so w Linuksie nie mógł przenieść bibliotek współdzielonych. Różne odmiany BSD mogły nadal używać plików binarnych a.out długo po tym, jak Linux został zmuszony do przejścia na ELF, ze względu na nieco bardziej elastyczną naturę formatu a.out BSD w porównaniu z Linuksem. Format pliku a.out w systemie Linux został przestarzały wraz z wydaniem jądra 5.1 Linux.


Posługiwać się

Łączenie

Debugowanie

Wsparcie a.out dla informacji debugowania odbywa się poprzez użycie specjalnych wpisów w tablicy symboli zwanych stabs . Format pchnięć był również używany w wielu odmianach COFF i ELF .

Zobacz też

Bibliografia

Linki zewnętrzne