.
【第13回】
DLLと60個の音楽室
(03/02/03)
窓の杜高校、超パソコン部の部室。
あらあら、めも理ちゃん。今日も部室でフリーズしています。
一体どうしたのでしょう?
DLLって何?
|
さあ、今日も元気にパソコンを使って遊ぶことにするわ。昨日先輩に紹介された、このアプリケーションを使ってみることにしようかな。どれどれ、『画像を表示するDLLが必要です。対応するDLLを入手してください』……DLLって何? 新手の秘密兵器なの?
|
|
どうしたんですか、めも理ちゃん。パソコンの前で、ブツブツ独り言なんか言って。
|
|
窓太、いいところに来たわ。アプリケーションのヘルプを読んでいたら、DLLっていう謎の言葉が登場したのよ。DLLって一体何?
|
|
DLLは、ダイナミック・リンク・ライブラリと呼ばれるものでして……
|
|
はっ、何それ?
そう言えば、インターネットでダウンロードしたファイルを解凍ソフトで開こうとしたら、『圧縮形式に対応したDLLがありません』とか言われることもあるわね。あの時も謎の言葉DLLでつまづいたのよ。
ねえ、窓太。DLLって一体何者なの!
|
|
えー、音楽室のようなものです。
|
|
えっ? さっぱり分からないわよ。
|
|
じゃあ簡単に説明をしましょうか?
|
|
うーん、そうね、3秒で分かるぐらい簡単に説明してよ。
|
|
えー、善処します。
|
音楽室の秘密
|
めも理と窓太の4コマまんが 「迷子」 |
|
音楽室に着きました。さて、この音楽室は、めも理ちゃんがいつも勉強している教室と比べて、大きく違う点が1点あります。それは何だと思いますか?
|
|
うーん、楽器が置いてあることかなあ。
|
|
それもありますけどね。一番大きな違いは学校に1つしかないことです。各クラスに1つずつ教室がある中、音楽室は学校に1つしかないのです。
|
|
あれ、確かにそうね。そう言われてみると不思議な気がしてきたわ。各クラスに1つずつ音楽室があってもいいのにね。
|
|
そうです。でも、もう少し考えてみて下さい。窓の杜高校のクラスは何クラスありますか?
|
|
何クラスかって、全学年合わせたら60クラスよ。
|
|
この校舎に60個もの音楽室があるとどうなります?
|
|
うーん、邪魔かも。
|
|
そうです。邪魔なんです。1週間で数回しか使わず、ほとんどが空き時間なのに、場所ばかり取ってしまうので非効率です。だから共通化して1つの教室にしてしまっているわけです。
DLLも、この音楽室と同じ発想で作られたものなのです。アプリケーションやOSといったソフトがもっている機能のうち、他のソフトと共通化できる部分がありますよね。例えば、通信を担当する部分とか、特定の画像形式を画面に表示するための部分とか。
|
|
確かに共通化できそうな部分ね。学校中で、1つの音楽室をみんなで使っているように。
そうか! こういった共通化できる部分を、他のソフトからも利用できるように、まとめてしまうわけね。
|
|
そうすると色々と便利なのです。共通化した分、ソフトのファイルサイズが小さくできますし、それに、同じ機能の部分を何度も作らなくて済むようになります。
このように、ソフトの機能を他のソフトからも利用できるように共通化したファイルがダイナミック・リンク・ライブラリ、すなわちDLLと呼ばれるものなのです。
|
|
じゃあ、音楽室を色々なクラスの生徒が利用できるように、DLLは複数のアプリケーションから使えたりするの?
|
|
そうなんです。つまり、アプリケーションのヘルプやReadMeに、『○○のDLLを入手して下さい』と書かれている場合は、音楽室が各クラスから利用できるように、いろんなアプリケーションから共通して使用できるファイルがあるので、そのファイルを入手して下さいという意味なんです。
|
|
なるほど、いろんなアプリケーションが使う共通の部分は、共通のファイルになっているというわけね。
|
|
その通りです。分かってもらえたようですね。みんなが使う物を、まとめて共通化しておくと、余分な場所を取らずに便利なんです。アプリケーションなら、同じ部分を何度も作らなくてよいという利点もありますしね。
|
部室
|
じゃあ、窓太。音楽の授業の補習があるので、今から音楽室に行って来るわ。
|
|
いってらっしゃい。
|
|
さあ、音楽室はこの廊下を右に曲がった所ね。……あれっ? 違うわね。じゃあ、左かな。違う。あれっ、音楽室がどこか分からない。仕方ないわ。一端部室に退却よ。
|
|
あれっ、めも理ちゃん。音楽室に行ったんじゃなかったんですか?
|
|
道に迷ったのよ。
|
|
やれやれ、せっかく音楽室をみんなで使えるようにしていても、めも理ちゃんみたいに迷子になる人には意味がないようですね。まさか、学校の中で迷うとは思ってもいませんでした。
|
|
私も思わなかったわよー。
|
今回出てきた用語の解説
【DLL】 ダイナミック・リンク・ライブラリの略。アプリケーションやOSはこのDLLを読み込んで、プログラムの一部として実行できる。Windowsでは、拡張子が“.dll”となっているファイルを指す。
少し実例を示そう。例えば解凍ソフト。解凍ソフトは、各圧縮形式に対応したDLLを別途入手して使用することが多い。これらのDLLは、特定の圧縮形式のファイルを解凍するプログラム部分を、DLLという形でまとめたものである。これらのDLLは、解凍ソフトでも圧縮ソフトでも使えるように、解凍・圧縮の両方の機能を備えていることも多い。
また、画像ビューワーでも、特定の画像形式に対応したDLLを別途入手することがある。この場合のDLLは、特定の画像形式のファイルを表示するプログラム部分をDLLという形でまとめたものが多い。
(クロノス・クラウン:柳井 政和)