マルチタスクの説明として, 適切なものはどれか。
平成24年度 春期 ITパスポート試験 問71
この問題の解説と、これまでの解答の記録です。
問 71
不正解ア
これはマルチコアプロセッサの説明である。1 つの CPU(LSI)の中に演算回路などから成るプロセッサコアを複数個載せ、物理的に複数の処理を同時実行できるようにするハードウェアの方式で、コアが 2 個ならデュアルコア、4 個ならクアッドコアと呼ぶ。マルチタスクは CPU が 1 個(シングルコア)でも成立する OS の機能なので、コア数の話とは別の概念である。
不正解イ
これはグリッドコンピューティング(ネットワークで結んだ複数のコンピュータを連携させ、全体として高性能なシステムを実現する分散処理の方式)の説明である。処理を担うのが 1 台の中の CPU 時間ではなく、ネットワーク上に散在する複数台のコンピュータである点がマルチタスクと決定的に異なる。同種の用語にクラスタリングもあるが、いずれも複数のコンピュータをまとめる話であって、1 台の中でプロセスを切り替える話ではない。
不正解ウ
これは SIMD(Single Instruction Multiple Data、1 つの命令で複数のデータに同じ処理を行わせる方式)の説明で、画像処理や科学技術計算などで同じ演算を大量のデータに適用する場面で使われるプロセッサの命令方式である。着目点が「命令とデータの対応関係」であり、「CPU 時間をプロセスにどう配分するか」を扱うマルチタスクとは論点がまったく違う。
- エ
正解 マルチタスクとは、OS が複数のプロセス(タスク)に CPU の処理時間を細かく区切って順番に割り当てることで、実際には 1 つずつ順番に処理していても、利用者からは複数の処理が同時に進んでいるように見せる方式である。エはまさにこの「複数のプロセスに CPU の処理時間を順番に割り当てて、プロセスが同時に実行されているように見せる」という説明であり、適切である。切替えの単位時間はタイムスライス(時分割)と呼ばれ、切替えのたびに OS はレジスタなどの実行状態を退避・復元する(コンテキストスイッチ)。ポイントは、マルチタスクが CPU の個数を増やすハードウェアの話ではなく、限られた CPU を時間で分け合わせる OS(ソフトウェア)の機能だという点である。文書作成をしながら音楽再生やファイルのダウンロードを並行して行えるのは、この仕組みによる。
- マルチタスク=OS が CPU の処理時間を細かく区切って複数のプロセスに順番に割り当て(タイムスライス/時分割)、同時実行されているように見せる機能。CPU が 1 個でも成立するソフトウェアの仕組みで、切替え時の状態の退避・復元をコンテキストスイッチという。
- 紛らわしい「複数」系の用語を区別して覚える。マルチコア=1 個の CPU に複数のコアを実装(ハードウェア)、グリッドコンピューティング=ネットワーク上の複数のコンピュータを連携(分散処理)、SIMD=1 命令で複数データを処理(命令方式)、マルチタスク=1 台で複数プロセスを時分割(OS 機能)。