Een Dynamic Link Library is een speciaal soort uitvoerbaar bestand
dat code bevat die door verschillende applicaties kan worden gedeeld.
Dynamic link libraries hebben meestal een .DLL bestandsnaam
uitbreiding.
DLL's kunnen of met het besturingssysteem of met een applicatie meekomen.
De systeemcode van &os2; zelf is ook in grote mate verzameld in DLL's. die staan
in de
OS2\DLL directory's op het opstartstation.
OS2\DLL en ecs\dll directory's op het opstartstation.
"Dynamisch linken" betekent dat de code uit de module alleen wordt geladen
als een bepaalde applicatie er om vraagt. Als de code reeds geladen is door een
andere applicatie wordt hij hergebruikt. Dit heeft verschillende voordelen:
- Diverse applicaties kunnen de code delen van een DLL
wat u zowel schijfruimte als hoofdgeheugen bespaart.
- Applicaties kunnen als modules gemaakt worden. B.v., het
taalafhankelijke deel (NLS) voor een DLL kan in een aparte DLL zitten.
Dit maakt wijzigingen van de taal in een applicatie mogelijk door de
wisseling van een enkel bestand.
DLL's kunnen ook de software ondersteuning vereenvoudigen omdat dan het
opnieuw versturen van een complete applicatie, om fouten te herstellen,
niet zo vaak nodig is.
- DLL's kunnen recente subsystemen bevatten die door verschillende
applicaties worden gebruikt, omdat een DLL gegevens kan delen tussen processen.
Dit maakt b.v. gegevensuitwisseling eenvoudiger en is ook ‚‚n van de
redenen waarom grote delen van &os2; zelf zijn opgeslagen in DLL's.
- DLL's kunnen worden gebruikt om een applicatie uit te breiden.
Als de applicatie is ontwikkeld om uitbreiding m.b.v. DLL's te ondersteunen, kan iedereen
zulke uitbreidingen ontwikkelen en die dan naadloos integreren in de applicatie.
Het beste voorbeeld hiervan is de Workpalce Shell van &os2; zelf, die in functionaliteit
kan worden uitgebreid door toevoegingen van derden.
Zie:
&xwp;: Workplace Shell Classes
voor details.
Een ander voorbeeld is het
&xcenter;
dat, voor uitbreiding, 'plug-in' DLL's ondersteunt.