Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Linuxのプロセススケジューラのしくみ その1 時分割によるスケジューリング

Satoru Takeuchi
August 23, 2020
350

Linuxのプロセススケジューラのしくみ その1 時分割によるスケジューリング

以下動画のテキストです。
https://youtu.be/b924MxEt42Q

Satoru Takeuchi

August 23, 2020
Tweet

Transcript

  1. 実験 • 目的 ◦ Linuxのスケジューラが時分割によるスケジューリングをしていることを確かめる • 実験プログラムsched.cの概要 1. 1つのCPU上で無限ループするプログラムを 1~4個同時に100ミリ秒間動かす

    2. 各プログラムはCPUを1ミリ秒使うごとに次の情報を記録する ▪ プロセスの番号 ▪ プログラム開始時からの経過時間を記録 3. 100ミリ秒経過後に全プログラムについての記録を出力 3
  2. sched.cの動作イメージ(n=2, タイムスライス=2ミリ秒) P0 P1 P0 P1 経過時間(ミリ秒) 0 2 1

    3 5 4 6 8 7 記録 記録 記録 記録 記録 記録 記録 記録 測定終了 図示 経過時間(ミリ秒) 4 P1 P0 0 1 2 3 4 5 6 7 8 1ミリ秒の精度では 順番に実行している プロセス 経過時間 P0 1,2,5,6 P1 3,4,7,8