(57)【要約】本発明は、データ要素の時間依存性ストリームを処理するためのハードリアルタイムシステムにおいて、コンポーネントがスケジュール可能であるときを決定する方法に関する。コンポーネントの数は、該コンポーネントを処理するための使用可能であるプロセッサの数よりも多く、コンポーネントのそれそれが、少なくとも１つの入力及び少なくとも１つの出力を有する。データ要素はタイムスタンプを備えており、コンポーネントは、前記タイムスタンプ付データ要素の時間依存性ストリームの既定の時間間隔からのタイムスタンプ付データ要素が、前記コンポーネントの入力の全てにおいて使用可能であるとき、スケジュールすることができる。具体的実施例においては、タイムスタンプは、内部的に定義されたアルゴリズム時間軸上の点である。本発明は、更に、データ要素の時間依存性ストリームを、上述のスケジュール可能性の決定を実施する手段によって処理するための、ハードリアルタイムシステムにも関する。
2005519390.tif 000002
【特許請求の範囲】
【請求項１】
データ要素の時間依存性ストリームを処理するリアルタイムシステムにおいて、コンポーネントがスケジュール可能であるときを決定する方法であって、コンポーネントの数が、前記コンポーネントを処理するために使用可能であるプロセッサの数よりも多く、前記コンポーネントのそれそれが、少なくとも１つの入力及び少なくとも１つの出力を有する方法において、前記データ要素はタイムスタンプを備えており、コンポーネントは、タイムスタンプ付データ要素の前記時間依存性ストリームの既定の時間間隔からのタイムスタンプ付データ要素が、前記コンポーネントの入力の全てにおいて使用可能であるときに、スケジュール可能であることを特徴とする方法。
【請求項２】
前記タイムスタンプが、内部的に定義されたアルゴリズム時間軸上の点である、請求項１に記載の方法。
【請求項３】
タイムスタンプ付データ要素の前記既定の時間間隔が、前記コンポーネントの既定入力における既定数のデータ要素の時間間隔を有する、請求項１に記載の方法。
【請求項４】
タイムスタンプ付データ要素の前記時間依存性ストリームの略同一の既定の時間間隔からのデータ要素が、入力の全てにおいて使用可能であるときに、前記コンポーネントがスケジュール可能である、請求項１に記載の方法。
【請求項５】
前記既定の時間間隔の長さが、各入力について略同一であり、少なくとも第１入力の前記時間間隔が、少なくとも第２入力の前記時間間隔から既定値だけ変位しているような、請求項１に記載の方法。
【請求項６】
前記タイムスタンプ付データ要素の前記既定の時間間隔の使用可能性が、前記既定の時間間隔の開始時間及び終了時間を規定し、データが先行コンポーネントによって処理されるまでの時間が、前記既定の時間間隔の前記終了時間よりも新しいかどうかをチェックすることによって決定される、請求項１に記載の方法。
【請求項７】
タイムスタンプ付データ要素の前記時間依存性ストリームが、マルチメディアデータのストリームである、請求項１に記載の方法。
【請求項８】
データ要素の時間依存性ストリームを処理するリアルタイムシステムであって、前記システムは幾つかのコンポーネント及びコンポーネントを処理する幾つかのプロセッサを有しており、前記コンポーネントの数は前記プロセッサの数よりも多く、前記コンポーネントのそれぞれが少なくとも１つの入力及び少なくとも１つの出力を有しており、前記システムは前記コンポーネントのスケジュール可能性を規定する手段を有するシステムにおいて、前記システムが、データ要素にタイムスタンプを設ける手段を有し、スケジュール可能性を規定する前記手段が、タイムスタンプ付データ要素の前記時間依存性ストリームの既定の時間間隔からのデータ要素がコンポーネントの入力の全てにおいて使用可能であるときに、前記コンポーネントがスケジュール可能であると規定するようになっていることを特徴とする、リアルタイムシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ要素の時間依存性ストリームを処理するためのリアルタイムシステムにおけるコンポーネントについてスケジュール可能性を規定する方法に関する。本発明は、更には、データ要素の時間依存性ストリームを処理するためのリアルタイムシステムにも関する。
【背景技術】
【０００２】
コンポーネントの数が、使用可能であるプロセッサの数よりも多いようなリアルタイムソフトウェアシステムにおいて、コンポーネントは処理時間を得るために競合し、コンポーネントのスケジューリングは、確実で素早いものであることが要求される。本状況においては、出力が発生する時間が必須であるような、全てのソフトウェアシステムを、リアルタイムソフトウェアシステムと呼ぶ。リアルタイムソフトウェアシステムの入力時間から出力時間までのラグ即ち遅延は、許容可能である適時性に対して十分に小さくあるべきである。ハードリアルタイムソフトウェアシステムは、外部で発生される入力に、有界時間間隔内で応答しなくてはならない。本状況におけるソフトウェアシステムは、典型的には、相互接続された多くのコンポーネントから構成されており、コンポーネント間の相互作用のみが、これらのインターフェースを介し、コンポーネントは状態情報を共有しない。
【０００３】
この種のシステムにおいて、スケジューラは、システムレベル上のリアルタイム制約が満たされるような形で、コンポーネントに処理間隔を割り当てる。コンポーネントのスケジューリングは、時間経過と共に継続的に繰り返される２相から成る。初めに、スケジュール可能であるコンポーネントのセットが決定され、次いでこのセットから、及び何らかの優先順位化方式によって、コンポーネントのサブセットが選択され、プロセッサ上で実際に実行される。実行の間は、１つずつのコンポーネントが各プロセッサ上で実行される。
【０００４】
コンポーネントが、上述したタイプのシステム内でスケジュール可能であるようなときを規定するための、多数の方法が存在する。
【０００５】
時間駆動型スケジュール可能性、この場合、コンポーネントは、ある一定の長さの時間が経過したときにスケジュール可能である。
【０００６】
アルゴリズム時間駆動、この方法は、時間駆動型の方法に似ているが、リアルタイム軸の代わりに、仮想時間軸が使用される。
【０００７】
データ駆動、この場合、コンポーネントはある一定量の入力データが使用可能であるときに、スケジュール可能である。
【０００８】
イベント駆動、この方法はデータ駆動を特殊化したものであり、該データは、真となるブール変数、又はこれに対してのあるブール表現が真となるようなブール変数のセットのいずれかである。
【０００９】
要求駆動、この方法において、コンポーネントは、特定のコンポーネントからの出力データの消費者がある一定量のデータを要求するときに、スケジュール可能である。
【００１０】
ストリームベースのシステムであって、入力がデータ要素の時間依存性ストリームとなっているシステムにおいては、入力時間から出力時間までのラグが小さいことが特に重要である。更に、コンポーネントが入力におけるデータがレディ（準備完了）であるときにのみスケジュールされることが重要であり、これによってプロセッサ利用が最大化される。
【００１１】
国際特許出願公開第ＷＯ９５２５３１３号は、処理の間の、複数のデータストリームの同期化の実施例を記載している。スケジュール規準は、トリガ条件によって決定され、例えば、ストリーム処理の状態に基づいて決定される。このような状態は、再び、前記ストリームのタイムマーク及びシステム時間に関係する。この明細書では、コンポーネントのスケジューリングを実行することによって１つのプロセッサを使用しての、ストリームの実行及びストリームの制御についての問題を解決するものではない。
【発明の開示】
【発明が解決しようとする課題】
【００１２】
本発明の目的は、スケジューリングの方法であって、システムのリアルタイム動作を達成するのに適している方法を提供することにある。
【課題を解決するための手段】
【００１３】
このことは、データ要素の時間依存性ストリームを処理するリアルタイムシステム内で、コンポーネントがスケジュール可能であるときを決定する方法によって達成され、該方法においては、コンポーネントの数は、前記コンポーネントを処理するために使用可能であるプロセッサの数よりも多く、コンポーネントのそれぞれは、少なくとも１つの入力及び少なくとも１つの出力を有している。データ要素はタイプスタンプを備えており、コンポーネントは、タイムスタンプ付データ要素の前記時間依存性ストリームの既定時間間隔からのタイムスタンプ付データ要素が、前記コンポーネントの全ての入力において使用可能であるようなときに、スケジュール可能である。
【００１４】
具体的実施例において、タイプスタンプは、内部的に定義されたアルゴリズム時間軸上の点である。
【００１５】
これによって、スケジュール可能であるコンポーネントは、コンポーネントに対して割り当てられるべき時間間隔の間にコンポーネントによって処理されるために十分であるような、異なり得るデータ入力ストームからのデータ要素を有する。この結果、プロセッサ利用が改良され、特に、ストリームレートが一定又は略一定であるような場合は、プロセッサ利用は略１００％であるので、システムのハードリアルタイムのような、リアルタイム動作が達成される。更に、これは効率を向上させ、コンポーネントがスケジュールされたとき、既定の時間間隔内の異なる入力ストリームにおける全てのデータ要素が、実際に処理されることができ、これにより、コンポーネントがスケジュールされてからデータの不足によって直ちに戻るというようなことがなくなる。更に、データ要素を処理している間、コンポーネントが、他のコンポーネントによって先取りされるようなことはないであろう。従って、秒当たりのタスク切り替えの数は最小限に抑えられ、キャッシュミスの数が減少するため、プロセッサキャッシュの効率を改良できる。本方法は、また、以下の理由により、ハードリアルタイムシステムのためのコンポーネントに基づく設計を、容易にする。
−  所与のアプリケーションインスタンスについて、ハードリアルタイム挙動を達成するために必要とされる処理リソースを計算することは、比較的簡単で明瞭である。この計算は、アプリケーション独立ツールにおいて実施されることができる。
−  コンポーネントは、リアルタイム問題をほとんど知らずにいることができるので、これらの設計が簡単になる。リアルタイム挙動を達成するための複雑さは、スケジューラ内に集中されるので、１回限りの手間となる。コンポーネントは、タイムボックス内のデータを処理するために、最悪の場合の計算時間を設けることを、必要とするだけである。
【００１６】
本発明は、処理済（ＭＰＥＧ２、ＭＰＥＧ４）及び未処理のドメインにおける、ビデオ及びオーディオ処理システムのような、リアルタイムシステム内で使用することができる。他のリアルタイムシステムは、画像処理、画像認識、産業用自動化、パターン認識、レーダ及び電気通信でもあり得る。
【００１７】
他の実施例においては、タイムスタンプ付データ要素の既定の時間間隔は、前記コンポーネントの既定入力における既定数のデータ要素についての時間間隔を有する。従って、本発明は、ある入力コネクタからの消費されるべきである好ましい数のデータ要素を有するような、特定のタイプのコンポーネントであって、例えば、固定された数のオーディオサンプルのようなコンポーネントに使用されることができる。更にこれは、既定の時間間隔が、例えば、厳密に１つのデータ要素を含むべきであるが、データ要素が正確には等しい間隔では到来しない場合において、有利である。
【００１８】
具体的な実施例においては、タイムスタンプ付データ要素の前記時間依存性ストリームの略同一である既定の時間間隔からのデータ要素が、全ての入力において使用可能であるときに、コンポーネントはスケジュール可能である。これによって、システムは実施しやすくなり、コンポーネントのためのバッファメモリを確保することが、より簡単である。
【００１９】
更に他の具体的な実施例においては、前記既定の時間間隔の長さは、各入力について略同一であり、少なくとも第１入力の時間間隔は、少なくとも第２入力の時間間隔からの既定値に変位される。従って、デッドロックを回避することができる。一般的に、前記変位は、コンポーネントの出力を変位することによって得られ、これにより該コンポーネントが、システム内の他のコンポーネントと独立でいられるようになる。
【００２０】
具体的な実施例においては、前記タイムスタンプ付データ要素の前記既定の時間間隔の使用可能性は、前記既定の時間間隔の開始時間及び終了時間を規定することによって、及びデータが先行コンポーネントによって処理されるまでの時間が前記既定の時間間隔の終了時間よりも新しい時間であるかをチェックすることによって、決定される。従って、既定の時間間隔があるコネクタについて「満杯」である時は簡単に決定されることができ、発生終了時間（Ｐｒｏｄｕｃｅ−ｕｎｔｉｌ  ｔｉｍｅ）は既定の時間間隔の終了時間よりも長い。
【００２１】
本発明は、更に、データ要素の時間依存性ストリームを処理するリアルタイムシステムにも関し、前記システムは、幾つかのコンポーネント、及びコンポーネントを処理する幾つかのプロセッサを有し、前記コンポーネントの数はプロセッサの数よりも多く、前記コンポーネントのそれぞれは、少なくとも１つの入力及び少なくとも１つの出力を有する手段において、前記システムは前記コンポーネントのスケジュール可能性を規定する手段を有し、前記システムが、データ要素にタイムスタンプを設ける手段を有するようなシステムにおいて、前記システムがタイムスタンプ付データ要素を設ける手段を有し、スケジュール可能性を規定する前記手段が、タイムスタンプ付データ要素の時間依存性ストリームの既定の時間間隔からのデータ要素が前記コンポーネントの全ての入力において使用可能であるときに、コンポーネントがスケジュール可能であると規定するために適用されることを特徴とするリアルタイムシステムに関する。
【発明を実施するための最良の形態】
【００２２】
以下において、本発明の好適実施例が、図面を参照して記載されるであろう。
【００２３】
以下において、ストリーム処理をするハードリアルタイムシステムにおけるソフトウェアコンポーネントのタイムボックス駆動型のスケジューリングにおいて使用される言葉が記載されるであろう。
【００２４】
システムは、あるタスクを実行する装置であり、該装置がこのタスクを実施する方法は、管理及び制御に影響され得る。好適実施例においては、上記あるタスクは、ストリーミングデータのハードリアルタイム処理に限定されるであろう。コンポーネントとは、前記システムの内蔵部であり、「原子的」即ちこれ以上サブタスクを分割化することは有用ではないと見なされるサブタスクを実行する。サブタスクを更に分割するか否かの動機は、再多重化装置及びエンコーダ等のアプリーケーションドメインにおける経験に基づく。タイムスタンプ付データ要素は、ストリーム内のデータの表現である。ストリーミングデータは、データ内容及び時間情報を持っていると仮定する。この時間情報は、前記要素を順序づけ、前記データと時間を関連づけるために使用される。タイムボックスとは、タイムスタンプ付データ要素の既定の時間間隔のことである。
【００２５】
本発明によるシステム内部において、アルゴリズム時間ｓが使用される。最終的に、出力ストリーム用に発生される時間情報は、再びリアルタイムに関連付けられる。システム時間からアルゴリズム時間への変換は、例えば、システム入力及びシステム出力に位置される従来型時間フィルタによって実施されることができる。
【００２６】
図１は、２つのコンポーネントの間のコネクタを示しており、該コネクタはシステム１００の内蔵部である。ソースコンポーネント１０１は、シンク（吸い込み）コンポーネント１０３に、コネクタ１０５によって接続されている。コネクタ１０５の動的状態は、コネクタ１０５における幾つかの要素から成り、これら要素は、データ要素自身ｄi及び発生終了時間ｓｐＣ（データがソースコンポーネントによって発生されるまでの時間）を有する。データ要素はアルゴリズム時間ｓｉでマークされ、コネクタのソース側においてソースコンポーネントのスケジューリングをすることで、コネクタに追加されることができる。更に、ソースコンポーネントのスケジューリングは、特定のコネクタについて発生終了時間を更新する。コネクタのシンク側のコンポーネントは、自身がスケジュールされたときに、データ要素を処理することによって、データ要素を消去することができる。各コンポーネントについて、現行タイムボックスが規定され、該タイムボックスは、開始時間と終了時間とを有する。コンポーネントをスケジューリングするためには、タイムボックスは、該コンポーネントの入力における全てのコネクタに対して、満杯であるべきであり、タイムボックスの開始時間及び終了時間の間の時間間隔内のタイムスタンプｓｉを備える全てのデータ要素が、レディ（準備完了）／存在している、即ち言い替えれば、発生終了時間が、現行タイムボックスの終了時間よりも新しいことを意味する。
【００２７】
図２は、コンポーネントのスケジュール可能性の規定、及びスケジュールされたコンポーネントの実行の処理を、大まかなステップにおいて説明している。前記処理は、タイムボックスをコンポーネントの各コネクタに割り当てるステップと、スケジュールされたコンポーネントを実行するステップとを有する。２０１において、現行タイムボックスがコンポーネントに割り当てられ、これは、該コンポーネントによって処理されるべき次のデータ要素の時間間隔の開始時間及び終了時間を規定することによってなされる。スケジューラは、例えば、現行タイムボックスの割り当てを実行することができる。特定のコネクタ上のデータ要素がレディであるとき（該データ要素がソースコンポーネントによって処理されたことを意味する）、現行タイムボックス内のデータはレディである。現行タイムボックスは、コンポーネントをスケジュール可能とするためには、コンポーネントの各入力コネクタについて満杯であらなくてはならない。２０３において、コンポーネントはスケジュールされており、スケジュールされたとき、全てのコネクタにおけるデータ要素であって、現行タイムボックスの境界内にあるようなデータ要素は、コンポーネントによって消費及び処理される。処理されたデータ要素は、今や、コンポーネントの出力においてレディであり、各出力コネクタについての発生終了時間ｓｐＣが更新される。２０１において、新しい現行タイムボックスがコンポーネントに割り当てられ、これは、該コンポーネントのために先行タイムボックスの終了時間に等しい新しい開始時間を規定することによってなされる。
【００２８】
図３は、現行タイムボックスを特定のコンポーネントに割り当てることが可能であるかどうかが、どのようにして決定されるかを示しているフロー図である。前記決定は、コンポーネントのタイプに依存する２つのシナリオによってなされ得る。第１タイプは、Δｓコンポーネント、第２タイプは＃ｎコンポーネントである。コンポーネントが、Δｓコンポーネントである場合３０１、現行アルゴリズム時間ＣＳが、現行タイムボックスの開始時間ＢＳにタイムボックスの長さである既定の時間間隔Δｓを加算した時間よりも大きいかどうかがチェックされる３０３。現行タイムボックスの前記開始時間は、先行タイムボックスの終了時間に等しい。これが真である場合、タイムボックスは規定され、コンポーネントに割り当てられることができ３０５、偽である場合は、コンポーネントがタイムボックス内のデータ要素を最後に処理してから、まだ十分な時間が過ぎていないとして、タイムボックスは規定されず、割り当てられない（！ＴＢで表す）３０７。コンポーネントが、＃ｎコンポーネントである場合３０９、先ず、特定のコネクタである＃ｎコネクタ上で使用可能である既定数のデータ要素があるかどうかがチェックされ３１１、これが真である場合、タイムボックスＴＢが規定され３０５、ここで、開始時間は先行タイムボックスの終了時間であり、終了時間は、該特定のコネクタにおいて使用可能である最新データ要素のタイムスタンプである。これが真でない場合、現行アルゴリズム時間が、現行タイムボックスの開始時間に変位値ｄを加算した時間よりも大きいかどうかがチェックされる３１３。これが真である場合、データ要素はレディであり、タイムボックスは規定されることができ３０５、偽である場合、十分なデータ要素が、ｎ番コネクタにまだ存在していないとして、タイムボックスは規定できない（！ＴＢで表す）。一般に、Δｓコンポーネントは、これら現行タイムボックス内でわずかに変化する量のデータを扱うことができる一方で、＃ｎコンポーネントは、＃ｎコネクタとして特定される入力からの同量のデータをとることができるであろう。
【００２９】
一実施例において、コンポーネントに割り当てられた現行タイムボックスは、図４に示されているように、各コネクタについて時間的に変位され得る。４０１において、コンポーネントは、幾つかの入力（I１、…、Iｎ）と３つの出力（Ｑ１、Ｑ２、Ｑ３）とを有して示されている。タイムボックスＴＢは、４０３に示されているようにコンポーネントに割り当てられ、開始時間ＢＳ及び終了時間ＥＳを有する。この例において、出力Ｑ１は変位を持たず、Ｑ２は正の変位、及びＱ３は負の変位を有する。ある出力コネクタについての発生終了時間は、以下のように出力の変位を加えることによって、直接的に、タイムボックスの終了時間と関連付けられる。
【数１】
2005519390.tif 000003
ここで、ＣＱはコンポーネントの出力Ｑに付加されたコネクタ、ｓｐＣＱはコネクタＣＱの発生終了時間、ＥＳ（ＴＢ）はコンポーネント４０１がスケジュールされていたタイムボックスＴＢの終了時間、及びΔｄＱはコンポーネントの出力Ｑの変位である。
【００３０】
図５を使用して、スケジューラがコンポーネントのスケジュール可能性を決定するときに、タイムボックスをどのように使用するかが記載されている。スケジュール可能性は、コンポーネントの各入力コネクタをチェックすることによって決定され、コネクタについての発生終了時間ｓｐＣが、コンポーネントのタイムボックスの終了時間ＥＳ以上の長さである場合、このコネクタは、コンポーネントをスケジューリングに適するようにし５０３、そうでない場合は、コンポーネントはスケジュールされる準備ができていない５０５。前述したように、コンポーネントにスケジュールされる資格を与えるためには、コンポーネントの各入力コネクタが資格を得なくてはならない。
【００３１】
図６から１１では、タイムボックス駆動型スケジュールが、再多重化装置と関連して使用されるような例が示されている。再多重化装置は、次の７つのコンポーネントを有しており、これらは、トランスポートストリームＡｌｌ  Ｓｋｙ  Ｉｍａｇｅｒ（ＡＳＩ）を受け取るようになっている２つのＲｔＴｓｉｎコンポーネント（リアルタイムトランザクション処理）、ストリームのプログラム識別子（ＰＩＤ）を置換するための２つのＰＩＤマッパ、２つのストリームを１つのストリームに結合するための１つの多重化装置ＲｔＭｕｘ（リアルタイム多重化装置）、結合されたストリームを出力するための１つの出力コンポーネントＲｔＴｓＯｕｔ（リアルタイムトランザクション）、並びに多重化装置及び出力が同じ速度で動作するようにさせるために入力／出力（Ｉ／Ｏ）イベントを複製するための１つのフォークＲｔＦｏｒｋ（リアルタイムフォーク）である。再多重化装置は、更に、データの入出力を規定し、タイプスタンプを設けるための３つのイベント発生器ＥＶＧを有している。接続部に示されている箱がタイムボックスであり、満杯の箱は、満杯のタイムボックスを示している。これらの図において、スケジュール可能コンポーネントは、該コンポーネントを囲む点線の箱によってマークされており、ちょうどスケジュールされたコンポーネントは、実線の箱によってマークされている。図７から１１においては、再多重化装置の異なる状態が示されており、スケジュール可能性がどのように規定されるかが説明されているが、本記載は、スケジューリング、及びスケジューリングの際に使用される優先権スキームに関するものではない。これは、本発明がコンポーネントのスケジュール可能性の定義に関するのみであるからである。
【００３２】
図６において、フォーク６０１がちょうどスケジュールされており、フォーク６０１と多重化装置６１５との間の接続６０３、及びフォーク６０１と出力コンポーネント６１７との間の接続６０５に、満杯のタイムボックスが存在するが、多重化装置６１６又は出力コンポーネント６１７のいずれもスケジュール可能ではない。なぜならば、これらコンポーネントの入力の全てが、満杯のタイムボックスを有しているわけではないからである。この状態においてスケジュール可能であるコンポーネントは、入力コンポーネント６０７、６０９のみであり、これらコンポーネントの入力の全てが満杯のタイムボックス６１１、６１３を有するからである。
【００３３】
図７において、スケジューラは、実行されるべき入力コンポーネントの１つ７０１を選択し、このコンポーネントは実行され、このことによって入力におけるタイムボックス７０３は空となり、出力におけるタイムボックス７０９が満杯になっている。この状態において、スケジュールされることができるのは、ＰＩＤマッパ７０５及び他の入力コンポーネント７０７のみであって、これらのみが、これらの入力の全てにおいて満杯のタイムボックス７０９、７１１を有するコンポーネントであるからである。多重化装置７１３及び出力コンポーネント７１５の両方は、これらコンポーネントの入力の全てが、満杯のタイムボックスを有してはいないので、スケジュール可能ではない。
【００３４】
図８において、スケジューラは、実行されるべきＰＩＤマッパ８０１コンポーネントを選択しており、このコンポーネントは実行され、このことによって入力におけるタイムボックス８０３は空となり、出力におけるタイムボックス８０４が満杯になっている。この状態において、スケジュールされることができるのは、入力コンポーネント８０５のみであって、該コンポーネントのみが、入力の全てにおいて満杯のタイムボックス８０７を有するコンポーネントであるからである。多重化装置８０９及び出力コンポーネント８１１の両方は、これらコンポーネントの入力の全てが満杯のタイムボックスを有してはいないので、まだスケジュール可能ではない。
【００３５】
図９において、スケジューラは、実行されるべき入力コンポーネント９０１を選択しており、このコンポーネントは実行され、このことによって入力におけるタイムボックス９０３が空となり、出力におけるタイムボックス９０５が満杯になっている。この状態において、スケジュールされることができるのは、ＰＩＤマッパ９０５コンポーネントのみであって、該コンポーネントのみが、入力の全てにおいて満杯のタイムボックスを有するコンポーネントであるからである。多重化装置９０７及び出力コンポーネント９０９の両方は、これらコンポーネントの全ての入力が満杯のタイムボックスを有してはいないので、まだスケジュール可能ではない。
【００３６】
図１０において、スケジューラは、実行されるべきＰＩＤマッパ１００１コンポーネントを選択しており、このコンポーネントは実行され、このことによって入力におけるタイムボックス１００３が空となり、出力におけるタイムボックス１００５が満杯になっている。多重化装置１００７は、入力における全てのタイムボックス１００５、１００９、１０１１が満杯であるため、ここでスケジュールされることができるが、出力コンポーネント１０１３は、入力の全てが満杯のタイムボックスを有してはいないので、まだスケジュール可能ではない。
【００３７】
図１１において、スケジューラは、実行されるべき多重化装置コンポーネント１１０１を選択し、このコンポーネントは実行され、このことによって入力におけるタイムボックス１１０３、１１０５、１００７が空となっている。この状態において、出力コンポーネント１１０９及びフォーク１１１１のみが、これらのみがコンポーネント入力の全てにおいて満杯のタイムボックスを有するコンポーネントであるので、スケジュールされることができる。
【００３８】
図１２は、本発明によるシステム１２００を示している。ここで該システムは、２つのメモリ１２０２及び１２０８、２つのプロセッサ１２１８及び１２２０、並びに２つのメモリ１２０２及び１２０８と２つのプロセッサ１２１８及び１２２０との間のデータの通信を可能にするソフトウェアバス１２２２を有する。メモリ１２０２は、例えば、上述したＲｔＴｓｉｎコンポーネントのような、ソフトウェアに書き込まれているコンポーネント１２０４を有している。更に、メモリ１２０２は、例えば、上述したＲｔＰｉｄＭａｐ、ＲｔＦｏｒｋ及びＲｔＭｕｘのような、ソフトウェアに書き込まれているコンポーネント１２０６、１２１４及び１２１６を有する。メモリ１２０８は、２つのソフトウェアモジュール１２１０及び１２１２を有する。モジュール１２１０は、コンポーネント１２０４、１２０６、１２１４及び１２１６のスケジュール可能性を決定するスケジューラとして参照されることができる。モジュール１２１２は、上述のように、データ要素にタイムスタンプを設けるように設計されている。
【図面の簡単な説明】
【００３９】
【図１】図１は、２つのコンポーネントの間のコネクタを示している。
【図２】図２は、コンポーネントのスケジュール可能性を規定し、スケジュールされたコンポーネントの実行する処理を、一般的ステップにおいて、示している。
【図３】図３は、現行タイムボックスを特定のコンポーネントに割り当てることが可能であるかどうかが、どのようにして決定されるのかを示しているフロー図である。
【図４】図４は、各コネクタに対する現行タイムボックスの置換を示している。
【図５】図５は、スケジューラが、コンポーネントのスケジュール可能性を決定するときに、どのようにタイムボックスを使用するのかを示している。
【図６】図６は、タイムボックス駆動型スケジュールが、再多重化装置と関連して使用される例を示している。
【図７】図７は、タイムボックス駆動型スケジュールが、再多重化装置と関連して使用される例を示している。
【図８】図８は、タイムボックス駆動型スケジュールが、再多重化装置と関連して使用される例を示している。
【図９】図９は、タイムボックス駆動型スケジュールが、再多重化装置と関連して使用される例を示している。
【図１０】図１０は、タイムボックス駆動型スケジュールが、再多重化装置と関連して使用される例を示している。
【図１１】図１１は、タイムボックス駆動型スケジュールが、再多重化装置と関連して使用される例を示している。
【図１２】図１２は、本発明によるシステムの実施例を示している。
【図１】
2005519390.tif 000004
【図２】
2005519390.tif 000005
【図３】
2005519390.tif 000006
【図４】
2005519390.tif 000007
【図５】
2005519390.tif 000008
【図６】
2005519390.tif 000009
【図７】
2005519390.tif 000010
【図８】
2005519390.tif 000011
【図９】
2005519390.tif 000012
【図１０】
2005519390.tif 000013
【図１１】
2005519390.tif 000014
【図１２】
2005519390.tif 000015
【国際調査報告】
2005519390.tif 000016
2005519390.tif 000017
2005519390.tif 000018
2005519390.tif 000019