| 用語 | 説明 | 
|---|---|
| プロセス | システムの動作またはジョブ。システムをブートしてコマンドを実行するか、アプリケーションを起動するたびに、システムは 1 つ以上のプロセスをアクティブにする | 
| 軽量プロセス (LWP) | 仮想 CPU または実行資源。LWP は、利用できる CPU 資源をスケジュールクラスと優先順位に基づいて使用するように、カーネルによってスケジュールされる。LWP には、カーネルスレッドと LWP が含まれる。カーネルスレッドには、メモリーに常駐する情報 が入っている。また、LWP には、スワップ可能な情報が入っている | 
| アプリケーションスレッド | ユーザーのアドレス空間内で独立して実行できる別個のスタックを持った一連の命令。アプリケーションスレッドは LWP の最上部で多重化できる | 
1 つのプロセスは、複数の軽量プロセスと複数のアプリケーションスレッドで構成できます。カーネルはカーネルスレッド構造をスケジュールします。この構造は、SunOS 環境内をスケジュールする実体です。表 22–2 に各種プロセス構造体を示します。
表 22–2 プロセス構造体| 構造体 | 説明 | 
|---|---|
| proc | プロセス全体に関連し、メインメモリーに常駐しなければならない情報が入っている | 
| kthread | 1 つの LWP に関連し、メインメモリーに常駐しなければならない情報が入っている | 
| user | スワップ可能な、プロセス単位の情報が入っている | 
| klwp | スワップ可能な、LWP プロセス単位の情報が入っている | 
次の図に、これらのプロセス構造体の関係を示します。

プロセス内のすべてのスレッドは、ほとんどのプロセス資源にアクセスできます。ほとんどすべてのプロセスの仮想メモリーが共有されます。あるスレッドが共有データを変更すると、その変更結果をプロセス内の他のスレッドが利用できます。