スレッド (コンピュータ)
また、ユーザースレッド間の切り替えをユーザー空間で行うため、オーバーヘッドはユーザースレッドとカーネルスレッドの中間になる。
LWPはCライブラリ内でスレッド作成の延長で必要に応じて作成される。Cライブラリ内のスレッドスケジューラが、ユーザースレッドとLWPのマッピングを行う。このマッピングを指して、LWP方式を「M対Nスレッド」と呼ぶことがある。つまり、ユーザープロセス内のM個のスレッドとカーネル内のN個のLWPがマッピングを切り換えながら実行されることを意味している。
カーネルはLWPに関するシステムコールを提供しており、Cライブラリがそれを使用する(ユーザーにも公開されているが、一般に直接使うことはほとんどない)。LWPはコンテキストスイッチの対象として扱われるため、LWP方式のオペレーティングシステムではプロセス制御ブロックの一部がLWP毎のデータ構造になっている。
また、LWPとユーザースレッドを固定的に結びつけることもでき、これを「結合スレッド」と呼ぶ(一般のスレッドは「非結合スレッド」)。