プリエンプション
プリエンプティブ・マルチタスクとは、協調的マルチタスクとプリエンプション可能なマルチタスクを区別するための用語である。協調的マルチタスクは、各タスクがシステムリソースを必要としないときにそれを自発的に解放するようプログラムされている方式である。
簡単に言えば、プリエンプティブ・マルチタスクは、割り込み機構を使って現在実行中のプロセスを中断させ、スケジューラを呼び出して次に実行すべきプロセスを決定させる。それによってある一定時間内で、CPU時間は全てのプロセスに(配分はどうであれ)分配される。
プリエンプティブ・マルチタスクでは、オペレーティングシステムのカーネルは優先順位に従ったスケジューリングがなされるようにコンテキストスイッチを自発的に行うこともでき、それが実行中タスクのプリエンプションとなる。高い優先順位のタスクが実行されるように現在実行中のタスクから権限を奪うのが、プリエンプティブ・スケジューリングである。
プリエンプティブ・マルチタスクは、各プロセスに処理時間の「スライス」が割り当てられることをより確実に保証することができる。