Important Notice
The pages on this site contain documentation for very old MS-DOS software,
purely for historical purposes.
If you're looking for up-to-date documentation, particularly for programming,
you should not rely on the information found here, as it will be woefully
out of date.
Dynamic-Link Libraries
◄Up► ◄Contents► ◄Index► ◄Back►
─────Dynamic-Link Libraries─────────────────────────────────────────────────
What Is a Dynamic-Link Library?
A DLL contains executable code for common functions, as does a
standard library. However, in DLLs code for functions is not
copied into the executable file. Instead, the library itself is
loaded into memory at run time, along with the executable file.
Advantages of Dynamic Linking
DLLs serve much the same purpose that standard libraries do, but
they also have the following advantages:
1. Applications require less disk space.
With dynamic linking, several different applications can use
the same dynamic-link function stored in one place. Without
dynamic linking, the code for the function must be repeated
in every program.
2. Code and data segments can be shared.
Code and data segments loaded from a DLL can be shared.
Without dynamic linking, such sharing is not possible because
each file has its own copy of all the code and data it uses.
By using dynamic linking to share segments, you can use
memory more efficiently.
3. Libraries and applications are independent.
DLLs can be updated any number of times without relinking the
applications that use them. If you use third-party libraries,
this is particularly convenient. You receive the updated DLL
from the third-party developers and copy the new library onto
your disk. At run time, your applications automatically call
the updated functions.
4. Applications link faster.
With dynamic linking, the executable code for a dynamic-link
function is not copied into the application's executable
file. Instead, only an import definition is copied.
-♦-