JP2004500634A - アビオニクスソフトウエアアプリケーションのための2レイヤオペレーティングシステムおよび方法 - Google Patents
アビオニクスソフトウエアアプリケーションのための2レイヤオペレーティングシステムおよび方法 Download PDFInfo
- Publication number
- JP2004500634A JP2004500634A JP2001544154A JP2001544154A JP2004500634A JP 2004500634 A JP2004500634 A JP 2004500634A JP 2001544154 A JP2001544154 A JP 2001544154A JP 2001544154 A JP2001544154 A JP 2001544154A JP 2004500634 A JP2004500634 A JP 2004500634A
- Authority
- JP
- Japan
- Prior art keywords
- application
- executive
- central processing
- processing unit
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/545—Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Stored Programmes (AREA)
- Train Traffic Observation, Control, And Security (AREA)
- Feedback Control In General (AREA)
- Executing Machine-Instructions (AREA)
- Multi Processors (AREA)
Abstract
統合モジュラアビオニクス(101)は、より高速の最新プロセッサを利用することができ、システムエグゼクティブ(301)と多数のアプリケーションエグゼクティブ(311)とからなる2レイヤオペレーティングシステムを用いることにより、1プロセッサ(201)上で多数の既存のアビオニクスソフトウエアアプリケーション(321)を実行することができる。
Description
【0001】
発明の分野
本発明は、デジタルデータ処理システム上でプロセスおよびジョブの実行を管理するための回路モジュールおよび方法、特に2レイヤオペレーティングシステムを提供するようにプログラミングされる統合モジュラアビオニクス(Integrated Modular Avionics)回路カードのための回路モジュールおよび方法に関する。
【0002】
発明の背景
いくつかの新たに設計される航空機および旧式の航空機のための新たに改良される装置は、業界内で統合モジュラアビオニクス(IMA)と呼ばれる統合アビオニクスアーキテクチャを用いることになる。統合アビオニクスアーキテクチャが開発される前には、航空機は典型的には、無線通信機のような多数のライン交換可能ユニット(LRU)を用いており、各LRUが、VHF通信あるいはVOR航行のような専用の機能を実行していた。IMAはいくつかの多機能LRUを用いて、典型的にはいくつかの専用のLRUによって実行される、種々のアビオニクス機能を実行する。各IMA LRUは、他の航空機ハードウエアに対する処理、入力および出力を実行するいくつかのモジュールを含む。IMAアプローチは、各IMA LRU内の種々のモジュールに対して共通のシャーシおよび電源を用いる。これにより、アビオニクスシステム全体を、旧式の航空機上で見られる典型的な「統合型」のアビオニクスアーキテクチャよりも軽量で、低コストにすることができる。
【0003】
上記のような統合型のアビオニクスシステムのために多数のソフトウエアアプリケーションが開発され、認定されており、この以前に開発されたソフトウエアを再利用することが有利である。しかしながら、既存のアビオニクスソフトウエアアプリケーションは、いくつかの異なるリアルタイムオペレーティングシステム上で実行される。また、従来から統合型LRUに実装されてきた多数のソフトウエアアプリケーションの統合にも対応する必要がある。既存のソフトウエア開発ツールを用いて多数のソフトウエアアプリケーションを併合することに関する悪影響の1つは、障害を起こしたあるソフトウエアアプリケーションからの障害が他のソフトウエアに伝搬するなどの、ソフトウエアアプリケーション間の望ましくない依存性である。
【0004】
FAA航空機認定の場合に、ソフトウエアアプリケーション内の問題あるいは障害が任意の他のソフトウエアアプリケーションに悪影響を及ぼすことがないことを、極めて確実に示すことができなければならない。
【0005】
従来技術のアビオニクスオペレーティングシステム環境が、1997年1月版のARINC仕様書653「Avionics Application Software Standard Interface」、および1998年11版のRTCA SC−182/EUROCAE WG−48「Minimum Operational Performance Standards for Avionics Computer Resource」に記載される。
【0006】
発明の概要
本発明は、多数のソフトウエアアプリケーションを統合して、1つの中央演算処理装置(CPU)上で実行し、技術的には、いくつかのアビオニクスソフトウエアアプリケーションの組み合わせ計算の要求を満たすだけの十分に強力なCPUを利用可能である。本発明はさらに、オペレーティングシステム部分が、システムエグゼクティブレイヤおよび多数のアプリケーションエグゼクティブレイヤからなる、2つの個別のレイヤに分割されるソフトウエアアーキテクチャを提供する。このソフトウエアアーキテクチャによって、種々のリアルタイムオペレーティングシステムは、同じCPU上で同時に実行できることが有利である。ソフトウエアおよび構成データベースローディング、アプリケーション状態モニタリング、障害記録、基本オペレーティングシステム支援、入力/出力のハイレベル処理のようなシステムレベルの機能が、統合モジュラアビオニクス(IMA)モジュール上で実行されるいくつかのアプリケーションの中で共有されることができる。
【0007】
2レイヤアーキテクチャは、種々のソフトウエアベンダによって開発されるソフトウエアアプリケーションを統合するための能力を有利に提供する。また本発明によれば、1つのソフトウエアアプリケーションのみがシステムに追加されるか、システム内で更新されるか、あるいはシステムから削除されるときに、IMAモジュール上で実行される全てのソフトウエアアプリケーションの組を検査し直す必要がなくなる。
【0008】
2レイヤアーキテクチャのうちの第1のレイヤ、すなわちシステムエグゼクティブレイヤは、各アプリケーションソフトウエアに保護された区画を提供し、その区画内では、個々のソフトウエアアプリケーションが、適当なアプリケーションエグゼクティブとともに実行されることができる。2レイヤアーキテクチャのうちの第2のレイヤ、すなわちアプリケーションエグゼクティブレイヤは、変更されたバージョンのリアルタイムオペレーティングシステムであり、それは各ソフトウエアアプリケーションに仮想マシンおよび1組のインターフェースライブラリ(IL)機能を提供する。これらのIL機能は、アプリケーションエグゼクティブとシステムエグゼクティブとの間の通信を容易にする。本発明の一実施形態は、1つのシステムエグゼクティブと多数のアプリケーションエグゼクティブとを含む。
【0009】
各アプリケーションエグゼクティブおよびその関連するソフトウエアアプリケーションは、メモリアドレス空間へのアクセス制限を実施することにより、他のアプリケーションエグゼクティブおよびその関連するソフトウエアアプリケーションから空間的に分離されることが有利である。さらに各アプリケーションエグゼクティブおよびその関連するソフトウエアアプリケーションは、予め計算された静的な実行タイムテーブルに基づいて、CPUおよび他のシステムリソースへの利用制限を実施することにより、他のアプリケーションエグゼクティブおよびその関連するソフトウエアアプリケーションから、時間的に分離される。
【0010】
システムエグゼクティブは、各ソフトウエアアプリケーションモジュールを初期化、監視および終了し、各ソフトウエアアプリケーションが明確なタイムスライスを割り当てられた実行タイムテーブルを厳密に実施するために、リアルタイムクロックを保持する。また、そのシステムエグゼクティブは、種々のアプリケーションエグゼクティブ間のコンテクストスイッチングおよび通信を取り扱い、全てのIMAモジュールハードウエア入力および出力リソースを管理し、保護されたメモリ領域の厳密な分離を実施する。システムエグゼクティブは、各アプリケーションエグゼクティブのための保護されたメモリ区画を割り当て、強制することにより、障害および無関係なデータが種々のアプリケーションエグゼクティブおよびその関連するソフトウエアアプリケーション上で伝搬するのを防ぐことが有利である。
【0011】
各アプリケーションエグゼクティブは、利用可能なリアルタイムオペレーティングシステムのカスタマイズされたバージョンである。各アプリケーションエグゼクティブは、その関連するソフトウエアアプリケーションタスクに、通信、同期およびダイナミックメモリ管理を含むサービスを提供する。また、各アプリケーションエグゼクティブは、その関連するソフトウエアアプリケーションに、インターフェースライブラリ機能を介して、IMAモジュールハードウエア入力および出力(I/O)装置のようなシステムレベルリソースへのアクセスを提供する。一実施形態では、アプリケーションエグゼクティブは、その関連するソフトウエアアプリケーションに含まれるタスクをスケジュールするために、その自らの方式を実施する。
【0012】
利用可能なリアルタイムオペレーティングシステムをアプリケーションエグゼクティブにカスタマイズすることは、通信、メモリ管理およびI/O装置へのアクセスに関連する機能を、インターフェースライブラリ機能を介してシステムエグゼクティブに転送することを含む。本発明の一態様は、アプリケーションエグゼクティブが、ハードウエア装置の試験あるいは初期化、割込みテーブルの初期化、メモリ管理ユニット(MMU)のレジスタの準備のようなブートシーケンス手順を全く実行しないことである。利用可能なリアルタイムオペレーティングシステムのこれらのブートシーケンス手順は、アプリケーションエグゼクティブの保護されたメモリ区画内に配置される1組の初期化データ構造によって置き換えられる。システム初期化手順の一部として、システムエグゼクティブは、全てのアプリケーションエグゼクティブの初期化データ構造を初期化する。
【0013】
発明の詳細な説明
最初に図1を参照すると、現在用いられている、統合モジュラアビオニクス(IMA)シャーシ101が示される。IMAシャーシ101は、多数のIMAモジュール200と、1つあるいは複数のコネクタ103と、IMAモジュール200と互いに、かつコネクタ103と相互に接続するためのマザーボード102とを含む。コネクタ103は、航空機電気信号とIMAモジュール上に収容される回路とのインターフェースを形成する。他の実施形態では、IMAモジュールと他の航空機装置との間で、光および無線周波数信号が通信される。
【0014】
図2を参照すると、本発明の一実施形態では、IMAモジュール200は、メモリ管理ユニット202を設けられる。メモリ管理ユニット202は、システムメモリ204を保護された区画に分割し、中央演算処理装置201上で実行されるシステムエグゼクティブ301(図3に示される)から送出されるコンテクスト命令にしたがって、その区画への読出しおよび書込みアクセスを制御する。クロック203は、図5に示されるように、中央演算処理装置201への周期的なタイマ割込み505を生成する。クロック203は、IMAモジュール200ハードウエアの残りの部分から独立して動作するリアルタイムクロックである。システムエグゼクティブ301は、その動作を中断することなく、クロック203から現在の時間を読み出すことができる。また、本発明のIMAモジュール200は、入力/出力ハードウエア装置205と、入力/出力バス装置206と、電気信号とIMAマザーボード102とのインターフェースを形成するためのコネクタ211とを含む。
【0015】
図3は、中央演算処理装置201上で実行されるようにプログラミングされる相補形のソフトウエアのアーキテクチャレイアウトを示す。図3に示されるように、本発明の一態様は、ソフトウエアアプリケーション321が、入力/出力ハードウエア装置205あるいは入力/出力バス装置206と直に通信しないことである。以前のビルド中に、関連するリアルタイムオペレーティングシステムと予めリンクされているソフトウエアアプリケーション321が、本発明にしたがって、関連するアプリケーションエグゼクティブ311、および関連する1組のインターフェースライブラリ機能312とリンクされる。ソフトウエアアプリケーション321は、各アプリケーションエグゼクティブ311と関連付けられるインターフェースライブラリ機能312を呼び出すことにより、入力/出力ハードウエア装置205および入力/出力バス装置206と通信する。インターフェースライブラリ機能312は、システムエグゼクティブ301を介してハードウエア装置ドライバ302ソフトウエアアプリケーションを呼び出すことにより、入力/出力ハードウエア装置205にアクセスする。各ハードウエア装置205の全ての機能は、装置ドライバ302ソフトウエアアプリケーションを介して制御される。インターフェースライブラリ機能312は、システムエグゼクティブ301を介してバスドライバ303ソフトウエアアプリケーションを呼び出すことにより、入力/出力バス装置206にアクセスする。各バス装置206の全ての機能は、装置ドライバ303ソフトウエアアプリケーションを介して制御される。
【0016】
本発明によれば、システムエグゼクティブ301は、メモリ204に格納され、中央演算処理装置201上で実行される1組の命令からなる。このシステムエグゼクティブ301は、IMA回路カード200上に取り付けられる全ての装置を動作させるための役割を担い、そのIMA回路カード200はIMAシャーシ101に設置される。各アプリケーションエグゼクティブ311は、アプリケーション区画500(図5に示される)アドレス空間内のメモリ204に格納される1組の命令からなり、読出し/書込みアクセスはメモリ管理ユニット202によって制御され、その命令は中央演算処理装置201上で実行される。また、各アプリケーションエグゼクティブ311に関連付けられるソフトウエアアプリケーション321、インターフェースライブラリ312およびタイマ割込みサービスルーチン501(図5に示される)も、中央演算処理装置201上で実行され、関連するアプリケーションエグゼクティブ311と同じアプリケーション区画500(図5に示される)に格納される命令からなる。
【0017】
図4は、中央演算処理装置201上で実行される際のシステムエグゼクティブ301の命令ステップを示す流れ図である。システムエグゼクティブ301は、一度だけ実行される1組の開始ステップを含み、後続するメインループ401は、無限に繰り返す所定のシーケンスにおいて実行されるステップを含む。図には示されないが、本発明の別の実施形態では、システムエグゼクティブ301はさらに、メインループが終了した後に一度だけ実行される停止ステップのシーケンスを含む。
【0018】
システムエグゼクティブ301の開始ステップは、中央演算処理装置201によって実行されるソフトウエアステップの以下のシーケンスを含む。最初に、ステップ401において、入力/出力ハードウエア装置205および入力/出力バス装置206が初期化される。次に、ステップ402において、中央演算処理装置201がメモリ管理ユニット202にコマンドシーケンスを発行できるようにすることにより、データメモリ204が、仮想アプリケーションメモリ区画500(図5に示される)に区分される。
【0019】
システムエグゼクティブ301の無限のメインループ410は、中央プロセッサ201によって実行されるソフトウエアステップの以下のシーケンスを含む。最初に、システムエグゼクティブ301は、次にスケジュールされるアプリケーション区画500に関連する、アプリケーションタイムスライス601(図6に示される)と、アプリケーションエグゼクティブ311クロックチック長602(図6に示される)とを、静的タイムテーブルスケジュール(図示せず)から読み出す(ステップ415)。次に、システムエグゼクティブ301は、以下の式を用いて、最大長チック数「Ntick」と、残りの部分チックの長さ「parTick」とを計算する(ステップ415)
【数1】
【数2】
【0020】
アプリケーション最大長クロックチック「Ntick」と、残りの部分チック「parTick」とを用いて、アプリケーション区画500(図5に示される)ローカル時間構造(図示せず)を更新する。
【0021】
次に、ステップ411において、中央演算処理装置201は、次のアプリケーションエグゼクティブ311の開始時間を占有待ちするように指示される。各アプリケーションの開始時間は、メモリ204内に存在する所定のスケジュール用タイムテーブル(図示せず)に格納される。次に、ステップ412では、メモリ管理ユニット202が、関連する仮想メモリ区画(図5に示される)を用いて、メモリアドレス参照を分解するように指示され、中央演算処理装置201の制御がアプリケーションエグゼクティブ311に渡される。ステップ413中に、アプリケーションエグゼクティブ311は、図5に示されるように、周期的なタイマ割込みによって、関連するタイマサービスルーチン501が実行されるようになる場合を除いて、中央演算処理装置201に命令を与える。これらのタイマ割込みサービスルーチン501は、システムエグゼクティブ301と同じ特権レベルで実行される命令を含む。アプリケーションエグゼクティブ311に割り当てられるタイムスライス601(図6に示される)が満了するとき、中央演算処理装置201の制御はシステムエグゼクティブ301に戻され、メインループ401が無限に続く。上記のような、アプリケーション区画の時間に基づくディスパッチの厳密な実施は、静的タイムテーブルスケジュール(図示せず)に基づき、それはソフトウエア全体のビルド中に形成される。
【0022】
再び図3を参照すると、アプリケーションエグゼクティブ311は、関連するアプリケーションソフトウエア321が初めに開発されたリアルタイムオペレーティングシステムの変更されたバージョンである。本発明によれば、システムエグゼクティブ301は基本的には、ソフトウエアアプリケーション321によって引き起こされる任意の例外に最初に応答するためのものである。それゆえ、割込みサービスルーチン501(図5に示される)が、中央演算処理装置201によって引き起こされる「例外割込み」を中断するために設けられる。既存のリアルタイムオペレーティングシステムからのリマッピング例外処理機能は、システムエグゼクティブ301およびアプリケーションエグゼクティブ311の両方の機能を必要とする。本発明によれば、ソフトウエアアプリケーション321およびアプリケーションエグゼクティブ311はいずれも、中央演算処理装置201上で高い「オペレーティングシステム」特権レベル命令を実行するシステムエグゼクティブ301およびアプリケーション割込みサービスルーチン501(図5に示される)とは対照的に、中央演算処理装置201上で低い「ユーザ」特権レベル命令を実行する。
【0023】
インターフェースライブラリ312は、特定のリアルタイムオペレーティングシステムによって提供されるサービスのうちのいくつかを置き換えるように作成される1組の機能を含む。最小限の数のリアルタイムオペレーティングシステムサービスが置き換えられることが有利である。さらに、装置ドライバ302は、従来技術のリアルタイムオペレーティングシステムの低レベルのコードを直接に組み込む場合がある。
【0024】
各アプリケーションエグゼクティブ311は、リアルタイムの進行を追跡するために、自らのデータ構造を保持する。1つの特定の実施形態では、周期的タイマ割込み505(図6に示される)間の持続時間は10msecである。
【0025】
図5は、システムエグゼクティブ301、アプリケーションエグゼクティブ311およびソフトウエアアプリケーション321の間の制御の転送の詳細を示す。ステップ412において、システムエグゼクティブは、タイマ割込みサービスルーチン501を用いて、中央演算処理装置201の制御を渡す。アプリケーションエグゼクティブ311に関連付けられるタイマ割込みサービスルーチン501は、システムエグゼクティブ301と同じ特権レベルにおいて中央演算処理装置201上で命令を実行する。タイマ割込みサービスルーチン501は、アプリケーション区画500アドレス空間内のデータメモリ204内に格納される命令を含む。アプリケーションエグゼクティブ311は常に、全てのアプリケーション区画500のエントリポイントとして機能する。アプリケーションメモリ区画500は、システムエグゼクティブ301に関連付けられるタイマ割込みサービスルーチン501と協動し、システムエグゼクティブ301は、アプリケーション区画500への初期エントリと、アプリケーション区画のタイムスライス601(図6に示される)中に生じる周期的タイマ割込み505とを提供する。アプリケーションエグゼクティブ311は、タイムスライス601内のソフトウエアアプリケーション321タスクをスケジュールする。タイムスライス601が満了するとき、タイマ割込みサービスルーチン501は、その区画の現在の時刻および現在の状態を格納し、中央演算処理装置201の制御をシステムエグゼクティブ301に戻す。
【0026】
区画500への再エントリ時に、タイマ割込み501はローカル時間データ構造を調整し、アプリケーションエグゼクティブ311に制御を渡す。アプリケーションエグゼクティブ321は、関連するソフトウエアアプリケーションからのどのタスクが満了しているかを判定し、そのタスクをディスパッチするであろう。本発明によれば、そのタスクが完了前に割り込まれた場合であっても、中央演算処理装置201の制御は基本的には、ソフトウエアアプリケーション321タスクに直接に与えられるのではなく、最初に、関連するアプリケーションエグゼクティブ311に渡される。各アプリケーション区画500のために割り当てられるメモリ空間は、動的なメモリプールとして用いるための所定量の「ヒープ」メモリを含む。各アプリケーションエグゼクティブ311は、そのアプリケーションの自らの区画500内の動的なメモリ「ヒープ」を管理する。
【0027】
図6を参照すると、中央演算処理装置201は、システムエグゼクティブ301、アプリケーションエグゼクティブ311およびソフトウエアアプリケーション321に含まれる全ての命令を実行する。中央演算処理装置201に対して、クロック203からタイマ割込み506が周期的にかけられる。これらのタイマ割込み505を用いて、静的スケジュール(図示せず)に規定されるように、システムエグゼクティブ301およびアプリケーションエグゼクティブ311の実行を開始する。この時刻表によって、種々のアプリケーションエグゼクティブ311に関連付けられるソフトウエアアプリケーション321間の時間的な分離が与えられる。各アプリケーション区画500は、所定の静的なタイムテーブル(図示せず)において、アプリケーションタイムスライス601と、クロックチック長602とを割り当てられる。この時間的な分離によって、ソフトウエアアプリケーションは、互いとの干渉を防ぐことが有利である。
【0028】
したがって、本発明は、種々の航空機サブシステムを実行する多数のアビオニクスソフトウエアアプリケーション321とともに用いるための2レイヤオペレーティングシステムを含む。これらの多数のアプリケーションのための処理スループットおよびハードウエアインターフェースは、航空機搭載キャビネット101に他の類似のカードとともに導入される1つのIMAカード200上に収容される。本発明は、以前に開発されたアビオニクスソフトウエアアプリケーションを依然として再利用できるようにしながら、現時点で利用可能な、より高速のプロセッサを利用することが有利である。多数のソフトウエアアプリケーションが、互いから時間的(時刻)および空間的(メモリ)に分離される。
【図面の簡単な説明】
【図1】
航空機に設置することを目的とした、一般に「ブラックボックス」と呼ばれる従来のライン交換可能ユニット(LRU)を示す図であり、示される特定のLRUは統合モジュラアビオニクス(IMA)キャビネットの典型的なものである。
【図2】
IMAキャビネットに導入するのに適した本発明の1つの例示的な実施形態による、モジュールあるいは回路カードアセンブリ(CCA)を示す図である。
【図3】
本発明による各IMAモジュール上で実行されるソフトウエアのソフトウエアアーキテクチャを示す図である。
【図4】
本発明のシステムエグゼクティブレイヤの流れ図である。
【図5】
本発明に記載されるようなシステムエグゼクティブレイヤと各アプリケーションエグゼクティブレイヤとの間のインタラクションを示す図である。
【図6】
システムエグゼクティブと、アプリケーションエグゼクティブとの実行シーケンスを示すタイミング図であり、ソフトウエアアプリケーションはいくつかのアプリケーションエグゼクティブのうちの各アプリケーションエグゼクティブにそれぞれ関連付けられる。
発明の分野
本発明は、デジタルデータ処理システム上でプロセスおよびジョブの実行を管理するための回路モジュールおよび方法、特に2レイヤオペレーティングシステムを提供するようにプログラミングされる統合モジュラアビオニクス(Integrated Modular Avionics)回路カードのための回路モジュールおよび方法に関する。
【0002】
発明の背景
いくつかの新たに設計される航空機および旧式の航空機のための新たに改良される装置は、業界内で統合モジュラアビオニクス(IMA)と呼ばれる統合アビオニクスアーキテクチャを用いることになる。統合アビオニクスアーキテクチャが開発される前には、航空機は典型的には、無線通信機のような多数のライン交換可能ユニット(LRU)を用いており、各LRUが、VHF通信あるいはVOR航行のような専用の機能を実行していた。IMAはいくつかの多機能LRUを用いて、典型的にはいくつかの専用のLRUによって実行される、種々のアビオニクス機能を実行する。各IMA LRUは、他の航空機ハードウエアに対する処理、入力および出力を実行するいくつかのモジュールを含む。IMAアプローチは、各IMA LRU内の種々のモジュールに対して共通のシャーシおよび電源を用いる。これにより、アビオニクスシステム全体を、旧式の航空機上で見られる典型的な「統合型」のアビオニクスアーキテクチャよりも軽量で、低コストにすることができる。
【0003】
上記のような統合型のアビオニクスシステムのために多数のソフトウエアアプリケーションが開発され、認定されており、この以前に開発されたソフトウエアを再利用することが有利である。しかしながら、既存のアビオニクスソフトウエアアプリケーションは、いくつかの異なるリアルタイムオペレーティングシステム上で実行される。また、従来から統合型LRUに実装されてきた多数のソフトウエアアプリケーションの統合にも対応する必要がある。既存のソフトウエア開発ツールを用いて多数のソフトウエアアプリケーションを併合することに関する悪影響の1つは、障害を起こしたあるソフトウエアアプリケーションからの障害が他のソフトウエアに伝搬するなどの、ソフトウエアアプリケーション間の望ましくない依存性である。
【0004】
FAA航空機認定の場合に、ソフトウエアアプリケーション内の問題あるいは障害が任意の他のソフトウエアアプリケーションに悪影響を及ぼすことがないことを、極めて確実に示すことができなければならない。
【0005】
従来技術のアビオニクスオペレーティングシステム環境が、1997年1月版のARINC仕様書653「Avionics Application Software Standard Interface」、および1998年11版のRTCA SC−182/EUROCAE WG−48「Minimum Operational Performance Standards for Avionics Computer Resource」に記載される。
【0006】
発明の概要
本発明は、多数のソフトウエアアプリケーションを統合して、1つの中央演算処理装置(CPU)上で実行し、技術的には、いくつかのアビオニクスソフトウエアアプリケーションの組み合わせ計算の要求を満たすだけの十分に強力なCPUを利用可能である。本発明はさらに、オペレーティングシステム部分が、システムエグゼクティブレイヤおよび多数のアプリケーションエグゼクティブレイヤからなる、2つの個別のレイヤに分割されるソフトウエアアーキテクチャを提供する。このソフトウエアアーキテクチャによって、種々のリアルタイムオペレーティングシステムは、同じCPU上で同時に実行できることが有利である。ソフトウエアおよび構成データベースローディング、アプリケーション状態モニタリング、障害記録、基本オペレーティングシステム支援、入力/出力のハイレベル処理のようなシステムレベルの機能が、統合モジュラアビオニクス(IMA)モジュール上で実行されるいくつかのアプリケーションの中で共有されることができる。
【0007】
2レイヤアーキテクチャは、種々のソフトウエアベンダによって開発されるソフトウエアアプリケーションを統合するための能力を有利に提供する。また本発明によれば、1つのソフトウエアアプリケーションのみがシステムに追加されるか、システム内で更新されるか、あるいはシステムから削除されるときに、IMAモジュール上で実行される全てのソフトウエアアプリケーションの組を検査し直す必要がなくなる。
【0008】
2レイヤアーキテクチャのうちの第1のレイヤ、すなわちシステムエグゼクティブレイヤは、各アプリケーションソフトウエアに保護された区画を提供し、その区画内では、個々のソフトウエアアプリケーションが、適当なアプリケーションエグゼクティブとともに実行されることができる。2レイヤアーキテクチャのうちの第2のレイヤ、すなわちアプリケーションエグゼクティブレイヤは、変更されたバージョンのリアルタイムオペレーティングシステムであり、それは各ソフトウエアアプリケーションに仮想マシンおよび1組のインターフェースライブラリ(IL)機能を提供する。これらのIL機能は、アプリケーションエグゼクティブとシステムエグゼクティブとの間の通信を容易にする。本発明の一実施形態は、1つのシステムエグゼクティブと多数のアプリケーションエグゼクティブとを含む。
【0009】
各アプリケーションエグゼクティブおよびその関連するソフトウエアアプリケーションは、メモリアドレス空間へのアクセス制限を実施することにより、他のアプリケーションエグゼクティブおよびその関連するソフトウエアアプリケーションから空間的に分離されることが有利である。さらに各アプリケーションエグゼクティブおよびその関連するソフトウエアアプリケーションは、予め計算された静的な実行タイムテーブルに基づいて、CPUおよび他のシステムリソースへの利用制限を実施することにより、他のアプリケーションエグゼクティブおよびその関連するソフトウエアアプリケーションから、時間的に分離される。
【0010】
システムエグゼクティブは、各ソフトウエアアプリケーションモジュールを初期化、監視および終了し、各ソフトウエアアプリケーションが明確なタイムスライスを割り当てられた実行タイムテーブルを厳密に実施するために、リアルタイムクロックを保持する。また、そのシステムエグゼクティブは、種々のアプリケーションエグゼクティブ間のコンテクストスイッチングおよび通信を取り扱い、全てのIMAモジュールハードウエア入力および出力リソースを管理し、保護されたメモリ領域の厳密な分離を実施する。システムエグゼクティブは、各アプリケーションエグゼクティブのための保護されたメモリ区画を割り当て、強制することにより、障害および無関係なデータが種々のアプリケーションエグゼクティブおよびその関連するソフトウエアアプリケーション上で伝搬するのを防ぐことが有利である。
【0011】
各アプリケーションエグゼクティブは、利用可能なリアルタイムオペレーティングシステムのカスタマイズされたバージョンである。各アプリケーションエグゼクティブは、その関連するソフトウエアアプリケーションタスクに、通信、同期およびダイナミックメモリ管理を含むサービスを提供する。また、各アプリケーションエグゼクティブは、その関連するソフトウエアアプリケーションに、インターフェースライブラリ機能を介して、IMAモジュールハードウエア入力および出力(I/O)装置のようなシステムレベルリソースへのアクセスを提供する。一実施形態では、アプリケーションエグゼクティブは、その関連するソフトウエアアプリケーションに含まれるタスクをスケジュールするために、その自らの方式を実施する。
【0012】
利用可能なリアルタイムオペレーティングシステムをアプリケーションエグゼクティブにカスタマイズすることは、通信、メモリ管理およびI/O装置へのアクセスに関連する機能を、インターフェースライブラリ機能を介してシステムエグゼクティブに転送することを含む。本発明の一態様は、アプリケーションエグゼクティブが、ハードウエア装置の試験あるいは初期化、割込みテーブルの初期化、メモリ管理ユニット(MMU)のレジスタの準備のようなブートシーケンス手順を全く実行しないことである。利用可能なリアルタイムオペレーティングシステムのこれらのブートシーケンス手順は、アプリケーションエグゼクティブの保護されたメモリ区画内に配置される1組の初期化データ構造によって置き換えられる。システム初期化手順の一部として、システムエグゼクティブは、全てのアプリケーションエグゼクティブの初期化データ構造を初期化する。
【0013】
発明の詳細な説明
最初に図1を参照すると、現在用いられている、統合モジュラアビオニクス(IMA)シャーシ101が示される。IMAシャーシ101は、多数のIMAモジュール200と、1つあるいは複数のコネクタ103と、IMAモジュール200と互いに、かつコネクタ103と相互に接続するためのマザーボード102とを含む。コネクタ103は、航空機電気信号とIMAモジュール上に収容される回路とのインターフェースを形成する。他の実施形態では、IMAモジュールと他の航空機装置との間で、光および無線周波数信号が通信される。
【0014】
図2を参照すると、本発明の一実施形態では、IMAモジュール200は、メモリ管理ユニット202を設けられる。メモリ管理ユニット202は、システムメモリ204を保護された区画に分割し、中央演算処理装置201上で実行されるシステムエグゼクティブ301(図3に示される)から送出されるコンテクスト命令にしたがって、その区画への読出しおよび書込みアクセスを制御する。クロック203は、図5に示されるように、中央演算処理装置201への周期的なタイマ割込み505を生成する。クロック203は、IMAモジュール200ハードウエアの残りの部分から独立して動作するリアルタイムクロックである。システムエグゼクティブ301は、その動作を中断することなく、クロック203から現在の時間を読み出すことができる。また、本発明のIMAモジュール200は、入力/出力ハードウエア装置205と、入力/出力バス装置206と、電気信号とIMAマザーボード102とのインターフェースを形成するためのコネクタ211とを含む。
【0015】
図3は、中央演算処理装置201上で実行されるようにプログラミングされる相補形のソフトウエアのアーキテクチャレイアウトを示す。図3に示されるように、本発明の一態様は、ソフトウエアアプリケーション321が、入力/出力ハードウエア装置205あるいは入力/出力バス装置206と直に通信しないことである。以前のビルド中に、関連するリアルタイムオペレーティングシステムと予めリンクされているソフトウエアアプリケーション321が、本発明にしたがって、関連するアプリケーションエグゼクティブ311、および関連する1組のインターフェースライブラリ機能312とリンクされる。ソフトウエアアプリケーション321は、各アプリケーションエグゼクティブ311と関連付けられるインターフェースライブラリ機能312を呼び出すことにより、入力/出力ハードウエア装置205および入力/出力バス装置206と通信する。インターフェースライブラリ機能312は、システムエグゼクティブ301を介してハードウエア装置ドライバ302ソフトウエアアプリケーションを呼び出すことにより、入力/出力ハードウエア装置205にアクセスする。各ハードウエア装置205の全ての機能は、装置ドライバ302ソフトウエアアプリケーションを介して制御される。インターフェースライブラリ機能312は、システムエグゼクティブ301を介してバスドライバ303ソフトウエアアプリケーションを呼び出すことにより、入力/出力バス装置206にアクセスする。各バス装置206の全ての機能は、装置ドライバ303ソフトウエアアプリケーションを介して制御される。
【0016】
本発明によれば、システムエグゼクティブ301は、メモリ204に格納され、中央演算処理装置201上で実行される1組の命令からなる。このシステムエグゼクティブ301は、IMA回路カード200上に取り付けられる全ての装置を動作させるための役割を担い、そのIMA回路カード200はIMAシャーシ101に設置される。各アプリケーションエグゼクティブ311は、アプリケーション区画500(図5に示される)アドレス空間内のメモリ204に格納される1組の命令からなり、読出し/書込みアクセスはメモリ管理ユニット202によって制御され、その命令は中央演算処理装置201上で実行される。また、各アプリケーションエグゼクティブ311に関連付けられるソフトウエアアプリケーション321、インターフェースライブラリ312およびタイマ割込みサービスルーチン501(図5に示される)も、中央演算処理装置201上で実行され、関連するアプリケーションエグゼクティブ311と同じアプリケーション区画500(図5に示される)に格納される命令からなる。
【0017】
図4は、中央演算処理装置201上で実行される際のシステムエグゼクティブ301の命令ステップを示す流れ図である。システムエグゼクティブ301は、一度だけ実行される1組の開始ステップを含み、後続するメインループ401は、無限に繰り返す所定のシーケンスにおいて実行されるステップを含む。図には示されないが、本発明の別の実施形態では、システムエグゼクティブ301はさらに、メインループが終了した後に一度だけ実行される停止ステップのシーケンスを含む。
【0018】
システムエグゼクティブ301の開始ステップは、中央演算処理装置201によって実行されるソフトウエアステップの以下のシーケンスを含む。最初に、ステップ401において、入力/出力ハードウエア装置205および入力/出力バス装置206が初期化される。次に、ステップ402において、中央演算処理装置201がメモリ管理ユニット202にコマンドシーケンスを発行できるようにすることにより、データメモリ204が、仮想アプリケーションメモリ区画500(図5に示される)に区分される。
【0019】
システムエグゼクティブ301の無限のメインループ410は、中央プロセッサ201によって実行されるソフトウエアステップの以下のシーケンスを含む。最初に、システムエグゼクティブ301は、次にスケジュールされるアプリケーション区画500に関連する、アプリケーションタイムスライス601(図6に示される)と、アプリケーションエグゼクティブ311クロックチック長602(図6に示される)とを、静的タイムテーブルスケジュール(図示せず)から読み出す(ステップ415)。次に、システムエグゼクティブ301は、以下の式を用いて、最大長チック数「Ntick」と、残りの部分チックの長さ「parTick」とを計算する(ステップ415)
【数1】
【数2】
【0020】
アプリケーション最大長クロックチック「Ntick」と、残りの部分チック「parTick」とを用いて、アプリケーション区画500(図5に示される)ローカル時間構造(図示せず)を更新する。
【0021】
次に、ステップ411において、中央演算処理装置201は、次のアプリケーションエグゼクティブ311の開始時間を占有待ちするように指示される。各アプリケーションの開始時間は、メモリ204内に存在する所定のスケジュール用タイムテーブル(図示せず)に格納される。次に、ステップ412では、メモリ管理ユニット202が、関連する仮想メモリ区画(図5に示される)を用いて、メモリアドレス参照を分解するように指示され、中央演算処理装置201の制御がアプリケーションエグゼクティブ311に渡される。ステップ413中に、アプリケーションエグゼクティブ311は、図5に示されるように、周期的なタイマ割込みによって、関連するタイマサービスルーチン501が実行されるようになる場合を除いて、中央演算処理装置201に命令を与える。これらのタイマ割込みサービスルーチン501は、システムエグゼクティブ301と同じ特権レベルで実行される命令を含む。アプリケーションエグゼクティブ311に割り当てられるタイムスライス601(図6に示される)が満了するとき、中央演算処理装置201の制御はシステムエグゼクティブ301に戻され、メインループ401が無限に続く。上記のような、アプリケーション区画の時間に基づくディスパッチの厳密な実施は、静的タイムテーブルスケジュール(図示せず)に基づき、それはソフトウエア全体のビルド中に形成される。
【0022】
再び図3を参照すると、アプリケーションエグゼクティブ311は、関連するアプリケーションソフトウエア321が初めに開発されたリアルタイムオペレーティングシステムの変更されたバージョンである。本発明によれば、システムエグゼクティブ301は基本的には、ソフトウエアアプリケーション321によって引き起こされる任意の例外に最初に応答するためのものである。それゆえ、割込みサービスルーチン501(図5に示される)が、中央演算処理装置201によって引き起こされる「例外割込み」を中断するために設けられる。既存のリアルタイムオペレーティングシステムからのリマッピング例外処理機能は、システムエグゼクティブ301およびアプリケーションエグゼクティブ311の両方の機能を必要とする。本発明によれば、ソフトウエアアプリケーション321およびアプリケーションエグゼクティブ311はいずれも、中央演算処理装置201上で高い「オペレーティングシステム」特権レベル命令を実行するシステムエグゼクティブ301およびアプリケーション割込みサービスルーチン501(図5に示される)とは対照的に、中央演算処理装置201上で低い「ユーザ」特権レベル命令を実行する。
【0023】
インターフェースライブラリ312は、特定のリアルタイムオペレーティングシステムによって提供されるサービスのうちのいくつかを置き換えるように作成される1組の機能を含む。最小限の数のリアルタイムオペレーティングシステムサービスが置き換えられることが有利である。さらに、装置ドライバ302は、従来技術のリアルタイムオペレーティングシステムの低レベルのコードを直接に組み込む場合がある。
【0024】
各アプリケーションエグゼクティブ311は、リアルタイムの進行を追跡するために、自らのデータ構造を保持する。1つの特定の実施形態では、周期的タイマ割込み505(図6に示される)間の持続時間は10msecである。
【0025】
図5は、システムエグゼクティブ301、アプリケーションエグゼクティブ311およびソフトウエアアプリケーション321の間の制御の転送の詳細を示す。ステップ412において、システムエグゼクティブは、タイマ割込みサービスルーチン501を用いて、中央演算処理装置201の制御を渡す。アプリケーションエグゼクティブ311に関連付けられるタイマ割込みサービスルーチン501は、システムエグゼクティブ301と同じ特権レベルにおいて中央演算処理装置201上で命令を実行する。タイマ割込みサービスルーチン501は、アプリケーション区画500アドレス空間内のデータメモリ204内に格納される命令を含む。アプリケーションエグゼクティブ311は常に、全てのアプリケーション区画500のエントリポイントとして機能する。アプリケーションメモリ区画500は、システムエグゼクティブ301に関連付けられるタイマ割込みサービスルーチン501と協動し、システムエグゼクティブ301は、アプリケーション区画500への初期エントリと、アプリケーション区画のタイムスライス601(図6に示される)中に生じる周期的タイマ割込み505とを提供する。アプリケーションエグゼクティブ311は、タイムスライス601内のソフトウエアアプリケーション321タスクをスケジュールする。タイムスライス601が満了するとき、タイマ割込みサービスルーチン501は、その区画の現在の時刻および現在の状態を格納し、中央演算処理装置201の制御をシステムエグゼクティブ301に戻す。
【0026】
区画500への再エントリ時に、タイマ割込み501はローカル時間データ構造を調整し、アプリケーションエグゼクティブ311に制御を渡す。アプリケーションエグゼクティブ321は、関連するソフトウエアアプリケーションからのどのタスクが満了しているかを判定し、そのタスクをディスパッチするであろう。本発明によれば、そのタスクが完了前に割り込まれた場合であっても、中央演算処理装置201の制御は基本的には、ソフトウエアアプリケーション321タスクに直接に与えられるのではなく、最初に、関連するアプリケーションエグゼクティブ311に渡される。各アプリケーション区画500のために割り当てられるメモリ空間は、動的なメモリプールとして用いるための所定量の「ヒープ」メモリを含む。各アプリケーションエグゼクティブ311は、そのアプリケーションの自らの区画500内の動的なメモリ「ヒープ」を管理する。
【0027】
図6を参照すると、中央演算処理装置201は、システムエグゼクティブ301、アプリケーションエグゼクティブ311およびソフトウエアアプリケーション321に含まれる全ての命令を実行する。中央演算処理装置201に対して、クロック203からタイマ割込み506が周期的にかけられる。これらのタイマ割込み505を用いて、静的スケジュール(図示せず)に規定されるように、システムエグゼクティブ301およびアプリケーションエグゼクティブ311の実行を開始する。この時刻表によって、種々のアプリケーションエグゼクティブ311に関連付けられるソフトウエアアプリケーション321間の時間的な分離が与えられる。各アプリケーション区画500は、所定の静的なタイムテーブル(図示せず)において、アプリケーションタイムスライス601と、クロックチック長602とを割り当てられる。この時間的な分離によって、ソフトウエアアプリケーションは、互いとの干渉を防ぐことが有利である。
【0028】
したがって、本発明は、種々の航空機サブシステムを実行する多数のアビオニクスソフトウエアアプリケーション321とともに用いるための2レイヤオペレーティングシステムを含む。これらの多数のアプリケーションのための処理スループットおよびハードウエアインターフェースは、航空機搭載キャビネット101に他の類似のカードとともに導入される1つのIMAカード200上に収容される。本発明は、以前に開発されたアビオニクスソフトウエアアプリケーションを依然として再利用できるようにしながら、現時点で利用可能な、より高速のプロセッサを利用することが有利である。多数のソフトウエアアプリケーションが、互いから時間的(時刻)および空間的(メモリ)に分離される。
【図面の簡単な説明】
【図1】
航空機に設置することを目的とした、一般に「ブラックボックス」と呼ばれる従来のライン交換可能ユニット(LRU)を示す図であり、示される特定のLRUは統合モジュラアビオニクス(IMA)キャビネットの典型的なものである。
【図2】
IMAキャビネットに導入するのに適した本発明の1つの例示的な実施形態による、モジュールあるいは回路カードアセンブリ(CCA)を示す図である。
【図3】
本発明による各IMAモジュール上で実行されるソフトウエアのソフトウエアアーキテクチャを示す図である。
【図4】
本発明のシステムエグゼクティブレイヤの流れ図である。
【図5】
本発明に記載されるようなシステムエグゼクティブレイヤと各アプリケーションエグゼクティブレイヤとの間のインタラクションを示す図である。
【図6】
システムエグゼクティブと、アプリケーションエグゼクティブとの実行シーケンスを示すタイミング図であり、ソフトウエアアプリケーションはいくつかのアプリケーションエグゼクティブのうちの各アプリケーションエグゼクティブにそれぞれ関連付けられる。
Claims (5)
- 統合モジュラアビオニクス装置のための回路モジュールであって、前記モジュールは、
入力/出力ハードウエアと、
入力/出力バスと、
周期的なタイマ割込みのシーケンスを生成するためのリアルタイムクロックと、
メモリ管理ユニットと、
前記メモリ管理ユニットによって複数のアプリケーション区画に区分されるメモリと、
中央演算処理装置であって、前記中央演算処理装置は、2レベルソフトウエアアーキテクチャを提供するようにプログラミングされる、該中央演算処理装置とを備え、前記2レベルソフトウエアアーキテクチャは、
前記リアルタイムクロックに応答して初期化シーケンスと、無限ループと、多数のタイマ割込みサービスルーチンとを含むシステムエグゼクティブと、
それぞれリアルタイムオペレーティングシステムを含み、前記タイマ割込みサービスルーチンに関連付けられる複数のアプリケーションエグゼクティブと、
前記メモリ管理ユニットの制御とを含む回路モジュール。 - 前記アプリケーションエグゼクティブはさらに、1組のハードウエア入力/出力装置へのアクセスを提供するソフトウエア機能のインターフェースライブラリを含むことを特徴とする、請求項1に記載の回路モジュール。
- 前記アプリケーションエグゼクティブは、リアルタイムの進行の追跡を維持するために、自らのデータ構造を保持することを特徴とする、請求項1に記載の回路モジュール。
- 複数の既存のアビオニクスソフトウエアアプリケーションを実行するための方法であって、前記アプリケーションは、その以前の動作環境から分離されており、メモリ管理ユニット、クロック、データメモリ、入力/出力ハードウエア装置、および入力/出力バス装置とともに回路カードアセンブリ上に取り付けられる1つの中央演算処理装置上で、システムエグゼクティブと同時に実行されるアプリケーションエグゼクティブとリンクされており、前記方法は、
前記入力/出力ハードウエア装置を初期化するステップと、
前記入力/出力バス装置を初期化するステップと、
前記メモリ管理ユニットを用いて前記データメモリを区分するステップと、
無限ループに入り、そのまま続行するステップとを含み、前記無限ループは、
アプリケーションエグゼクティブの開始時間を待つステップと、
前記メモリ管理ユニットに、前記アプリケーションエグゼクティブに関連付けられるアプリケーション区画にしたがってアドレスを分解するように指示するステップと、
前記中央演算処理装置の制御を前記アプリケーションエグゼクティブに渡すステップと、
前記アプリケーションエグゼクティブにしたがってコマンドを実行するステップと、
前記アプリケーションエグゼクティブに関連付けられるタイムスライスが満了するのを待つステップと、
前記中央演算処理装置の制御を前記システムエグゼクティブに戻すステップと、を含む方法。 - 前記無限ループはさらに、
第2のアプリケーションエグゼクティブの開始時間を待つステップと、
前記メモリ管理ユニットに、前記第2のアプリケーションエグゼクティブに関連付けられる第2のアプリケーション区画にしたがってアドレスを分解するように指示するステップと、
前記中央演算処理装置の制御を前記第2のアプリケーションエグゼクティブに渡すステップと、
前記第2のアプリケーションエグゼクティブにしたがってコマンドを実行するステップと、
前記第2のアプリケーションエグゼクティブに関連付けられるタイムスライスが満了するのを待つステップと、
前記中央演算処理装置の制御を前記システムエグゼクティブに戻すステップとを含むことを特徴とする、請求項4に記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17020099P | 1999-12-10 | 1999-12-10 | |
US64898500A | 2000-08-28 | 2000-08-28 | |
PCT/US2000/033419 WO2001042932A2 (en) | 1999-12-10 | 2000-12-08 | Two layer operating system and method for avionics software applications |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004500634A true JP2004500634A (ja) | 2004-01-08 |
JP2004500634A5 JP2004500634A5 (ja) | 2005-01-06 |
Family
ID=26865834
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001544154A Withdrawn JP2004500634A (ja) | 1999-12-10 | 2000-12-08 | アビオニクスソフトウエアアプリケーションのための2レイヤオペレーティングシステムおよび方法 |
Country Status (6)
Country | Link |
---|---|
EP (1) | EP1283997A2 (ja) |
JP (1) | JP2004500634A (ja) |
CN (1) | CN1434940A (ja) |
AU (1) | AU2079301A (ja) |
CA (1) | CA2393828A1 (ja) |
WO (1) | WO2001042932A2 (ja) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7451454B2 (en) * | 2004-03-31 | 2008-11-11 | Intel Corporation | Event handling mechanism |
WO2008054507A2 (en) * | 2006-04-10 | 2008-05-08 | Aviation Communication & Surveillance Systems Llc | Integrated avionics system |
US9189195B2 (en) * | 2006-10-16 | 2015-11-17 | Sandel Avionics, Inc. | Integrity monitoring |
CN101276292B (zh) * | 2008-05-13 | 2010-04-21 | 杭州华三通信技术有限公司 | 中断合成方法和中断合成装置以及模块化主机系统 |
JP5607919B2 (ja) * | 2009-12-16 | 2014-10-15 | 川崎重工業株式会社 | 統合型航空機搭載電子システム |
BR112012020933A2 (pt) * | 2010-02-23 | 2017-03-07 | Astronautics Corp | pacote de voo eletrônico de classe 3 |
FR3013880B1 (fr) * | 2013-11-26 | 2017-03-31 | Airbus Operations Sas | Systeme avionique, notamment un systeme de gestion de vol d'un aeronef |
CN104834567B (zh) * | 2015-04-13 | 2018-04-17 | 中国航空无线电电子研究所 | 一种分区和应用时间窗符合性检测系统 |
US9983902B2 (en) | 2015-05-14 | 2018-05-29 | General Electric Company | System and method for multi-level real-time scheduling analyses |
CN105677413A (zh) * | 2016-01-06 | 2016-06-15 | 中国航空无线电电子研究所 | 一种综合模块化航空电子系统多分区应用后加载方法 |
US10225349B2 (en) | 2016-10-26 | 2019-03-05 | Honeywell International Inc. | Software development kit for aircraft tablet device and airborne application server |
US11618585B2 (en) * | 2019-10-10 | 2023-04-04 | Ge Aviation Systems Limited | Integrated system for improved vehicle maintenance and safety |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5369767A (en) * | 1989-05-17 | 1994-11-29 | International Business Machines Corp. | Servicing interrupt requests in a data processing system without using the services of an operating system |
US6564241B1 (en) * | 1996-05-14 | 2003-05-13 | L-3 Communications Corporation | Avionic computer software interpreter |
AU4353297A (en) * | 1996-09-17 | 1998-04-14 | Radisys Corporation | Method and apparatus for encapsulating a protected-mode operating system within a real-time, protected-mode operating system |
EP0948769A1 (en) * | 1996-12-30 | 1999-10-13 | Cirrus Logic, Inc | Real time services in backwardly compatible operating systems |
-
2000
- 2000-12-08 JP JP2001544154A patent/JP2004500634A/ja not_active Withdrawn
- 2000-12-08 WO PCT/US2000/033419 patent/WO2001042932A2/en not_active Application Discontinuation
- 2000-12-08 CN CN 00818910 patent/CN1434940A/zh active Pending
- 2000-12-08 EP EP00984115A patent/EP1283997A2/en not_active Withdrawn
- 2000-12-08 CA CA002393828A patent/CA2393828A1/en not_active Abandoned
- 2000-12-08 AU AU20793/01A patent/AU2079301A/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
EP1283997A2 (en) | 2003-02-19 |
WO2001042932A2 (en) | 2001-06-14 |
WO2001042932A3 (en) | 2002-12-05 |
CN1434940A (zh) | 2003-08-06 |
CA2393828A1 (en) | 2001-06-14 |
AU2079301A (en) | 2001-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6691146B1 (en) | Logical partition manager and method | |
US8108196B2 (en) | System for yielding to a processor | |
US5764984A (en) | System for multiple co-existing operating system personalities on a microkernel | |
US7464209B2 (en) | Controlling resource transfers using locks in a logically partitioned computer system | |
KR101020392B1 (ko) | 논리적 파티션 사이에서의 운용 시스템의 커널 공유 | |
US6944847B2 (en) | Virtualization of input/output devices in a logically partitioned data processing system | |
US8112561B2 (en) | Updating I/O capability of a logically-partitioned computer system | |
CN100487655C (zh) | 具有多个逻辑分区的计算机系统及其硬件资源的管理方法 | |
JP2004500634A (ja) | アビオニクスソフトウエアアプリケーションのための2レイヤオペレーティングシステムおよび方法 | |
EP0321723A2 (en) | Apparatus for a data processing system having a peer relationship among a plurality of central processing units | |
CN113971095A (zh) | 扩展进程中的kubernetes应用程序接口 | |
WO2007065307A2 (en) | Handling a device related operation in a virtualization environment | |
US7783807B2 (en) | Controlling resource transfers in a logically partitioned computer system | |
CN110719206A (zh) | 天基fpga虚拟化计算服务系统、方法和可读存储介质 | |
US7353515B1 (en) | Method and apparatus for dynamic allocation and management of semaphores for accessing shared resources | |
US5596749A (en) | Arbitration request sequencer | |
CN112835845A (zh) | 用于管理形成例如微控制器的片上系统的调试的方法和对应片上系统 | |
KR20010014861A (ko) | 컴퓨터 시스템의 하나의 논리적 분할부에서의 최대인터랙티브 작업을 나머지 분할부들에서의 최대인터랙티브 작업과 별도로 지정하는 장치 및 방법 | |
Herpel et al. | Open modular computing platforms in space—Learning from other industrial domains | |
JP2000276359A (ja) | 情報処理装置、プログラム初期化方法及びプログラム提供媒体 | |
Odagiri et al. | Porting EPICS to L4-Linux based system | |
Parkinson et al. | Putting cots back in the box | |
CN102479111A (zh) | Linux操作系统下的数据储存方法及其Linux计算机系统 | |
Melcher et al. | The Navy's new standard digital signal processor, the AN/UYS-2 | |
Lahey et al. | EPICS system: RSX implementation issues |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20080304 |