第1種情報処理技術者試験 1996年度 = 平成8年度 午前 問26

 プログラムの実行に必要なシステム資源の割当ての単位であるプロセスとは異なり、軽量プロセスとも呼ばれ、CPU以外の資源は割り当てられず、親のプロセスから必要な資源を継承するものはどれか。

ア カーネル イ コンテキスト ウ ジョブステップ
エ スレッド オ タスク

解答



解説

 プロセス(process)は、本来UNIXのシステムに関する用語で、実行中のプログラムのアドレス空間など、実行環境を含むものです。アドレス空間を分割して実行できるため、並行処理であるパイプ処理やバックグラウンド処理にも適しています。しかし、各プロセスが別個のアドレス空間を利用するために多くの資源が必要である、生成や切替えに時間がかかるなどの欠点があります。そのため重量プロセス(ヘビーウェイトプロセス)とも呼ばれます。
 上記のようなプロセスの問題を解決するのが、軽量プロセス(ライトウェイトプロセス)とも呼ばれるスレッド(thread)です。スレッドは、プロセスを細分化した基本的な処理単位です。高速で生成できる、スワップの負荷が小さいなどの特徴がある。CPU資源のみが割り当てられて、スタック、プログラムカウンタ、レジスタセットを保持しますが、その他の資源は親のプロセスから継承します。同一のプロセスから発生するスレッドは、同じアドレス空間を継承し共有しなければなりません。分散処理や、マルチCPUでの並行処理などで利用されます。


BohYoh.comトップページへ