計算機科学においてスケジューリング（）は、スレッドやプロセスやデータの流れについて、システム資源（例えば、プロセッサ時間、通信帯域など）へのアクセスを与える方法である。システムを効果的に負荷分散するため、あるいはターゲットの Quality of Service を保証するためになされる。スケジューリングアルゴリズムは、マルチタスク（同時に複数のプロセスを実行）や多重化（複数のデータの流れを同時に転送）の発展とともに進化してきた。
では消費電力を考慮したローパワースケジューリングの研究が盛んに行われている。
ディスパッチャ.
スケジューリングアルゴリズム.
スケジューリングアルゴリズムは、ポリシーに従って同時かつ非同期に要求されるリソースを分配するアルゴリズムである。スレッドやプロセスにCPU時間を分配するスケジューリングアルゴリズムだけでなく、パケットのトラフィックを制御するルーターのスケジューリングアルゴリズム、ハードディスクへのリード/ライト要求に関するスケジューリングアルゴリズム、プリンターのスプーリングのスケジューリングアルゴリズムなどがある。
最小残余時間優先.
固定優先度プリエンプティブ・スケジューリング.
 (FCFS) は、全てのプロセスに固定の優先度を付与し、その優先度順にプロセスをキューイングする。新たに高優先度のプロセスが到着すると、現に実行中だった低優先度のプロセスは中断される。
ラウンドロビン・スケジューリング.
多段キュースケジューリング.
これは、プロセスを容易に複数のグループに分類できる場合に使われる、例えば典型的な分類はフォアグラウンド（対話型）プロセスとバックグラウンド（バッチ）プロセスである。このように分けると、それぞれ応答時間の要求がグループによって異なるので、スケジューリングに求められることがグループによって異なる。
通信ネットワークのスケジューリングアルゴリズム.
最も単純なベストエフォートなスケジューリングアルゴリズムとしてラウンドロビン・スケジューリング、（なスケジューリングアルゴリズム）、スケジューリング、などがある。ベストエフォートではなくQoSの保証を行う場合、などが使われる。
ディスクのアームやヘッダを移動させる時間を減少させるようにスケジュールすることで、高速化が期待できる。