
リアルタイムシステムとは
リアルタイムシステムとは、「決められた時間内に処理を必ず完了しなければならないシステム」のことです。
ここで重要なのは 「速さ」だけでなく「時間制約を守ること」 です。つまり「遅れてはいけない」システムです。
分かりやすい例
1. 信号機の制御システム
- 車や人の流れをセンサーで感知して、信号を赤や青に変える。
- 処理が遅れると交通事故につながるため、決まった時間内に信号を切り替える必要がある。
2. 自動車のエアバッグ
- 衝突センサーが「衝突した」と判断したら、数ミリ秒以内にエアバッグを展開する必要がある。
- もし 1 秒でも遅れたら、エアバッグの意味がなくなる → これは典型的な「ハードリアルタイムシステム」。
3. 工場のロボット制御
- ロボットアームが部品を組み立てるとき、決まったタイミングで動作しないと部品が壊れる。
- 制御が間に合わなければ製品不良や事故につながる。
4. オンラインゲームのサーバー
- プレイヤーの操作(移動・攻撃など)をほぼリアルタイムで反映する必要がある。
- 遅延が大きいと「ラグ」が発生してゲームが成立しない → これは「ソフトリアルタイムシステム」(多少遅れても命に関わらないが、体験に悪影響)。
2つの種類
- ハードリアルタイムシステム
- 締め切りを絶対に守らなければならない。
- 例:エアバッグ、ペースメーカー、原子力発電所の制御。
- ソフトリアルタイムシステム
- 多少遅れても大きな問題はないが、速さが求められる。
- 例:動画ストリーミング、オンラインゲーム、チャットアプリ。
まとめイメージ
- 通常のシステム:「できるだけ早く処理してね」
- リアルタイムシステム:「絶対に〇秒以内に処理を完了せよ」