seegongsik
オペレーティングシステム

わかりやすく デバイスドライバ とは

10回目のレッスンまで、オペレーティングシステムは内側でCPUとメモリを取りしきってきました。でもコンピュータは、外の装置とも話をしなければなりません。キーボード、マウス、画面、ディスク、プリンター、それにオペレーティングシステムが作られたときにはなかった、昨日買ったばかりの新しい装置まで。装置ごとに話す言葉が違うのに、どうやって全部わかるのでしょうか。

01

世の中には装置がありすぎる

コンピュータにつながる装置は、きりがないほどたくさんあります。キーボード、マウス、画面、ディスク、プリンター、カメラ。しかも新しい装置が毎年次々と出てきます。
装置ごとにやりとりする信号もばらばらです。
オペレーティングシステムが、これを全部覚えることはできません。

OS

装置を押すと、それぞれ違う信号で話すので、オペレーティングシステムだけでは聞き取りにくいことがわかります。

装置ごとに言葉が違うので、途方に暮れます。かといって、装置一つひとつに合わせてオペレーティングシステムを作り直すこともできません。新しい装置は次々と出てくるからです。
そこで、二つのあいだにだれかを立てます。通訳です。

02

ドライバーは通訳

オペレーティングシステムは、決まった標準の言葉だけを使います。「読む」「書く」「開く」のような単純な頼みです。
装置ごとについてくるドライバーが、その言葉を通訳します。オペレーティングシステムの「読む」を、その装置だけがわかる信号に置きかえ、装置の返事もまた標準の言葉に直してくれるのです。

読む→通訳→

標準の命令「読む」を送ると、ドライバーがそれぞれの装置の信号に通訳します。

オペレーティングシステムはいつも同じ標準の言葉を話せばよく、装置ごとのややこしい事情はドライバーが全部引き受けます。
では、オペレーティングシステムが一度も見たことのない、まったく新しい装置は、どうやって使えるのでしょうか。

03

新しい装置?ドライバーを入れるだけ

オペレーティングシステムは、装置ではなくドライバーとだけ話します。だから初めて見る新しい装置が来ても、方法は簡単です。その装置のドライバー、つまり専用の通訳を入れるだけです。
オペレーティングシステム自身は何一つ直さなくても、ドライバーがあいだをつないでくれるので、すぐに使えます。

OS✗新しい装置?
通じない

新しい装置をつなぐと、はじめは話が通じませんが、ドライバーを入れるとすぐに通じます。

ドライバー一つで、新しい装置まで難なく受け入れられます。これで話は通じますが、もう一つ残っていることがあります。
装置はたいてい、CPUよりずっと遅いのです。オペレーティングシステムは、その遅い装置をどう待つのがよいでしょうか。

04

聞き続けずに、肩をたたいてもらう

オペレーティングシステムが遅い装置のそばで「できた?できた?」と聞き続けながら待っていると、速いCPUはそのあいだ遊んでしまいます。
それではもったいなさすぎます。そこで頼みだけしておいて、ほかの仕事をします。装置は仕事が終わると、割りこみで肩をトンとたたきます。「終わったよ!」
そこでやっとオペレーティングシステムが戻ってきて、片づけるのです。

CPU

二つのやり方を比べると、聞き続けるほうはCPUが遊び、肩たたきのほうはCPUがほかの仕事をします。

肩をたたいてもらうので、CPUは一瞬も遊びません。頼んでおいてほかの仕事をし、合図が来たらそのときに片づけます。
この割りこみが、外の装置と働くための大事な腕前です。では、通訳と肩たたき、二つがそろうとどうなるでしょうか。

05

通訳と肩たたきで外とうまくやる

オペレーティングシステムは、どこまでも増え続ける装置を二つの腕前で扱います。装置ごとに通訳するドライバーと、終わったら知らせる割りこみです。
おかげで、初めて見る装置まで、むだなく扱えます。
そのたくさんの装置のうち、とくに大事なものが一つあります。ファイルが住むディスクです。オペレーティングシステムは、そのディスクをどう整理するのでしょうか。

OS
ドライバー↔キーボード
ドライバー↔ディスク
ドライバー↔プリンター

オペレーティングシステムを真ん中に置くと、ドライバーが通訳し、装置が割りこみで肩をたたく様子が見えます。

まとめると、外の装置とうまくやる秘訣は二つです。装置ごとに言葉を置きかえる通訳であるドライバーと、遅い装置が仕事を終えたら知らせる肩たたきである割りこみです。
この二つで、オペレーティングシステムは世界中のどんな装置とも手を組めます。次のレッスンでは、その装置のうちディスクを、ファイルとフォルダーで整理する方法を見ます。

一言でいうとオペレーティングシステムは、すべての装置をじかに知らなくてもかまいません。標準の言葉で頼めば、装置ごとについてきた「ドライバー」が、その言葉をその装置の信号に通訳してくれるからです。だから新しい装置は、ドライバーを入れるだけですぐに使えます。また、遅い装置を待つときは「できた?」と聞き続けずに、装置が終わったら割りこみで肩をたたいてもらいます。そのあいだ、CPUはほかの仕事をします。
← オペレーティングシステム
このページがお役に立ったなら支援する