PC に接続された周辺機器を, アプリケーションプログラムから利用するために必要なものはどれか。
平成25年度 秋期 ITパスポート試験 問82
この問題の解説と、これまでの解答の記録です。
問 82
不正解ア
コンパイラは、C 言語や Java などの高水準言語で書かれたソースプログラムを、コンピュータが直接実行できる機械語 (目的プログラム) にまとめて翻訳する言語処理プログラムである。プログラムを開発し実行可能な形にする段階で使うものであって、PC に接続された周辺機器を制御する働きは持たない。すでに完成したアプリケーションが周辺機器を利用する場面でコンパイラが必要になることはない。
- イ
正解 正解はイ「デバイスドライバ」。デバイスドライバは、プリンタ、マウス、外付けディスクなどの周辺機器を制御するための専用ソフトウェアで、OS に組み込んで使う。周辺機器は製品ごとに制御の手順や信号のやり取りが異なるため、アプリケーションプログラムが機器を直接操作しようとすると、機種ごとに別々のプログラムが必要になってしまう。そこで、機器固有の制御はデバイスドライバが引き受け、アプリケーションは OS が用意した共通の命令 (たとえば「印刷する」) を呼ぶだけでよい形にしている。OS はその命令を該当する機器のデバイスドライバに渡し、ドライバが実際のハードウェアを動かす。この仕組みのおかげで、アプリケーションは接続されている機器の機種を意識せずに周辺機器を利用できる。逆に言えば、対応するデバイスドライバが導入されていない周辺機器は、PC に物理的に接続してもアプリケーションから利用できない。よって、周辺機器をアプリケーションプログラムから利用するために必要なものはデバイスドライバである。
不正解ウ
プラグアンドプレイは、周辺機器を PC に接続すると OS が機器を自動的に認識し、必要なデバイスドライバの組込みや設定を利用者に代わって自動で行う機能である。あくまでデバイスドライバの導入・設定作業を省力化する仕組みであって、プラグアンドプレイ自体が機器を制御するわけではない。自動で用意されるものも結局はデバイスドライバであり、この機能がない環境でも利用者が手動でドライバを導入すれば周辺機器は利用できる。したがって、利用のために必要不可欠なものはドライバのほうである。
不正解エ
ホットプラグ (ホットスワップ) は、PC の電源を入れたまま周辺機器の抜き差しができる機能で、USB 機器などで採用されている。電源を切らずに着脱できるという接続方法に関する機能にすぎず、接続した機器をアプリケーションからどう制御するかという問題は解決しない。電源を切ってから接続する機器であっても、対応するデバイスドライバがあればアプリケーションから利用できる。
- デバイスドライバは周辺機器を制御するための機器固有のソフトウェアで、OS に組み込んで使う。アプリケーションは OS が用意した共通のインタフェースを呼ぶだけでよく、機種ごとの制御手順の違いはデバイスドライバが吸収する。対応するデバイスドライバがなければ、接続しただけの周辺機器はアプリケーションから利用できない。
- 周辺機器の接続に関する用語の区別: プラグアンドプレイは接続した機器を OS が自動認識してドライバの組込み・設定まで自動化する機能、ホットプラグ (ホットスワップ) は電源を入れたまま機器を抜き差しできる機能。どちらも利便性を高める仕組みであって、機器を制御するデバイスドライバの代わりにはならない。コンパイラは高水準言語を機械語に翻訳する言語処理プログラムで、周辺機器の制御とは無関係である。