1.2. スレッドスケジューリングポリシー
Linux では、3 つの主要なスレッドスケジューリングポリシーが使用されます。
SCHED_OTHER(SCHED_NORMALとも呼ばれます)これはデフォルトのスレッドポリシーで、カーネルが制御する動的な優先度を持ちます。優先度はスレッドアクティビティーに基づいて変更されます。このポリシーを持つスレッドは、リアルタイム優先度が 0 と見なされます。
SCHED_FIFO(先入れ先出し)優先度の範囲が
1 - 99までのリアルタイムポリシー。ここでは、1が最も低く、99が最も高くなります。SCHED_FIFOスレッドは常にSCHED_OTHERスレッドよりも優先度が高くなります (たとえば、優先度が1のSCHED_FIFOスレッドは どのSCHED_OTHERスレッドよりも優先度が高くなります)。SCHED_FIFOスレッドとして作成されたスレッドの優先度はどれも固定され、優先度の高いスレッドによってブロックまたはプリエンプションされるまで実行されます。SCHED_RR(ラウンドロビン)SCHED_RRは、SCHED_FIFOを変更したものです。同じ優先度のスレッドにはクォンタムがあり、同じ優先度のすべてのSCHED_RRスレッド間でラウンドロビン方式でスケジュールされます。このポリシーはほとんど使用されません。