Which of the following is NOT an advantage of using shared, dynamically linked libraries as opposed to using statistically linked libraries?
View worked solution
Answer: C
To determine which option is NOT an advantage of using shared, dynamically linked libraries (DLLs) compared to statically linked libraries, let us analyze each option:
- Option A: Smaller sizes of executable files
Advantage of Dynamic Linking. In static linking, the library code is copied directly into each executable. In dynamic linking, only references to the library are stored, resulting in significantly smaller executable files on disk. - Option B: Lesser overall page fault rate in the system
Advantage of Dynamic Linking. Since multiple running programs share a single copy of the dynamic library in physical memory, the overall memory footprint is reduced. This leads to fewer page faults across the system compared to having multiple redundant copies of static libraries in memory. - Option C: Faster program startup
Not an advantage of Dynamic Linking. Dynamically linked programs require the operating system to locate, load, and bind the shared libraries at startup (or during runtime). This extra resolution step makes the startup time slower compared to statically linked programs, where all symbols are already resolved and packaged inside the executable. - Option D: Existing programs need not be re-linked to take advantage of newer versions of libraries
Advantage of Dynamic Linking. If a shared library is updated (e.g., to fix a bug), any program using it automatically benefits from the update without needing to be re-compiled or re-linked.
Thus, Faster program startup is not an advantage of dynamic linking.
Free practice · Your answers on this page are not saved.
