NI Linux Real-Time概要

概要

NIでは、長年の研究開発と、オープンソースコミュニティとの取り組み、パートナー企業の協力により、NI Linux Real-Timeと呼ばれる、LinuxベースのリアルタイムOS (RTOS) を開発しました。このRTOSは、すべてのNIリアルタイムハードウェアに標準装備されています。NI Linux Real-Timeは、
LabVIEW Real-Timeモジュールを使用したLabVIEWプログラミング環境で完全にサポートされています。


このホワイトペーパーでは、NI Linux Real-Timeについて紹介し、このテクノロジの主なメリット、実現される性能、およびこのOSで使用できるNIハードウェア製品について説明します。NI Linux Real-Timeをサポートするハードウェアターゲットでは、これまでと同様に使い慣れたLabVIEWソフトウェアアプリケーション開発エクスペリエンスが実現されるという点が重要な特徴です。基本的な詳細情報については、「NI Linux Real-Timeの内部」を参照してください。

内容

NI Linux Real-Time進化

Linuxは、これまで組込システム開発で長く使用されてきました。それは主に、無料かつオープンソースであり、コミュニティにより育てられサポートされてきたためです。初期の組込ソフトウェア開発者は、LinuxはRTOSではないと結論付け、組込アプリケーション向けにLinuxと専用RTOSを結合したハイブリッド方式を数多く開発するにいたりました。

組込システム設計で使用するLinuxがハイブリッドソリューションからさらに成熟すると、開発者はLinuxカーネル自体の確定性を高める機能を加えるようになりました。さらに最近では、PREEMPT_RTパッチセットは、Linuxカーネルの改善努力を上回り、Linuxでリアルタイム性能を実現するための方式として次第に認知されてきています。ナショナルインスツルメンツでは、PREEMPT_RTパッチを使用して、cRIO-9068コントローラで使用できるLinuxベースのRTOSを作成しました。PREEMPT_RTパッチセットの詳細については、A Real-Time Preemption Overview(英語)を参照してください。

NI Linux Real-Timeメリット

過去には、リアルタイム性能を確保するためにユーザビリティを犠牲にしてきました。しかし新しいNI Linux Real-Timeでは、Linuxカーネルが本来持つメリットを最大限に生かし、ユーザビリティを強化することができました。そのためNI Linux Real-Timeには当然のように専用RTOSと同等のリアルタイム性能が備わっており、しかもユーザビリティが犠牲になっていません。RTOSのユーザビリティが向上した例として、汎用Linuxから取り込んだ実装済みの安定したネットワークスタックがあります。新しいLinuxベースのRTOSをサポートするリアルタイムターゲットは、ネットワークスタックの向上により、真のデュアルDHCPネットワークインタフェースカード(NIC)をサポートすることができ、再起動しなくてもネットワーク設定や時間設定の変更を適用できるほか、IPv6やSNMPなどの通信プロトコルのサポートが拡充されています。さらに別の例として、新しいNI CompactRIO高性能コントローラに搭載されているNI Linux Real-TimeのローカルHMI向けディスプレイサポートがあります。

さらにLinuxは、市場で最も普及している専用RTOSさえもはるかに凌ぐユビキタス性を備えているため、この新しいRTOSはIPやツールのエコシステムがさらに充実していると同時に、経験豊富なユーザの大部分がRTOSの持つ力を利用できるようになります。NI Linux Real-Time OSをサポートするリアルタイムターゲットを使用する際、Linuxが提供するエコシステムによってソリューションの機能をより自由に補強できるだけでなく、社内に精通した技術者がいなくても多くの経験豊富なLinuxユーザを活用することができます。専用センサなどのサードパーティ周辺ハードウェアのサポートを簡単に追加できたり、C/C++コードを簡単に統合できるなど、NI Linux Real-Timeには多くのメリットがあります。

使いやすさやエコシステム以外のメリットとして、NI Linux Real-Timeは多くの専用RTOSと異なり真のデュアルモードOSであるという点があります。デュアルモードOSであるNI Linux Real-Timeは、非常に高い回復能力を持っています。アプリケーションがクラッシュしても、システムを実行を継続し、大きな中断もなくアプリケーションの障害から復帰することができます。また、マルチタスクのサポートも容易になるため、複数のプログラムを並列実行することができます。例えば、LabVIEW Real-Timeアプリケーションと同時に、リアルタイムターゲット上でデータベースを直接実行することが可能です。

最後のメリットとして、この新しいRTOSは、ユーザアカウント管理とユーザファイルシステム許可の処理能力において優れています。これもやはりLinuxによるメリットです。ユーザによる操作も、NI Linux Real-Timeをサポートする組込デバイスにより簡単に記録できます。さらに、VPNやFirewallなどのセキュリティ機能が搭載されていますので、ネットワークセキュリティのためだけに外部ハードウェアを追加する必要はありません。

高性能

NI Linux Real-Timeは、現行のCompactRIOターゲットに搭載されている専用RTOSに匹敵するリアルタイム性能を備えています。NI Linux Real-Timeターゲットのジッタは、ナショナルインスツルメンツが提供する現行リアルタイムシステムのジッタと変わりません。実世界の制御/ストリーミングアプリケーションにおいても、新しいLinux Real-TimeベースのCompactRIO 9068なら、制御/ストリーミングループがより少ないプロセッサ使用で高速実行できるため、パフォーマンスが劇的に向上します。LinuxベースのRTOSが提供する性能について詳しくは、NI cRIO-9068: 性能とスループットのベンチマークNI CompactRIO高性能コントローラ: 性能とスループットのベンチマークを参照してください。

性能維持つつ改良実現

NI Linux Real-Timeは、リアルタイムアプリケーションの厳しい要件に応える性能を維持しつつ、大幅な改良を実現しています。性能ベンチマークが示すように、NI Linux Real-Timeのジッタは現行のリアルタイムシステムのジッタと変わりませんが、システムレベルの性能は専用RTOSに比べ大幅に向上しています。

またLabVIEW再構成可能I/O(RIO)アーキテクチャが提供するポータブル性や生産性、抽象化性能は、NI Linux Real-Timeをサポートするターゲットにも拡張されています。新しいRTOSでもLabVIEWソフトウェア開発環境は全てのNI組込ターゲットにおいて統一されているため、他のNI組込ハードウェアからNI Linux Real-Timeベースのターゲットにもコードのシームレスな移動が可能です。この新しい技術を活用するため、NI Linux Real-Time対応ターゲットに今すぐアップグレードされることをお勧めします。

NI Linux Real-Timeの詳細情報

Linux is the registered trademark of Linus Torvalds in the U.S. and other countries.