LWP

出典: ASCII.jpデジタル用語辞典
Jump to navigationJump to search

えるだぶりゅーぴー 【LWP】 Light Weight Process

軽量プロセスともいう。もともとはUNIXにおいて、プロセスよりもさらに小さいプログラムの実行単位としてLWPが導入された。他のOS、たとえばWindows NTなどのスレッドに相当するが、スレッドよりももう少しプリミティブ(原始的、システム寄り)であり、LWP実行スケジューリングなどをユーザー側で細かく制御できるという特徴を持つ。

もともとUNIX OSのカーネルはかなりモノリシック(一体的)に作成されており、カーネルをマルチプロセッサー対応にするのはかなり困難であった。そこで、マルチプロセッサーシステムなどというハードウェアの進化に対して、既存のプロセスモデルを継承しつつ、ユーザプロセス側でマルチプロセッサー対応を図るというアプローチが取られた。そのときに導入されたのがこのLWPというプログラムの実行単位である。LWPのスケジューリングはユーザープロセス側で行なわれており、うまく使えばハードウェアの特性を最大限に引き出すことができる。それに比べると、NTのスレッドではCPUの数を意識するようなプログラムや、ある特定のCPU上でだけ動作するというようなプログラムは作りにくい。これらは、システムをチューニングする場合には当然考慮しておかなければならない項目である。