DLL (Dynamic Link Library)

更新日:

用語解説

DLL(Dynamic Link Library、動的リンクライブラリ)は、Windowsなどで、関数やデータを複数の実行プログラムから利用できる形で格納し、プログラムのロード時又は実行中に動的に結合する共有ライブラリです。

■ 試験で押さえるポイント

  • 暗黙的リンクでは実行ファイルがインポート情報を持ち、起動時にローダがDLLと公開シンボルを解決します。明示的リンクではLoadLibrary等で読み込み、関数アドレスを取得します。

  • 同じDLLの読取り専用コードページは複数プロセスで物理メモリを共有できますが、通常の書込み可能データやアドレス空間まで自動的に共有されるわけではありません。

  • 機能を部品化して実行ファイルを小さくし、同じコードを共用・更新できますが、ABIや版の不一致、必要DLLの欠落による依存関係障害に注意します。

■ 選択肢での判断ポイント

『実行時に結合』『複数プログラムでコードを共用』『更新や欠落が利用プログラムへ影響』が手掛かりです。静的リンクではライブラリのコードが実行ファイルへ複製されます。

例: 画像処理機能をimage.dllとして公開し、複数アプリが同じ関数を呼び出します。DLLを互換性のない版へ置換すると、呼出し規約の相違で起動に失敗します。

音声で聞く

同じ分野の用語