タイムシェアリングシステム
メインフレームは非常に高価であり、個人が占有して使用することは不可能である。高性能なコンピュータを個人が占有するということは、ほとんどの時間が、ユーザが思考中でコンピュータが入力を待っている状態に費やされることを意味する。そのため、ヒトによるコマンドの実行待ちや、ディスクやテープ、通信などの入出力の完了を待っている時間などを、他の処理のために活用するという発想が生まれた。
しかし、キーボードからの入力を待つようなプログラムばかりであれば、その待ちに入る所で切替えれば良いが、大量の計算を行いたいプログラムなどでは、プログラム中に適切なタイミングで切替えを呼ぶようにするのは難しく、タイマー割り込みを利用したプリエンプションがあったほうが便利である。もっとも後年のUnixなどとは違い「タイムシェアリングシステム」と呼ばれるようなメインフレーム上のシステムの場合、まず第1に課金のための正確なCPU時間の決定が必要であり、次いで(タスクといったような単位ではなく)使用中の各ユーザに対し平等にCPU時間(タイムスライス)を割り当てる必要がある。