新しいグラフィックカードを手に入れて早速使おうとしたところ、デバイスドライバがみつかりませんなんていわれることありますよね。
ちょくちょく耳にするであろうデバイスドライバとは何なのか、見ていきましょう。
OSがデバイスとやり取りする仕組み
デバイスとは、マウスやキーボード、ストレージなど、何かしらの機器のこと。OSはこれらの機器とマザーボードを通してやりとりしています。
例えば、ストレージにデータを保存するときはOSがそのストレージにわかるデータを用意して、そのデータをマザーボードにお願いをしてストレージに送ってもらいます。
逆にマウスなどの入力はマザーボードから通知が来るので然るべきタイミングでデータを受け取り、そのデータが何を意味するかOSが考えて反応します。
知らないデバイスの場合は
さて、この仕組みではOSがすべてのデバイスについて熟知しておく必要があります。というのも、それぞれのデバイスとどんなデータをやり取りするのかわかっていないといけないからです。
しかし、デバイスの種類は多様化してきて、OSには使い方がわからないオレオレデバイスも登場しました。
そこで、そのデバイスの使い方を知っている「デバイスドライバ」にデバイスとのやり取りをお願いすることにし、OSはデバイスドライバ共通の入力と出力だけ知っていればいろいろなデバイスが使える状態にしました。
もちろん一々デバイスドライバを作るのはめんどくさいという人もいて、そういう場合はOSが元々持っている、デバイスドライバに相当する機能に合わせてデバイスを作ってもらえばいいことにしました。
デバイスドライバのデメリット
さて、デバイスドライバに仲介してもらうことで未知のデバイスでもOSが扱えるようになりました。とはいえ、デバイスドライバも完璧ではありません。
まず、OS毎にデバイスドライバを開発する必要があります。LinuxでWindows向けデバイスドライバを使えるようにするソフトウェアもあるようですが、完全に動作するわけではありません。
また、デバイスドライバさえ書けばいいだろうと考え、使いにくい独自インターフェースのオレオレデバイスが生まれてしまっています。これらのデバイスドライバは更新されることも少なく、セキュリティ的にも疑問です。
そして何より、デバイスを使うためにはそのデバイスドライバをインストールする必要があり、面倒だという点です。専用のデバイスドライバをインストールしなくてもある程度の機能はつかえるというデバイスもありますが、多くの場合はデバイスドライバのインストールは必須です。
まとめ
OS製作者が想定していないおもしろいデバイスを簡単に使えるようになった一方で、セキュリティ的に疑問が残るデバイスドライバやそもそも使っているOS向けのデバイスドライバがない、なんてことも起こります。
とはいえ、グラフィックボードなどの性能を引き出すためにはデバイスドライバのインストールが必須なので、面倒臭がらずにインストールしておきましょう。