スケジューリング
スケジューラによる「次に実行するプロセスの選択」自体の処理のオーバーヘッドも考慮する必要がある
なので、「待ち行列の先頭を次時に実行する」というルールにしてある
そうしていないと待ち行列内のタスク数が増えると探索に時間がかかる
https://gyazo.com/f595bf7ef7b5180ab861a395d275c264
実行中のプロセスの中断方式
プリエンプション方式
OSが実行中のプロセスの実行権を強制的に取り上げてプロセスを中断させる
ex. Windows XP, UNIX, MaxOS X
ノンプリエンプション方式
(OSではなく)実行中のプロセスが自主的にCPUリソースをOSに戻す方式
実装が容易
ex. Windows 95, MacOS 9
これは割り込みとは違うのかmrsekut.icon
スケジューリング方式
FIFO
SPT
Priority Scheduling
Round Robin
多重レベルフィードバックスケジューリング
Multi-Level Feedback, MLF
Multics開発時に開発されたタイムシェアリングシステム用のスケジューリングアルゴリズム
ref 松尾『オペレーティングシステム』.icon p.29-
Earliest Deadline First
レートモノトニックスケジューリング
Rate-Monotonic Scheduling、RMS
https://ja.wikipedia.org/wiki/レートモノトニックスケジューリング
weighted round robin
『サーバ/インフラを支える技術』.icon p.20
least-connection
『サーバ/インフラを支える技術』.icon p.20
weighted least-connection
『サーバ/インフラを支える技術』.icon p.20
shortest expected delay
『サーバ/インフラを支える技術』.icon p.20
never queue
『サーバ/インフラを支える技術』.icon p.20
source hashing
『サーバ/インフラを支える技術』.icon p.21
destination hashing
『サーバ/インフラを支える技術』.icon p.21
locality-based least-connection
『サーバ/インフラを支える技術』.icon p.21
locality-based least-connection with replication
『サーバ/インフラを支える技術』.icon p.21
Unixにおける[スケジューリング
ref 松尾『オペレーティングシステム』.icon p.32-
Linuxのプロセススケジューラーの歴史
https://speakerdeck.com/sat/linux-sched-history
参考
スケジューリング - Wikipedia
http://www.f.ait.kyushu-u.ac.jp/~fukuda/HijyoukinH25/kitakyushu/RT-Scheduling.pdf
https://speakerdeck.com/sat/shi-siteli-jie-linuxfalsepurosesusukeziyurafalsesikumi