
リアルタイム性とは、要求される期限までに処理が実行できる性質のことです。リアルタイム性は、多くの組み込みシステムで要求されます。また、リアルタイム性を実行するシステムを「リアルタイムシステム」と呼びます。
リアルタイム性とは
リアルタイム性とは、要求される期限までに処理が実行できる性質のことです。
リアルタイム性とは
リアルタイム性とは、要求される期限までに処理が実行できる性質のこと。また、リアルタイム性を実行するシステムを「リアルタイムシステム」と呼ぶ。
ロボット掃除機、洗濯機、ゲーム機、インターホンといった家電機器から医療機器、自動改札機、発電機器、監視カメラなどの産業機器などの組み込み分野では、処理の完了に期限が設定されます。
例えば、自動車に使用されている組み込みシステムを具体例として考えます。自動車には、自動車を制御するためのCPUが多く使用されています。これらのCPUは、エンジンの回転や、噴出するガソリンの量をコントロールします。
この時、もしも自動車のエンジン制御で規定された期限内に処理ができなければ、エンジンの停止が起こるかもしれません。これにより、事故が発生してしまうリスクもあります。
上記のように、多くの組み込み機器は、リアルタイム性を要求します。しかし、要求される期限は機器によって異なります。このため、処理時間を機能仕様で厳密に定義することが重要です。
リアルタイム性の種類
既に述べた通り、多くの組み込み機器は、リアルタイム性を要求しますが、要求される期限はそれぞれの機器によって異なります。
リアルタイム性は、「ハードリアルタイム」と「ソフトリアルタイム」という2種類に大別されます。
- ハードリアルタイム:厳しいリアルタイム
- ソフトリアルタイム:緩いリアルタイム
ハードリアルタイムとソフトリアルタイムは、具体的な時間を境に分けられるものではありません。もしもその期限内に処理を行えなかった場合、致命的な事故が起こるかどうかによって決まります。
ハードリアルタイムは、厳しいリアルタイム
「ハードリアルタイム」は、定められた期限内に確実に処理を完了しなければならないものを指します。この定められた期限内に処理が完了しなかった場合、致命的な事故が発生したり、壊滅的な結果となるリスクがあります。
また、ハードリアルタイムは、その即時性が守られなかった瞬間に、その処理やシステム、機器の価値がゼロになってしまいます。
例えば、先程紹介した自動車のエンジンの事例は、ハードリアルタイム性を必要とします。このほか、自動車のエアバッグ機能や、航空機の航法システムなどもハードリアルタイムと言えます。
ハードリアルタイムの用途・最終製品
ハードリアルタイムの主な用途・最終製品は、以下の通りです。
- 自動車のエンジン機能
- 自動車のエアバッグ機能
- 航空機の航法システム
- カメラのシャッター
ソフトリアルタイムは、緩いリアルタイム
ハードリアルタイムに対し、比較的期限の制約が緩く、利用者が許容できる範囲で処理が完了すれば良いものや、リトライ(やりなおし)によって機能を修復できるものを「ソフトリアルタイム」と言います。
ハードリアルタイムでは、即時性が守られなかった瞬間に機器やシステムの価値がゼロになったのに対し、ソフトリアルタイムは、遅れた時間によって徐々に価値が減少していく性質を持ちます。
例えば、銀行のATMなどは、多少即時性が守られなかったとしても、大きな事故や損失には繋がらないため、ソフトリアルタイムと言えます。また、自動販売機や、座席予約システムなどもソフトリアルタイムです。
既に述べた通り、ソフトリアルタイムは、万が一定められた期限を守れなかったとしても、致命的な事故が発生するリスクはありません。
しかしながら、ソフトリアルタイムであっても、基本的には期限内で処理が完了できるように設計する必要があります。ソフトリアルタイムシステムのプログラムの構成によっては、処理の遅延が累積してしまうと、正常に動作できなくなるリスクもあるのです。
ソフトリアルタイムの用途・最終製品
ソフトリアルタイムの主な用途・最終製品は、以下の通りです。
- 銀行のATM
- 自動販売機
- 座席予約システム
- 画像/音声の転送
ハードリアルタイムとソフトリアルタイムの違い・比較表
上記で述べたハードリアルタイムとソフトリアルタイムの違いを比較表として纏めると、以下の通りです。
ハードリアルタイム | ソフトリアルタイム | |
---|---|---|
リアルタイム性 | 最重要 | 重要 |
即時性が守られなかった場合の事故リスク | 高 | 低 |
即時性が守られなかった場合のシステムや機器の価値 | すぐにゼロになる | 徐々に減少する |
ポイント
- リアルタイム性とは、要求される期限までに処理が実行できる性質のこと
- 多くの組み込み機器ではリアルタイム性は要求される
- 「ハードリアルタイム」は、定められた期限内に確実に処理を完了しなければならないリアルタイム
- 「ソフトリアルタイム」は、比較的期限の制約が緩く、利用者が許容できる範囲で処理が完了すれば良いリアルタイム
リアルタイム性が高い・リアルタイム性が低いとは
既に述べた通り、リアルタイム性とは、要求される期限までに処理が実行できる性質のことです。
このため、要求される期限までに処理が実行できる性質が高いことを「リアルタイム性が高い」と言います。
反対に、この性質が低いことを「リアルタイム性が低い」と言います。
リアルタイム性が高い場合、ハードタイムシステムに適しており、リアルタイム性が低い場合、ソフトリアルタイムに適していると言えます。
ポイント
- リアルタイム性が高い:ハードリアルタイムに適している
- リアルタイム性が低い:ソフトリアルタイムに適している