Asembler w kodzie linuxa | ||
---|---|---|
<<< Wstecz | Dalej >>> |
Format pliku elf powstał w Unix System Laboratories. Jest nowym standardem plików wykonywalnych i obiektowych szybko zdobywającym popularność w różnych systemach operacyjnych. Daje on możliwość relokacji poszczególnych fragmentów pliku, oraz dynamicznego łączenia symboli. W stosowanych wcześniej rozwiązaniach biblioteki miały na stałe przydzielone adresy w pamięci procesu - każda w innym miejscu, aby można było ich używać na raz w jednym programie. Wykorzystując format elf, możemy przydzielić funkcjom bibliotecznym adresy dopiero w trakcie ładowania kodu do wykonania.
W nagłówkach pliku elf umieszczone są informacje niezbędne zarówno do powiązania (zlinkowania) go z innymi plikami, jak i do prawidłowego umieszczenia go w pamięci procesu (gdy uruchamiamy go jako program)
Plik elf dzieli się na sekcje o różnym przeznaczeniu. Najistotniejsze z nich, to:
.text - zawierająca kod wykonywalny
.data - zawierająca zainicjowane dane
.bss - zawierająca opis rozmiaru i położenia niezainicjowanych danych
.rodata - zawierająca dane niemodyfikowalne
<<< Wstecz | Spis treści | Dalej >>> |
Linux i asembler | Rejestry |