kernel:"process" (8) タイムスライスを使い切った場合

  • タイムスライスは、task_struct構造体のtime_sliceメンバーに格納されている
  • processがタイムスライスを使い果たした場合のqueueの移動はscheduler_tick()関数により処理される
  • scheduler_tick()関数はタイマー割り込みにより定期的に実行され、タイムスライスを減らしていく
  • タイムスライスを使い果たしたprocessは、expiredキューに登録される
  • expiredキューに登録される時点で、タイムスライスが再計算されて割り当てられる
  • タイムスライスはnice値により変更される
    • nice値"0"の場合は100ms、nice値が小さくなるほどタイムスライスは長くなる

ちょっとだけですが、今日はここまで。