【すけじゅーりんぐあるごりずむ】
スケジューリングアルゴリズム とは?
💡 「誰を先に並ばせるか」を決めるCPUの交通整理係
📌 このページのポイント
- 複数のプロセスに対してCPU時間を公平かつ効率的に配分する仕組み
- ラウンドロビン・優先度スケジューリング・先着順(FCFS)など複数の方式がある
- レスポンスタイム・スループット・公平性のバランスを考慮して方式を選ぶ
- OSだけでなくロードバランサーやタスクキューでも使われる
スケジューリングアルゴリズムって何をするものなの?
どんな種類があるの?
代表的なのは3つだよ。先着順(FCFS)は来た順に処理する。ラウンドロビンは全員に同じ時間ずつ交代で割り当てる。優先度スケジューリングは重要な処理を先にやる。それぞれ得意な場面が違うんだ。
どれが一番いいの?
「どれが一番」とは言えないんだ。先着順は単純だけど、重い処理が来ると後ろが詰まる。ラウンドロビンは公平だけど切り替えのコストがかかる。優先度方式は大事な処理が速いけど、優先度が低い処理がいつまでも実行されない問題があるんだよ。
OSの中だけで使われるの?
最近のOSではどんな方式が使われてるの?
まとめ:ざっくりこれだけ覚えればOK!
「スケジューリングアルゴリズム」って出てきたら「CPUの時間を誰にどう配るかのルール」と思えればだいたいOK!
📖 おまけ:英語の意味
「Scheduling Algorithm」 = 予定組み手順
💬 schedule(予定を組む)+ algorithm(手順)で、「順番決めのルール」という意味だよ