mobile theme mode icon
theme mode light icon theme mode dark icon
Random Question Losowy
speech play
speech pause
speech stop

Co to są linkery i jak działają?

Linkery to rodzaj oprogramowania, które łączy pliki obiektowe i biblioteki w celu utworzenia pliku wykonywalnego. Są wykorzystywane przy opracowywaniu systemów operacyjnych, aplikacji i innego oprogramowania. Linkery przyjmują pliki obiektowe wygenerowane przez kompilatory i biblioteki jako dane wejściowe i generują plik wykonywalny jako dane wyjściowe.

Linkery pełnią kilka funkcji, w tym:

1. Rozwiązywanie odniesień symbolicznych: Gdy program jest napisany w języku wysokiego poziomu, może zawierać odniesienia symboliczne do funkcji lub zmiennych, które nie są zdefiniowane w bieżącym kodzie źródłowym. Linker rozwiązuje te odniesienia, znajdując definicje funkcji lub zmiennych w innych plikach obiektowych lub bibliotekach.
2. Przenoszenie kodu i danych: Gdy kompilator generuje pliki obiektowe, mogą one zawierać kod i dane zależne od lokalizacji pliku obiektowego. Linker przenosi ten kod i dane do właściwej lokalizacji w pliku wykonywalnym.
3. Usuwanie niepotrzebnego kodu i danych: Linker może usunąć z końcowego pliku wykonywalnego kod i dane, które nie są potrzebne, zmniejszając jego rozmiar i poprawiając jego wydajność.
4. Tworzenie pliku wykonywalnego: Linker pobiera pliki obiektowe i biblioteki jako dane wejściowe i generuje plik wykonywalny, który można uruchomić na maszynie docelowej.

Dostępnych jest kilka typów linkerów, w tym:

1. Linkery dynamiczne: te konsolidatory tworzą plik wykonywalny zawierający odniesienie do bibliotek i innych plików obiektowych, od których jest zależny. Kiedy program jest uruchamiany, dynamiczny linker ładuje te zależności i rozwiązuje wszelkie odniesienia symboliczne w czasie wykonywania.
2. Linkery statyczne: te linkery tworzą plik wykonywalny zawierający wszystkie osadzone w nim zależności. Oznacza to, że program będzie można uruchomić bez żadnych dodatkowych zależności, ale oznacza to też, że rozmiar pliku wykonywalnego będzie większy.
3. Udostępnione konsolidatory: te konsolidatory tworzą plik wykonywalny zawierający biblioteki współdzielone, które są zbiorami kodu i danych, z których może korzystać wiele programów. Kiedy program jest powiązany z biblioteką współdzieloną, w końcowym pliku wykonywalnym zawarte są tylko określone funkcje i zmienne, które są potrzebne.

Podsumowując, linkery są istotną częścią procesu tworzenia oprogramowania, ponieważ pobierają pliki obiektowe wygenerowane przez kompilatory i bibliotek oraz utwórz plik wykonywalny, który można uruchomić na komputerze docelowym. Wykonują kilka funkcji, w tym rozwiązywanie odniesień symbolicznych, przenoszenie kodu i danych, usuwanie niepotrzebnego kodu i danych oraz tworzenie pliku wykonywalnego. Dostępnych jest kilka typów linkerów, w tym dynamiczne, statyczne i współdzielone linkery.

Knowway.org używa plików cookie, aby zapewnić Ci lepszą obsługę. Korzystając z Knowway.org, wyrażasz zgodę na używanie przez nas plików cookie. Aby uzyskać szczegółowe informacje, zapoznaj się z tekstem naszej Zasad dotyczących plików cookie. close-policy