1. file desk
bibliotheques dll filedesk dll
Un programme informatique est construit à partir d'un ensemble de fichiers source contenant
des fonctions2. Les bibliothèques logicielles sont des lots de fonctions stockées dans des
fichiers. Une bibliothèque logicielle contient généralement un ensemble de fonctions autour
du même sujet3. Par cette technique, une modification subséquente d'une des fonctions de
la bibliothèque nécessite de la re-créer, sans qu'il soit nécessaire de re-créer la totalité de
l'application2.
Cette technique nécessite de charger en mémoire les fichiers de bibliothèque en même
temps que le programme qui les utilise4, ensuite de quoi un programme - l'éditeur de liens -
rend l'application opérationnelle en tissant des liens entre les différents fichiers4.
Les bibliothèques logicielles peuvent être:
statique
une bibliothèque statique est incorporée dans un programme et l'édition de liens est
effectuée pendant sa construction. Lorsqu'une bibliothèque statique est modifiée, chaque
programme qui l'utilise doit être reconstruit pour incorporer les modifications3.
partagée
une bibliothèque partagée n'est pas incorporée dans les programmes qui l'utilisent, mais est
reliée à ces programme lors de leur chargement, c'est-à-dire immédiatement avant
l'exécution du programme. Une bibliothèque partagée peut être utilisée par de nombreux
programmes et une modification de la bibliothèque ne nécessite pas de reconstruction des
programmes, du moment que l'interface de programmation de la bibliothèque ne change
pas3.
dynamique
les bibliothèques dynamiques sont identiques aux bibliothèques partagées, mais sont
utilisées d'une manière différente. De telles bibliothèques sont reliées à l'application lorsque
celle-ci en a besoin. Les programmes qui les utilisent comportent les instructions nécessaire
au chargement et à la liaison3.
Dans la technique de la liaison dynamique utilisée par les DLL, l'opération de liaison est
exécutée en deux temps: tout d'abord, au moment de la construction de l'application,
l'éditeur de liens crée des connecteurs, puis au chargement - immédiatement avant
l'exécution de l'application - les connecteurs sont reliés entre eux4. Les DLL sont au format
COFF, également utilisé dans IBM AIX5.