Dynamically linked library

(DLL) A library which is linked to application programs when they are loaded or run rather than as the final phase of compilation. This means that the same block of library code can be shared between several tasks rather than each task containing copies of the routines it uses. The executable is compiled with a library of “stubs” which allow link errors to be detected at compile-time. Then, at run time, either the system loader or the task’s entry code must arrange for library calls to be patched with the addresses of the real shared library routines, possibly via a jump table.
The alternative is to make library calls part of the operating system kernel and enter them via some kind of trap instruction. This is generally less efficient than an ordinary subroutine call.
It is important to ensure that the version of a dynamically linked library is compatible with what the executable expects.
Examples of operating systems using dynamic linking are SunOS (.so – shared object files), Microsoft Windows (.dll) and RISC OS on the Acorn Archimedes (relocatable modules).


Read Also:

  • Dynamically scoped

    dynamic scope

  • Dynamically typed

    dynamic typing

  • Dynamic analysis

    programming Evaluation of a program based on its execution. Dynamic analysis relies on executing a piece of software with selected test data. (1996-05-13)

  • Dynamic binding

    The property of object-oriented programming languages where the code executed to perform a given operation is determined at run time from the class of the operand(s) (the receiver of the message). There may be several different classes of objects which can receive a given message. An expression may denote an object which may have more […]

Disclaimer: Dynamically linked library definition / meaning should not be considered complete, up to date, and is not intended to be used in place of a visit, consultation, or advice of a legal, medical, or any other professional. All content on this website is for informational purposes only.