LWP 【Light Weight Process】 軽量プロセス / ライトウェイトプロセス
概要
LWP(Light Weight Process)とは、マルチタスクに対応したオペレーティングシステム(OS)における、プログラムの実行単位の一つ。一つのプロセスの内部でさらに複数の処理を並行して動作させるときの実行単位で、「スレッド」(thread)とほぼ同じ意味。プロセスは固有のメモリ領域などを持った独立した実行単位だが、LWPはプロセス内部で並行して複数の処理を行うために一時的に生成される実行単位である。単一の実行プログラムの中で並行する複数の命令実行の流れを作り出すことができる。
メモリなどは親プロセスのものを共有するため、プロセスを新たに生成して実行するよりもコンテキスト切り替えのためのオーバーヘッドなどが少なくて済む。このため、「軽量な」(light weight)プロセスという名称で呼ばれる。
LWPは主にUNIX系OSで用いられる概念および用語である。初期のUNIXにはスレッドの概念が無く、並行処理を行うにはプロセスから別の独立したプロセスを作り出すしかなかった。プロセスの複製には大きなコストがかかるため、プロセス中で容易に複数の実行の流れを作り出せるようLWPの仕組みが導入された。
(2022.6.28更新)