Slide 64
Slide 64 text
O(1)スケジューラの諸問題
● ヒューリスティック多すぎでコーナーケースが山ほどある
○ 例: 応答性向上機能のせいでシステムが応答しなくなる
1. スリープと起床を繰り返すタスクを大量に起動
2. 一部タスクが対話的とみなされて優先度が最高になる
3. 2で述べたタスクがタイムスライスを使い切っても activeキューに再挿入
4. 他のタスクはそもそも動けないから優先度が上がらない
5. 2で述べたタスクが長時間動き続ける
● runnableタスク数が多いとなかなかCPU時間が回ってこない
● タイムスライスの粒度が荒くて細かい制御ができない
○ 粒度を増やすにはタイマー割り込みの回数を増やす必要がある
○ 粒度を1msにすると秒間1,000回の割込、1usにすると1,000,000回の割込みが必要
○ 細かくすると割り込み回数が上がってシステム全体の性能が下がる
64