差分

移動先: 案内検索

カーネルの構造と機能

196 バイト追加, 2008年10月23日 (木) 15:13
/* プロセス管理 */
;補足: UNIXは最初からスレッドを持っていたわけではありません。そのため80年代に入ってから色々な組織がスレッドの実装を試みました。Brown Univ.のブラウンスレッド、サンマイクロシステムズのLWP (Lightweiht Process)、DECのCMA スレッド、CMUのCスレッドパッケージがあります。各々互換性はありません。紆余曲折あり、現在ではPOSIX仕様のスレッドであるpthreads(7)が主流になっています。
FIFOは、そのプロセスがCPU資源を占有する方式です。CPU資源を占有といっても、一般ユーザで動作するよりもさらに、優先度よりも高い優先度で動くプロセスあると、そちらの方を優先します。ラウンドロビンは順繰りにプロセスが処理されます。デフォルトでは、プロセスの動作時間を見て、優先順位を計算し、その優先順位が高い方から処理するようになっています。このスケジュリングの処理アルゴリズムは Linux FIFOは、そのプロセスがCPU資源を占有する方式です。CPU資源を占有といっても、一般ユーザで動作するよりもさらに、優先度よりも高い優先度で動くプロセスあると、そちらの方を優先します。ラウンドロビンは順繰りにプロセスが処理されます。デフォルトでは、プロセスの動作時間を見て、優先順位を計算し、その優先順位が高い方から処理するようになっています。このスケジュリングの処理アルゴリズムはLinux 2.4 と Linux 6 では入れ換えれており処理効率がよくなっています。2.6 では入れ換えれておりLinux .12ではあたらしくSCHED_BATCHのスケジュールが加わり、2.6では処理効率がよくなっています。2.6.12以降ではあたらしくSCHED_BATCHのスケジュールが加わるなど、オペレーティングシステムの心臓部ともいえるスケジュラー部分でも進化しています。23ではCFS( Completely Fair Scheduler )スケジューラ<ref> ;補足Completely Fair Scheduler によるマルチプロセッシング http: 別な見地からいけば、Linux 2//www.4あたりまでのスケジュラーはやはり他のオペレーティングシステムからみると見劣りするものだというのは否定できない事実です。ibm.com/developerworks/jp/linux/library/l-cfs/index.html</ref>が使えるようになりました。オペレーティングシステムの心臓部ともいえるスケジュラー部分でも進化は続いています。
;補足: Linux 2.4あたりまでのLinuxのプロセススケジュラーはやはり他のオペレーティングシステムからみると見劣りするものだというのは否定できない事実です。
=== ファイルシステム ===
匿名利用者