ダイナミックリンクライブラリ (dynamic link library)
別名
・DLL (dynamic link library) 【ディー・エル・エル】
・共有ライブラリ (shared library) 【キョウユウ・ライブラリ】
・シェアードライブラリ (shared library)
広義には、プログラムと実行時にリンクされるライブラリのこと。
たとえば、システムのファイル入出力やメモリ管理機能など、多くのアプリケーションで共通して利用できるプログラムコードは、ライブラリとして独立させておき、プログラムからこれをリンクして利用するのが一般的である。この際、伝統的には、実行プログラム生成の最終段階で、リンカ(linker)を利用して静的にプログラムコードとライブラリをリンクする。こうすると、生成された実行プログラムファイルには、ライブラリのコードがそのまま組み込まれるので、実行ファイルだけですべての処理を行えるというメリットがある。しかしその一方では、多くのプログラムが同じライブラリを静的にリンクしてしまうと、ライブラリのコピーがいくつも重複してハードディスク内に保存されることになり、効率がよくない。
これに対しダイナミックリンクライブラリでは、実行プログラムの生成時にはリンク情報だけを実行プログラムファイルに組み込んでおき、このプログラムが実行されたら、このリンク情報に従ってプログラムコードとライブラリをリンクさせるようにする。この方式では、実行プログラムとライブラリの実体を組みにして管理しなければならないという欠点があるが、前述のような無駄を省くことができる。
実行時に動的に(ダイナミックに)リンク処理を行うことから、このように呼ばれている。また同一のライブラリを複数の実行プログラムで共有することから、UNIX系OSでは、共有ライブラリやシェアードライブラリ(shared library)と呼んでいる。
Windows OS(Windows 9x、Windows NT/2000)やOS/2、UNIXなど、現在ではほとんどのOSでダイナミックリンクライブラリの機構を利用できる。たとえばWindows OSでは、拡張子DLLというファイルがダイナミックリンクライブラリの実体である。拡張子の名称から、ダイナミックリンクライブラリ・ファイルは、単に「ディー・エル・エル」と呼ばれることもある。
Copyright (C) 2000-2007 Digital Advantage Corp.