En ciencias de la computación, una
biblioteca es un conjunto de subprogramas
utilizados para desarrollar software. Las bibliotecas contienen código y datos,
que proporcionan servicios a programas independientes, es decir, pasan a formar
parte de estos. Esto permite que el código y los datos se compartan y puedan
modificarse de forma modular.
Algunos
programas ejecutables pueden ser a la vez programas independientes y
bibliotecas, pero la mayoría de estas no son ejecutables. Ejecutables y
bibliotecas hacen referencias (llamadas enlaces) entre sí a través de un
proceso conocido como enlace, que por lo general es realizado por un software
denominado enlazador.
La
mayoría de los sistemas operativos modernos proporcionan bibliotecas que
implementan los servicios del sistema. De esta manera, estos servicios se han
convertido en una "materia prima" que cualquier aplicación moderna
espera que el sistema operativo ofrezca. Como tal, la mayor parte del código
utilizado por las aplicaciones modernas se ofrece en estas bibliotecas.