リアルタイムシステム

リアルタイムシステム（英: Real-time system）は、数値計算や制御などを命令された際、その処理を設定された期限通りに遂行するシステムである。
概要.
システムが想定された目的を達成するために行う数値計算や制御はタスクと呼ばれる。これらのタスクには多くの場合、処理を完了させなければならない期限（デッドライン）が想定されている。このタスクを期限内に遂行し、目的を達成する用途で設計またはそれに特化させたシステムがリアルタイムシステムである。例えば、自動車のエアバッグは、車両の激突時に即座に展開しなければ乗員の命が危険に晒される。この場合、激突時に「乗員がダッシュボードに衝突するまでの時間」という期限内に「エアバッグを発動する」というタスクを行うよう設計されているため、エアバッグはリアルタイムシステムといえる。
分類.
リアルタイムシステムは次にあげるいくつかの種類に分けることができる。
スケジューリング.
リアルタイム性を高めるために、どのような順番でタスクを処理するか（スケジューリング）が重要となる。ハードリアルタイムシステムの場合、スケジューリングアルゴリズムの選定は特に重要である。これらのアルゴリズムには各タスクの優先順位がスケジューリングの基準になることが多く、順位が時間と共に変化する動的スケジューリング（Earliest Deadline FirstやLeast Laxity Firstなど）と、変化しない静的スケジューリング（レートモノトニックスケジューリングなど）に大別される。