Linux/Definicje/Biblioteka

Biblioteka to zbiór pewnych funkcji wykonywalnych, zawartych w jednym pliku. Mogą one być używane przez wiele programów.

System GNU/Linux w ogromnym stopniu wykorzystuje biblioteki; prawidłowo przygotowany program dla tego systemu nie może mieć postaci jednej binarki, która bezpośrednio wykonuje się na procesorze. Musi korzystać przynajmniej z bibliotek systemowych - które zawierają funkcje niezbędne do komunikacji programu z systemem, oraz do wykonywania się programu.

Takie rozwiązanie ma sporo zalet:

  • jeżeli znajdziemy błąd w jakiejś podstawowej funkcji, to wystarczy zmienić jedną bibliotekę, a nie setki programów
  • wszystkie programy korzystają z takich samych funkcji podstawowych - a więc działanie całości uruchomionego systemu jest bardziej przewidywalne
  • każdy program będzie zajmował mniej miejsca, ponieważ nie będzie dublował funkcji
  • znaczne zwiększenie kontroli systemu nad poszczególnymi programami.

Ma to też oczywiście i wady, ale obecnie mają one coraz mniejsze znaczenie:

  • konieczność istnienia zainstalowanych w systemie wymaganych przez program bibliotek (jeżeli którejś brakuje, to trzeba dodatkowo ją doinstalować)

Wiele programów ma również biblioteki wykorzystywane tylko przez dany program - taka budowa znacznie ułatwia rozwijanie programu.