プロセス管理とは? わかりやすく解説

プロセス管理

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/11/29 15:12 UTC 版)

プロセス管理(プロセスかんり)とは、オペレーティングシステムの主にカーネルの重要な機能の一つで、プロセスの生成・実行・消滅を管理することである。プロセス間通信排他制御もプロセス管理の役割である。また、プロセスへのリソースの割り当てを制御する機構でもある。

管理対象

一般にプロセスを管理対象とするが、カーネルスレッドを直接制御する場合にはスレッドも管理対象となる。この場合のスレッドをライトウェイトプロセス(Light Weight Process)と呼ぶことがある。また、プロセスをグループ化してリソースを割り当てる機能を持つ場合、プロセスグループも管理対象となる。

主な機能

プロセスの生成にあたっては、生成するプロセスの情報を管理する領域(プロセス制御ブロック; PCB)を作成し、プロセスの優先度の決定、プロセスへの記憶領域の割り当て等を行なう。プロセスが別のプロセスから作成された場合には、その親プロセスと子プロセスの関係も保持する。

プロセスの実行に関しては、プロセスを次の三つの状態に分けて管理する。

  • 実行状態
  • 実行可能状態
  • 待ち状態

実行可能状態にあるプロセスは、CPUに空きができた時点で実行状態に移る(ディスパッチ)。ただし、一度に実行状態に移ることができるのは一つのプロセスである。実行状態にあるプロセスは、ある一定時間(タイムスライス)経過すると、強制的に実行可能状態に移る。また、実行中に入出力処理等が始まったときは、待ち状態に移る。待ち状態にあるプロセスは、入出力処理等が完了して実行できる状態になったときに、実行可能状態に移る。このようなスケジューリングのアルゴリズムは様々なものが研究され実用化されてきた。

システムによっては、プロセスの中断・再開も可能になっている。この場合、上記の三つの状態に加えて、「実行可能中断状態」と「待ち中断状態」を含めた五つの状態で管理する。

プロセスの消滅に関しては、使用中の資源(記憶領域など)を全て返却して消滅させる。消滅させるプロセスが子プロセスを持っている場合の処理については、OSにより異なる。強制的に子プロセスを消滅させたり、子プロセスに親プロセスの消滅を伝えて子プロセスに終了させたり、あるいは、子プロセスが親プロセスの生死に関知しないようにする場合もある。

関連項目


プロセス管理

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/09/16 14:38 UTC 版)

カーネル」の記事における「プロセス管理」の解説

詳細は「プロセス管理」を参照 カーネル主な仕事アプリケーションの実行許可しハードウェア抽象化などの機能によってそれをサポートすることである。 プロセスは、アプリケーションアクセスできるメモリ範囲定義するカーネルのプロセス管理は、ハードウェアの持つメモリ保護機構考慮しなければならないカーネルアプリケーション実行するためアドレス空間設定しアプリケーションコードを含むファイルメモリロードしプログラムのためのコールスタック設定し、そのプログラム所定位置制御を渡すことで実行開始するマルチタスク可能なカーネルは、ユーザーから見て実際にそのコンピュータ同時実行できるプロセス数よりも、多数プロセス同時並行して実行されているかのように見せかける一般にシステム同時並行して実行できるプロセス数は、そのシステムの持つCPU数に等しい(同時マルチスレッディングサポートしている場合はその限りではない)。 プリエンプティブ・マルチタスクシステムでは、カーネル各プログラムタイムスライス(そのプログラムCPU上で実行される連続時間)を与えプロセスからプロセスへと高速切り換えていくので、ユーザーから見ればそれらのプロセス同時並行して実行されているように見えのであるカーネル次に実行すべきプロセス決定しタイムスライス長さ決定するスケジューリングアルゴリズムを持つ。一般にプロセスには優先度設定されるカーネルはそれらのプロセス間の通信手段提供する。これはプロセス間通信 (IPC) と呼ばれパイプ共有メモリメッセージRPCソフトウェア割り込みなどがある。 他に協調マルチタスクもあり、各プロセスは自らカーネル制御を戻すまで割り込まれずに実行続けることができる。制御カーネルに戻すことを "yielding" と呼びプロセス間通信の際や何らかのイベントを待つ際に行われそのときカーネル別のプロセス動作させる。古い WindowsMac OSこの方式だったが、コンピュータ性能向上に伴ってプリエンプティブ方式切り換えた。 オペレーティングシステムは、マルチプロセッシングSMPNUMA)をサポートすることもある。この場合複数プログラムスレッド複数プロセッサ上で動作するそのようなシステムカーネル動作させる場合、「リエントラント再入可能)」あるいは「割り込み可能」になるよう大幅な改造が必要となる。これはつまり、何か処理をしている最中に他からも要求受け付けということである。この改造できれば異なプロセッサ上で動作するプログラム同時にカーネル呼び出して大丈夫になる。カーネル複数プロセッサからのメモリアクセスを同期させる方法スピンロックなど)も提供しなければならない。これはメモリ管理とプロセス管理にまたがる問題である。

※この「プロセス管理」の解説は、「カーネル」の解説の一部です。
「プロセス管理」を含む「カーネル」の記事については、「カーネル」の概要を参照ください。

ウィキペディア小見出し辞書の「プロセス管理」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



プロセス管理と同じ種類の言葉


固有名詞の分類


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「プロセス管理」の関連用語

プロセス管理のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



プロセス管理のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのプロセス管理 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのカーネル (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS