MRG Realtimeの機能
MRG Realtime は複合的な機能から構成されています。それは、お客様の「リアルタイム」に対する要求において、いかに高いプライオリティでアプリケーション実行し、かつ、低いプライオリティのアプリケーションやシステムサービスから発生する割り込みを減らすための機能です。
これらの機能の詳細に関しては、以下のホワイトペーパを参考にしてください。
MRG Realtime ホワイトペーパ(英語)
- ローレイテンシ(低遅延)、かつ、リアルタイム性の高い実行処理
冗長なコードや、デバイス割り込みハンドラに内在する割り込みができないコードパスなどが時間保証を妨げる要因になりますが、MRG Realtimeは、長いカーネルコードパスをスケジュールできるように短く分割し、低い優先度のイベントが優先度の高いリアルタイム処理を妨げないようにします。
- 優先度ハンドリングの拡張
MRG Realtimeはネットワーク処理をストレージのI/O処理より高い優先度で処理させる、といった、よりきめ細かな優先度ハンドリングによるチューニング操作が可能です。さらにスケジューラの拡張により、高い優先度の処理が割り込みに妨げられないように保証することも可能です。
- 優先度継承による優先順位の変化の回避
MRG Realtimeは、glibc実行ライブラリとともに使われた場合に優先度継承を可能にすることで、低い優先度のプロセスが高い優先度の処理をブロックしないようにします。スケーラブルな優先度継承のアルゴリズムはリアルタイムJavaの要件になっています。
- タイマーの正確性
リアルタイムアプリケーションは、タイムスタンプメッセージやイベントのタイムアウト処理などにおいて、より高い正確性のタイミングイベントを必要とします。従来のLinuxでは、タイミングは一定のシステム割り込みで制御されているのに対して、MRG Realtimeはハードウェアベースのイベントタイマーを使うため、より正確で予測性の高いタイミング処理が可能です。
- レイテンシ(遅延)トレース機能
レイテンシ(遅延)トレース機能によるピーク検出により、処理時間が長い、プリエンプション(タスクの一時中断)が不能なカーネルコードパスを特定できます。これにより、レスポンス時間の予測を困難にしている要因がカーネル内部なのかアプリケーションなのかを判別することができます。
- Tunaによるシステムチューニング
MRG Realtimeで予測可能なベストの応答時間を実現するためには適切なチューニングが必要です。Tunaによりグラフィカルなインタフェースで、動的に、プロセスの最適なチューニングコンフィギュレーションを見つけることを可能にします。