A DLL ( angolul Dynamic Link Library - „dynamic link library”, „dynamic link library”) a Microsoft Windows és az IBM OS / 2 operációs rendszerekben egy dinamikus könyvtár , amelyben a programok függvényeket, változókat stb. tárolhatnak. Ezek a könyvtárak általában rendelkeznek a kiterjesztése DLL, OCX ( ActiveX - et tartalmazó könyvtárak esetén ) vagy DRV (számos rendszer-illesztőprogramhoz ). A DLL-ek fájlformátuma megegyezik a Windows EXE-fájlokéval, azaz a 32 bites és 64 bites Windows-alkalmazásokhoz a Portable Executable ( PE ), a 16 bites alkalmazásokhoz pedig a New Executable ( NE ) használható. Az EXE-ekhez hasonlóan a DLL-ek is tartalmazhatnak kód-, adat- és erőforrásrészeket. A Unix rendszerekben hasonló funkciókat az úgynevezett megosztott objektumok hajtanak végre .
A DLL-lel azonos formátumú, de eltérő kiterjesztésű vagy csak egy erőforrásszakaszt tartalmazó adatfájlokat erőforrás-DLL-nek nevezhetjük. Ilyenek például az ikonkönyvtárak, amelyek néha .icl kiterjesztéssel rendelkeznek , és a fontfájlok, amelyek .fon és .fot kiterjesztéssel rendelkeznek.
Kezdetben azt feltételezték, hogy a DLL bevezetése lehetővé teszi a memória és a lemezterület hatékony szervezését, a könyvtármodul egyetlen példányát használva különböző alkalmazásokhoz. Ez különösen fontos volt a Microsoft Windows szűk memóriakorlátokkal rendelkező korai verzióinál .
Továbbá a modularitásnak köszönhetően javítani kellett a rendszereszközök fejlesztésének és használatának hatékonyságát. A DLL -programok egyik verzióról a másikra való cseréje lehetővé tette a rendszer önálló növekedését az alkalmazások befolyásolása nélkül. Ezenkívül a dinamikus könyvtárakat különféle típusú alkalmazások használhatják – például a Microsoft Office , a Microsoft Visual Studio stb.
Később a modularitás ötlete a komponensobjektum-modell és a rendszerobjektum -modell fogalmává nőtt .
Valójában a dinamikus hivatkozási könyvtárak megvalósításának minden előnye nem valósult meg a DLL pokolnak ("DLL pokol") nevezett jelenség miatt. A DLL-pokol akkor következik be, amikor több alkalmazás egyidejűleg különböző, nem teljesen kompatibilis könyvtárverziókat igényel, ami ezekben az alkalmazásokban összeomláshoz és konfliktusokhoz vezet, ami drasztikusan csökkenti az operációs rendszerek általános megbízhatóságát. A Microsoft Windows későbbi verziói lehetővé tették a DLL -ek különböző verzióinak párhuzamos használatát ( Side-by-side assembly technology ), ami tagadta az eredeti modularitási elv előnyeit.
Számos segédprogram is lehetővé teszi az alkalmazások beépülő DLL-ektől való függőségének nyomon követését. Például lásd:_dll a Microsoft Visual Studio programból .
API -k | OS/2 összetevők és|
---|---|
Fő | |
Menedzsment szolgáltatások | |
Játékok |
|
OS kernel | |
Fájlrendszerek | |
Grafikai alrendszer |
|
Objektummodell | SOM
|
Kompatibilitás |
|