En un sentit general, una biblioteca de sistemes és un dipòsit de dades que fan servir els sistemes operatius o el programari d’aplicacions durant el funcionament o la compilació.
Les biblioteques de sistemes contenen subrutines i funcions d'ús habitual. Pel que fa a la programació, les biblioteques emmagatzemen classes habituals per treballar amb gràfics, matrius, diàlegs i molt més.
El concepte de biblioteca de sistemes és aplicable tant a programes individuals com a sistemes operatius en general, i això s’aplica a famílies de Windows, UNIX i Mac.
La definició de "biblioteca" va aparèixer per primera vegada el 1951 al llibre de M. Wilkes, D. Wheeler i S. Gill "Programació per a màquines electròniques de càlcul"
Segons el principi de funcionament, les biblioteques de sistemes es divideixen en dinàmiques i estàtiques.
Biblioteques dinàmiques
Les biblioteques d’enllaços dinàmics són un component que es carrega a la memòria quan el programa en execució ho sol·licita. Per tant, no cal copiar el codi de la subrutina a cada aplicació: les funcions més habituals s’emmagatzemen com a biblioteca.
A més, la biblioteca carregada a la memòria RAM es pot utilitzar simultàniament per diverses aplicacions, cosa que estalvia recursos del sistema. Això era especialment cert als primers temps de la informàtica.
Els fitxers Dynamic Link Library del Windows OC tenen l'extensió.dll (Dynamic Link Library) i s'emmagatzemen al directori system32. Components similars en sistemes similars a UNIX s’anomenen objectes compartits i tenen l’extensió.so, en Mac OS -.dlyb.
Maurice Wilkes i altres van donar la següent definició a una biblioteca: un programa breu i prèviament preparat per a operacions de càlcul individuals (estàndard) amb freqüència.
No va ser possible obtenir tots els avantatges d'un enfocament modular per a l'execució del programa. Això es deu al fenomen conegut com DLL hell, en què el programa sol·licita simultàniament diferents versions de la mateixa biblioteca (DLL). Això comporta fallades i una fiabilitat reduïda del SO.
En els sistemes operatius moderns de la família Windows, per evitar conflictes, es permet l’ús de diferents versions de biblioteques, cosa que augmenta la fiabilitat, però contradiu el mateix principi de modularitat.
Biblioteques estàtiques
Les biblioteques estàtiques també emmagatzemen codis de subrutina i de funció, però a diferència dels dinàmics, s’utilitzen en la compilació de programes. És a dir, tot el codi requerit s’inclou al programa. L'aplicació esdevé autònoma, independent de les biblioteques dinàmiques, però creix en mida.
Com a regla general, al Windows, els fitxers d'aquestes biblioteques tenen l'extensió.lib, en sistemes similars a UNIX -.a.
Treballar amb la majoria dels llenguatges compilats, per exemple, C, C ++, Pascal, és impossible sense biblioteques estàtiques.