問94
頻出度★★☆
並列処理の説明として, 適切なものはどれか。
この問題の解説と、これまでの解答の記録です。
並列処理の説明として, 適切なものはどれか。
正解 並列処理とは、一連の処理を「同時に実行できる」複数の処理単位に分割し、それらを複数のCPU(プロセッサ)で同時並行に実行する方式を指す。ア はまさにこの定義そのもので、処理を分割 → 複数CPUで同時実行、という二つの要点をともに満たしているため正解。CPUを増やして同時実行数を増やすことで処理全体の時間短縮(スループット向上)を狙うのが並列処理の本質である。
関連する複数の処理を一つの処理単位にまとめて実行するのは、処理をひとまとめにして一括処理する考え方(バッチ処理やトランザクションのまとめ実行)であり、「複数CPUで同時に走らせる」並列処理とは無関係。むしろ処理を分割するのではなく統合している点で並列処理と逆方向である。
ビジネスロジックやデータベース処理をサーバ側、ユーザインタフェース処理をクライアント側で分担するのは、クライアントサーバシステム(多層アーキテクチャ)の役割分担の説明であり、処理を並行実行する話ではない。
一つのCPUの処理時間を短い単位(タイムスライス)に分割し、複数のアプリケーションソフトに順番に割り当てて実行するのは、単一CPUを時分割で共有するタイムシェアリング(マルチタスク)の説明。あくまでCPUは一つで「順番に」切り替えて実行するので、複数CPUで「同時」に実行する並列処理とは異なる。