基本情報技術者 2019年 春期 午前(科目A) 問17
問題文
デバイスドライバの説明として、適切なものはどれか。
選択肢
ア:PCに接続された周辺機器を制御するソフトウェア(正解)
イ:アプリケーションプログラムをPCに導入するソフトウェア
ウ:キーボードなどの操作手順を登録して、その操作を自動化するソフトウェア
エ:他のPCに入り込んで不利益をもたらすソフトウェア
🔒 解説は解答すると表示されます
デバイスドライバ【午前解説】
正解の理由
選択肢の中で、周辺機器(プリンタ、キーボード、マウス、ネットワークカード等)を直接制御し、OS に対して機能を提供するソフトウェアを指すのはアだけです。デバイスドライバはハードウェア固有の命令セットや入出力(I/O)制御、割り込み処理、バッファ管理などを実装し、アプリケーションやOSからは標準化されたインターフェースとして扱えるようにします。これがデバイスドライバの本質的な役割です。
解法ステップ
- 問題文のキーワード「周辺機器を制御」を確認する。
- 各選択肢の語義と役割を比較する(導入ツール、操作自動化、マルウェアなど)。
- 「周辺機器の制御」を満たすのはハードウェアとOSの仲介をするドライバのみと判定する。
選択肢別の誤答解説
- ア: 正しい。周辺機器を制御しOSやアプリに機能を提供するソフトウェアを指します。
- イ: 誤り。アプリケーションをPCに導入するソフトはインストーラやパッケージ管理ツールであり、ドライバの役割ではありません。
- ウ: 誤り。キーボードの操作を登録して自動化するのはマクロツールやRPAで、ハードウェア制御とは趣旨が異なります。
- エ: 誤り。他のPCに入り込んで不利益をもたらすのはウイルスやワームなどのマルウェアで、ドライバの定義ではありません。
よくある誤解
- 「ソフトをPCに導入する=ドライバ」と混同する誤り:インストーラはソフト導入を行うツールであり、ドライバの定義とは異なります。
- 「操作手順を自動化するソフトと同じ」と考える誤り:マクロやRPAは操作自動化であり、ハードウェア制御を担うわけではありません。
- ドライバ=悪意あるソフト(マルウェア)とする誤解:確かにドライバを使った攻撃はあり得ますが、ドライバ自体は正当なハードウェア制御ソフトです。
補足コラム
デバイスドライバは一般にカーネルモードで動作することが多く、システム権限でハードウェアを直接操作します(ただしユーザーモードで動作するドライバモデルもあります)。代表例としてはプリンタドライバ、グラフィックドライバ、ネットワークドライバ、ストレージドライバがあります。Windowsではドライバ署名がセキュリティ要件になっており、不適切なドライバはブルースクリーンや性能問題を引き起こすため慎重な管理が必要です。Linuxではカーネルモジュール(.ko)として提供され、insmod/modprobeで組み込まれます。ドライバ開発は低レイヤの知識(ハードウェア仕様、割り込み、同期、メモリ管理)が要求されます。
FAQ
Q1: ドライバとファームウェアの違いは何ですか?
A1: ドライバはOS上で動作してOSと機器を仲介するソフト、ファームウェアは機器内部で直接動作する制御ソフトです。役割と実行場所が異なります。
A1: ドライバはOS上で動作してOSと機器を仲介するソフト、ファームウェアは機器内部で直接動作する制御ソフトです。役割と実行場所が異なります。
Q2: ドライバは必ずカーネルモードで動作しますか?
A2: 多くはカーネルモードですが、最近はユーザーモードドライバモデルもあり、完全にユーザ空間で動作する場合もあります。
A2: 多くはカーネルモードですが、最近はユーザーモードドライバモデルもあり、完全にユーザ空間で動作する場合もあります。
Q3: ドライバが原因でPCが不安定になることはありますか?
A3: はい。ドライバは低レイヤで動作するためバグや不適切な操作でシステムクラッシュや性能低下を引き起こすことがあります。
A3: はい。ドライバは低レイヤで動作するためバグや不適切な操作でシステムクラッシュや性能低下を引き起こすことがあります。
Q4: ドライバの更新は必要ですか?
A4: ハードウェアの安定性や新機能、セキュリティ向上のために公式ドライバの更新を適宜行うことが推奨されます。
A4: ハードウェアの安定性や新機能、セキュリティ向上のために公式ドライバの更新を適宜行うことが推奨されます。
関連キーワード: デバイスドライバ、周辺機器制御、カーネルモード、ドライバ署名、デバイスマネージャ、カーネルモジュール、プリンタドライバ、グラフィックドライバ

\ せっかくなら /
基本情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

