(57)【特許請求の範囲】
【請求項１】
タスクに処理要求が起こった時点からそのタスクが終了していなければならない時点までの時間である要求処理時間内に前記タスクが処理されるか否かを解析するタスク余裕度解析装置において、
タスクを識別するためのタスクＩＤを記憶するタスクＩＤ記憶部と、
タスクの優先度を記憶する優先度記憶部と、
タスクの要求される処理時間を記憶する要求処理時間記憶部と、
タスクの実行に必要な処理時間である実行時間を記憶する実行時間記憶部と、
互いのタスクが排他的に起こりうるか否かの条件を記憶する要求発生条件記憶部と、
前記優先度毎にタスクの余裕度を計算し、前記要求発生条件記憶部に記憶された排他的に起こりうるタスクが前記設定された優先度と異なる場合には、前記排他的に起こりうるタスクのうち実行時間の小さい方のタスクを考慮せずに前記優先度に係るタスクの余裕度を計算し、前記排他的に起こりうるタスクが前記設定された優先度の場合には、前記排他的に起こりうるタスクの前記処理要求時間から前記実行時間の差が大きい方のタスクを考慮せずに前記優先度に係るタスクの余裕度を計算することでＣＰＵの余裕度を算出するＣＰＵ余裕度算出部と、
このＣＰＵ余裕度算出部にて算出された余裕度を描画用のデータに変換して表示する余裕度表示部と、
を備えることを特徴とするタスク余裕度解析装置。
【請求項２】
前記余裕度表示部は、
前記ＣＰＵ余裕度算出部にて算出された余裕度と、タスクの要求処理時間と、タスクの実行時間と、を描画用のデータに変換して表示することを特徴とする請求項１記載のタスク余裕度解析装置。
【請求項３】
タスクに処理要求が起こった時点からそのタスクが終了していなければならない時点までの時間である要求処理時間内に処理されるか否かを解析するタスク余裕度解析方法において、
前記タスクの優先度を設定し、
前記優先度に係るタスクがあるか否かを判定し、
排他的に起こりうるタスクが前記設定された優先度と異なる場合には、前記排他的に起こりうるタスクのうち実行時間の小さい方のタスクを考慮せずに前記優先度に係るタスクの余裕度を計算し、
前記排他的に起こりうるタスクが前記設定された優先度の場合には、前記排他的に起こりうるタスクの前記処理要求時間から前記実行時間の差が大きい方のタスクを考慮せずに前記優先度にタスクの余裕度を計算し、
前記タスクについての情報を作成し、そのタスクについての情報からＣＰＵの余裕度を算出し、その余裕度を描画用のデータに変換して表示することを特徴とするタスク余裕度解析方法。
【請求項４】
前記余裕度の表示をする際に、
前記算出された余裕度と、タスクの要求処理時間と、タスクの実行時間と、を描画用のデータに変換して表示することを特徴とする請求項３記載のタスク余裕度解析方法。
【請求項５】
タスクに処理要求が起こった時点からそのタスクが終了していなければならない時点までの時間である要求処理時間内に処理されるか否かを解析するタスク余裕度解析プログラムを格納したコンピュータ読み取り可能な記録媒体において、コンピュータに、
前記タスクの優先度を設定させ、
前記優先度に係るタスクがあるか否かを判定させ、
排他的に起こりうるタスクが前記設定された優先度と異なる場合には、前記排他的に起こりうるタスクのうち実行時間の小さい方のタスクを考慮せずに前記優先度に係るタスクの余裕度を計算させ、
前記排他的に起こりうるタスクが前記設定された優先度の場合には、前記排他的に起こりうるタスクの前記処理要求時間から前記実行時間の差が大きい方のタスクを考慮せずに前記優先度にタスクの余裕度を計算させ、
前記タスクについての情報を作成し、そのタスクについての情報からＣＰＵの余裕度を算出し、その余裕度を描画用のデータに変換して表示させることを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項６】
前記余裕度を描画用のデータに変換する際に、コンピュータに、
前記ＣＰＵ余裕度算出部にて算出された余裕度と、タスクの要求処理時間と、タスクの実行時間と、を描画用のデータに変換させることを特徴とする請求項５記載のコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、タスク余裕度解析装置、タスク余裕度解析方法及びタスク余裕度解析プログラムを格納した記録媒体に関し、特に、各タスクが要求処理時間内に処理されるか否かを把握するために使用されるタスク余裕度解析技術に関する。
【０００２】
【従来の技術】
ソフトウエア開発、殊に、リアルタイム処理用のソフトウェアを開発する場合には、処理要求の発生から応答までの時間を保証したマルチタスク処理を実現する必要がある。このようなソフトウェアの開発においては、各タスクが要求される処理時間内に処理されるか否かを解析しながら設計を進めていくことが重要である。
【０００３】
この目的のために、従来から種々のソフトウエア開発ツールが用いられてきた。例えば、ＣＰＵが実行するタスクの情報として、タスクＩＤ、優先度、要求処理時間、実行時間、タスクスイッチにかかる時間等を入力し、どの時刻でどのタスクに対する処理要求が発生するかを示すタスクの実行シーケンス（シナリオ）を指定する。このシナリオについて、ＣＰＵが各時刻でどのタスクを実行しているかに関してタイムチャートなどで表示することで、各タスクが要求される処理時間内に処理されるか否かを解析しながら設計を進めていくことができる。
【０００４】
【発明が解決しようとする課題】
しかしながら、従来手法では、タスクがどのような順番で、また、どのようなタイミングで実行されるかの詳細なシナリオに関する情報を指定しなくては、ＣＰＵの各タスクに対する処理状況の把握ができないという問題があった。
【０００５】
また、タスクの発生のシナリオがあらゆる場合をつくしていなければ、ＣＰＵのタスクの処理状況を完全に把握実行することはできない。このため、従来手法では、詳細設計後の検証の段階で設計対象システムが要求性能を満足しないことが判明することがあり、この場合再設計のために多大な手間が必要となるという問題もあった。
【０００６】
さらに、従来の手法ではタスクの処理状況を把握するためには、前もって詳細なタスクのシナリオを用意しておかなければならず、このシナリオの作成作業自体に多大な労力を必要とするという問題もあった。
【０００７】
本発明は上記事情に鑑みてなされたものであり、その目的とするところは、各タスクが要求される処理時間内に処理されるか否かの解析を簡易に行うことができ、タスクの処理状況を簡易に把握することができるタスク余裕度解析装置、タスク余裕度解析方法及びタスク余裕度解析プログラムを格納した記録媒体を提供することにある。
【０００８】
【課題を解決するための手段】
本発明の発明者は、マルチタスクのソフトウエアを開発する際に、各タスクが要求時間内に処理されるか否かについての解析や、タスクの処理状況を簡易に把握するためにはどうすればよいかを考えた。ここで、各タスクについてのＣＰＵの余裕度を算出し、この余裕度から各タスクが要求時間内に処理されるか否かについての解析を行うことができることに気がついた、また、ＣＰＵの余裕度からタスクの処理状況を簡易に把握することができることに気がついた。本発明者は、慎重な研究を重ねた結果以下のような発明を行うことができた。
【０００９】
本発明に係るタスク余裕度解析装置は、タスクに処理要求が起こった時点からそのタスクが終了していなければならない時点までの時間である要求処理時間内に前記タスクが処理されるか否かを解析するタスク余裕度解析装置において、タスクを識別するためのタスクＩＤを記憶するタスクＩＤ記憶部と、タスクの優先度を記憶する優先度記憶部と、タスクの要求される処理時間を記憶する要求処理時間記憶部と、タスクの実行に必要な処理時間である実行時間を記憶する実行時間記憶部と、互いのタスクが排他的に起こりうるか否かの条件を記憶する要求発生条件記憶部と、前記優先度毎にタスクの余裕度を計算し、前記要求発生条件記憶部に記憶された排他的に起こりうるタスクが前記設定された優先度と異なる場合には、前記排他的に起こりうるタスクのうち実行時間の小さい方のタスクを考慮せずに前記優先度に係るタスクの余裕度を計算し、前記排他的に起こりうるタスクが前記設定された優先度の場合には、前記排他的に起こりうるタスクの前記処理要求時間から前記実行時間の差が大きい方のタスクを考慮せずに前記優先度に係るタスクの余裕度を計算することでＣＰＵの余裕度を算出するＣＰＵ余裕度算出部と、このＣＰＵ余裕度算出部にて算出された余裕度を描画用のデータに変換して表示する余裕度表示部と、を備えることを特徴とする。
【００１０】
上記発明の構成のように、ＣＰＵの余裕度を算出し、算出した余裕度を操作者に表示することで、従来技術のようにシナリオ等の作成を回避することができるので、各タスクが要求される処理時間内に処理されるか否かの解析を簡易に行うことができ、また、タスクの処理状況を簡易に把握することができるのである。
【００１８】
また、要求発生条件処理を行うことで、より正確に余裕度を得ることができるのである。ここで、要求発生条件とは、任意時刻に起こりうるタスクである旨を示す条件、あるタスクと排他的に起こる旨を示す条件、あるタスクの実行前に起こる旨を示す条件、及び、あるタスクの実行後であれば任意時刻に起こりうる旨の条件等が含まれる。
【００２１】
また、上記目的を達成するため、本願発明に係るタスク余裕度解析方法は、タスクに処理要求が起こった時点からそのタスクが終了していなければならない時点までの時間である要求処理時間内に処理されるか否かを解析するタスク余裕度解析方法において、前記タスクの優先度を設定し、前記優先度に係るタスクがあるか否かを判定し、排他的に起こりうるタスクが前記設定された優先度と異なる場合には、前記排他的に起こりうるタスクのうち実行時間の小さい方のタスクを考慮せずに前記優先度に係るタスクの余裕度を計算し、前記排他的に起こりうるタスクが前記設定された優先度の場合には、前記排他的に起こりうるタスクの前記処理要求時間から前記実行時間の差が大きい方のタスクを考慮せずに前記優先度にタスクの余裕度を計算し、前記タスクについての情報を作成し、そのタスクについての情報からＣＰＵの余裕度を算出し、その余裕度を描画用のデータに変換して表示することを特徴とする。
【００３３】
上記目的を達成するため、本願発明に係るタスクに処理要求が起こった時点からそのタスクが終了していなければならない時点までの時間である要求処理時間内に処理されるか否かを解析するタスク余裕度解析プログラムを格納したコンピュータ読み取り可能な記録媒体において、コンピュータに、前記タスクの優先度を設定させ、前記優先度に係るタスクがあるか否かを判定させ、排他的に起こりうるタスクが前記設定された優先度と異なる場合には、前記排他的に起こりうるタスクのうち実行時間の小さい方のタスクを考慮せずに前記優先度に係るタスクの余裕度を計算させ、前記排他的に起こりうるタスクが前記設定された優先度の場合には、前記排他的に起こりうるタスクの前記処理要求時間から前記実行時間の差が大きい方のタスクを考慮せずに前記優先度にタスクの余裕度を計算させ、前記タスクについての情報を作成し、そのタスクについての情報からＣＰＵの余裕度を算出し、その余裕度を描画用のデータに変換して表示させることを特徴とする。
【００４５】
【発明の実施の形態】
本発明に係るタスク余裕度解析装置、タスク余裕度解析方法及びタスク余裕度解析プログラムを格納した記憶媒体の実施形態について、図面を参照しながら詳細に説明する。
【００４６】
図１は、本実施形態のタスク余裕度解析装置を示すブロック図である。この装置は、操作者からの各種の命令や、各種の情報を入力する入力部１００と、タスクについての情報を記憶するタスク情報記憶部２１０と、タスクについての情報からＣＰＵの余裕度を算出するＣＰＵ余裕度算出部２２０と、ＣＰＵ余裕度算出部２２０にて算出された余裕度を描画用のデータに変換して表示する余裕度表示部３００と、を備えるものである。ここで、入力部１００は、キーボード、マウス、ライトペン、又はフレキシブルディスク装置等の通常のコンピュータシステムに用いられる入力装置を用いることができ、タスク情報記憶部２１０は、メモリ装置やディスク装置を用いることができる。また、ＣＰＵ余裕度算出部２２０は、命令の処理を行う演算部と、前記命令を記憶する主記憶部とを備え、命令を主記憶部に逐次ロードして実行するＣＰＵを用いることができる。余裕度表示部３００は、ディスプレイ装置、プリンタ装置等を用いることができる。
【００４７】
図２は、本実施形態のタスク余裕度解析方法の処理を示すフローチャートである。まず、タスク情報作成ステップＳ１にて、処理すべきタスクに関する情報を収集して、タスク情報を作成し、タスク情報記憶部２１０に保持させる。図３は、タスク情報記憶部２１０に保持されているタスク情報を示す図である。本実施形態におけるタスク情報は、タスクＩＤ、優先度、要求処理時間、実行時間、及び要求発生条件を含む（時間の単位はすべてμｓｅｃとする）。
【００４８】
ここで、タスクＩＤは、タスクに一意につけられる識別子である。本実施形態においては、図３に示すように、Ｔ０１，Ｔ０２，Ｔ０３，Ｔ０４，及びＴ０５の５つのタスクについての処理を行う。優先度は、タスクの優先度のレベルを示すものであり、優先度“１”が最も高い優先度とする。本実施形態においては、図３に示す如く、タスクＴ０１については優先度は１であり、タスクＴ０２及びＴ０３については優先度は２であり、さらに、タスクＴ０４及びＴ０５については優先度は３であるものとする。優先度の低いタスクの実行時に、より優先度の高いタスクの処理要求が発生した場合には、タスクスイッチにより、より高い優先度のタスクの処理に移るものとする。タスクスイッチに要する時間であるタスクスイッチ時間ＴＳは、５μｓｅｃとする。
【００４９】
また、要求処理時間は、タスクに処理要求が起こった時点からそのタスクが終了していなければならない時点までの時間を示す。実行時間は、そのタスク自体の実行に必要なＣＰＵ処理時間を示す。要求発生条件は、タスクの処理要求が生じる際の条件を示す。本実施形態においては要求発生条件として、任意時刻に起こりうるタスクである旨を示すａｎｙｔｉｍｅ、及び、タスクＴｎと排他的に起こるｅｘｃｌｕｓｉｖｅ  Ｔｎタスクを用いる。図３のＴ０１，Ｔ０２，及びＴ０３は任意時刻に起こりうるタスクである旨を示す。また、Ｔ０４とＴ０５とは、互いに排他的に起こりうるタスクである旨を示す。また、この他にもタスクＴｎの実行前に起こるｂｅｆｏｒｅ  Ｔｎ、Ｔｎの実行後であれば任意時刻に起こりうるａｆｔｅｒ  Ｔｎといった要求発生条件などとしてもよい。このように、要求発生条件を設定することで、より精度の高いタスク余裕度の算出をすることができる。
【００５０】
本実施形態では簡単のため、同一のタスクの処理要求の発生が繰返し発生することはないものとする。これは実際のリアルタイム・システムを考えると、一般に同一のタスクの要求が再度発生するには、十分な時間間隔があるため、上記のような簡単化を図っても実用上問題はないためである。
【００５１】
続いて、ＣＰＵ余裕度算出ステップＳ２では、タスク情報記憶部２１０に保持されたタスク情報からＣＰＵにどの程度余裕があるかを算出する。このＣＰＵ余裕度算出部２２０の処理フローの具体例を図４に示す。まず、ステップＳ１１では、ＣＰＵｔ＿ｍｉｎの初期化を行う。ＣＰＵｔ＿ｍｉｎは、全タスク中の余裕度最小のタスクのタスクの識別子ＩＤ，要求処理時間（Ｒ），実行時間（Ｅ），処理時間（Ｐ），余裕度（ｓｌｋ），及び、余裕度率（ｒａｔｅ）からなる構造体であり、初期化では余裕度ｓｌｋとして計算機上で扱える最大の値をセットする。ここで、処理時間Ｐは、タスクスイッチやより優先度の高いタスクの実行までを含んだ処理時間を示し、余裕度は要求処理時間（Ｒ）−処理時間（Ｐ）で示され、余裕度率［％］は、（１−Ｐ／Ｒ）＊１００  であるものとする。
【００５２】
ステップＳ１１に続いて、各優先度のレベル毎にステップＳ１２からＳ１７までの処理を繰り返す。まず、優先度のレベルを“１”（すなわちｉ＝１）の場合について説明する。図３に示したタスク情報記憶部２１０を見ると、優先度“１”のタスクが存在するため、ステップＳ１４に進む。
【００５３】
ステップＳ１４では、要求発生条件ｅｘｃｌｕｓｉｖｅの処理を行う。要求発生条件処理では、もし、ｅｘｃｌｕｓｉｖｅ条件を持つタスクの優先度がｉと異なれば、実行時間の小さい方のタスク情報をマスクして、ステップＳ１５の処理では考慮しないようにし、また、もしｅｘｃｌｕｓｉｖｅ条件を持つタスクの優先度がｉと等しければ、要求処理時間（Ｒ）−実行時間（Ｅ）の値の大きい方のタスク情報をマスクして、ステップＳ１５の処理では考慮しないようにする。この例では、ｅｘｃｌｕｓｉｖｅ条件を持つタスクの優先度は“３”であり、処理の対象である“１”とは異なるため、タスクＴ０４のタスク情報をマスクする。図６はこのマスク処理の説明のために用いる図である。図示の如く、“＊”はマスクされていることを示す。ここで、図６のようにマスクされている場合は、タスク情報記憶部２１０の４番目のタスクはタスクＴ０４ではなく、タスクＴ０５であるとみなすものとする。このように、マスク処理を行うことで、より現実に起こりうるタスクの組み合わせを考慮することができるので、より、正確な余裕度を得ることができるのである。
【００５４】
続いて、ステップＳ１５にて優先度レベルのタスク余裕度を求める。このステップＳ１５の処理の具体例を図５のフローチャートに示す。図５において、ステップＳ２１では、各種の変数の初期化を行う。ＣＰＵｓｌ＿ｍｉｎ［ｉ］は、優先度のレベル“ｉ”の全タスク中の余裕度最小のタスクの情報を格納するためのものであり、ＣＰＵｔ＿ｍｉｎと同様な構造体の配列である。いま、優先度のレベルは“１”であるから、ＣＰＵｓｌ＿ｍｉｎ［１］の初期化が行われる。ステップＳ２２，Ｓ２３では、図６のタスク情報記憶部２１０から一つずつ順に各タスク情報を読み込む。まず、一番めのタスクＴ０１のタスクＩＤ“Ｔ０１”，優先度Ｙ“１”，要求処理時間Ｒ“１００”，実行時間Ｅ“２５”を得る。ステップＳ２４では、ｉと優先度Ｙともに“１”で等しいため、Ｓ２６に進む。Ｓ２６では、ｆｌｇ１は“０”であるため、Ｓ２８に進む。Ｓ２８において、ｆｌｇ１に１をセットするとともに、Ｐｓｕｍ＝０＋２５＋５＝３０を得る。続いて、Ｓ２９で、要求処理時間Ｒ、すなわち“１００”はＲｍｉｎ（計算機上で扱える最大の値が初期化でセットされている）よりも小さいため、Ｓ３０に進む。Ｓ３０では、Ｒｍｉｎは“１００”となり、Ｊｍｉｎは“１”が代入される。
【００５５】
さらに、Ｓ３３でＪ＝２として、Ｓ２２に戻り、タスクＴ０２の情報を読み込み、Ｓ２３以下の処理を進める。以下、同様に最後のタスクＴ０５に関する処理までを終えると、Ｐｓｕｍ＝３０，Ｊｍｉｎ＝１，Ｒｍｉｎ＝１００となっている。
【００５６】
ステップＳ３４のＣＰＵｓｌ＿ｍｉｎ［１］のセットでは、
ＣＵＰｓｌ＿ｍｉｎ［１］．ＩＤに、
Ｊｍｉｎ（＝“１”）番めのタスクＩＤ  Ｔ０１、
ＣＰＵｓｌ＿ｍｉｎ［１］．Ｒに、Ｒｍｉｎ（＝“１００”）、
ＣＰＵｓｌ＿ｍｉｎ［１］．Ｐに、Ｐｓｕｍ（＝“３０”）、
ＣＰＵｓｌ＿ｍｉｎ［１］．ｓｌｋに、
Ｒｍｉｎ−Ｐｓｕｍ（＝“７０”）、
ＣＰＵｓｌ＿ｍｉｎ［１］．ｒａｔｅに、
（１−Ｐｓｕｍ／Ｒｍｉｎ）＊１００（＝“７０”）
がセットされる。
【００５７】
次に、図４のＳ１６に進み、ＣＰＵｔ＿ｍｉｎ．ｓｌｋ＞“７０”であるから、上記ＣＰＵｓｌ＿ｍｉｎ［１］の情報が、ＣＰＵｔ＿ｍｉｎにセットされる。
【００５８】
さらに、図６のタスク情報により優先度のレベル２での処理を図７のタスク情報により、優先度のレベル３に関する処理を行い、最終的にＣＰＵｔ＿ｍｉｎは下記のようになる。
ＣＰＵｔ＿ｍｉｎ．ＩＤ＝“Ｔ０２”
ＣＰＵｔ＿ｍｉｎ．Ｒ＝“１４０”
ＣＰＵｔ＿ｍｉｎ．Ｐ＝“１２０”
ＣＰＵｔ＿ｍｉｎ．ｓｌｋ＝“２０”
ＣＰＵｔ＿ｍｉｎ．ｒａｔｅ＝“１４”
また、ＣＰＵｓｌ＿ｍｉｎ［１］は、下記のようになる。
ＣＰＵｓｌ＿ｍｉｎ［１］．ＩＤ＝“Ｔ０１”
ＣＰＵｓｌ＿ｍｉｎ［１］．Ｒ＝“１００”
ＣＰＵｓｌ＿ｍｉｎ［１］．Ｐ＝“３０”
ＣＰＵｓｌ＿ｍｉｎ［１］．ｓｌｋ＝“７０”
ＣＰＵｓｌ＿ｍｉｎ［１］．ｒａｔｅ＝“７０”
また、ＣＰＵｓｌ＿ｍｉｎ［２］は、下記のようになる。
ＣＰＵｓｌ＿ｍｉｎ［２］．ＩＤ＝“Ｔ０２”
ＣＰＵｓｌ＿ｍｉｎ［２］．Ｒ＝“１４０”
ＣＰＵｓｌ＿ｍｉｎ［２］．Ｐ＝“１２０”
ＣＰＵｓｌ＿ｍｉｎ［２］．ｓｌｋ＝“２０”
ＣＰＵｓｌ＿ｍｉｎ［２］．ｒａｔｅ＝“１４”
また、ＣＰＵｓｌ＿ｍｉｎ［３］は、下記のようになる。
ＣＰＵｓｌ＿ｍｉｎ［３］．ＩＤ＝“Ｔ０４”
ＣＰＵｓｌ＿ｍｉｎ［３］．Ｒ＝“２２０”
ＣＰＵｓｌ＿ｍｉｎ［３］．Ｐ＝“１８０”
ＣＰＵｓｌ＿ｍｉｎ［３］．ｓｌｋ＝“４０”
ＣＰＵｓｌ＿ｍｉｎ［３］．ｒａｔｅ＝“１８”
【００５９】
以上の余裕度算出部２２０の結果に基づき、余裕度表示部３００は、余裕度の表示を行う。この表示は、算出された余裕度を描画用のデータに変換することにより行われる。図８は、余裕度表示部３００を説明するための図である。ここで、表示部３００は、ワーストタスク表示部３２０と、タスク表示部３３０とを有する。ワーストタスク表示部３２０は、余裕度が最小のタスクの余裕度を表示するようにしてある。本実施形態の場合には、余裕度が最小であるのはタスクＴ０２であるから、このタスクのタスクＩＤ、タスクの要求処理時間、及びタスクの処理時間を棒グラフにて表示する。これにより、すべてのタスクが要求処理時間内に処理されることが容易に分かる。また、タスク表示部３３０は、余裕度が最小のタスクについて優先度ごとに計算した余裕度のうち、余裕度が最小の余裕度を表示するようにしてある。本実施形態の場合には、優先度１ではタスクＴ０１、優先度２ではＴ０２、及び優先度３ではタスクＴ０３がそれぞれの優先度で余裕度が最小であるから、このタスクのタスクＩＤ、タスクの要求処理時間、及びタスクの処理時間を棒グラフにて表示する。これにより、すべてのタスクが要求処理時間内に処理されることが容易に分かる。さらに、新たにタスクを追加する必要が生じた場合、例えば、そのタスクの要求処理時間が２２０以上、実行時間が４０からタスクスイッチに要する時間を引いた時間以下であれば優先度レベル３とすれば良い等の判断をすることができる。
【００６０】
上述の実施形態では、簡単のため単一ＣＰＵの場合について説明するものとするが、マルチＣＰＵの場合には、その個々のＣＰＵに対し、以下の実施形態を適用すれば実施可能である。  上記の実施の形態では、タスク間で同期をとるために待ち合わせを行うことは考慮していないが、この場合は待ち合わせ点毎に一つのタスクを複数のタスクとみなせば、上記実施の形態例により適用できる。
【００６１】
以上のように、本実施形態のタスク余裕度解析装置、タスク余裕度解析方法によれば、タスクのシナリオを作成することなく、ＣＰＵのタスク状況をＣＰＵの余裕度として算出することができる。これにより、多大の労力を必要としたシナリオの作成作業を削減できる。
【００６２】
また、シナリオを作成していた従来手法で起こったような、すべての場合をつくしていなければ、詳細設計後に要求性能を満さないといったことがなくなる。
【００６３】
また、従来のシナリオ毎のタイムチャートに比べて、ＣＰＵの状態の認識が容易となり、設計においてより良い判断を行うことができる。例えば、新たにタスクを追加する必要が生じた場合、そのタスクをどの優先度レベルとすれば良いかの判断、および追加後にも要求性能を満していることの認識も容易にできる。
【００６４】
さらに、ＣＰＵの余裕度がどの程度であるかを把握することができるため、ハードウェア／ソフトウェア協調設計において利用する場合においても、ハードウェア／ソフトウェアの切り分け工程を精度良く行うことができる。
【００６５】
なお、上述したタスク余裕度解析方法を実現するためのプログラムは記録媒体に保存することができる。この記録媒体をコンピュータシステムによって読み込ませ、前記プログラムを実行してコンピュータを制御しながら上述したタスク余裕度解析方法を実現することができる。ここで、前記記録媒体とは、メモリ装置、磁気ディスク装置、光ディスク装置等、プログラムを記録することができるような装置が含まれる。
【００６６】
【発明の効果】
以上説明してきたように、本発明に係るタスク余裕度解析装置、タスク余裕度解析方法、及びタスク余裕度解析プログラムを記録した記録媒体によれば、各タスクが要求される処理時間内に処理されるか否かの解析を簡易に行うことができ、また、タスクの処理状況を簡易に把握することができる。
【図面の簡単な説明】
【図１】本実施形態のタスク余裕度解析装置の構成を示すブロック図である。
【図２】本実施形態のタスク余裕度解析方法の処理を示すフローチャートである。
【図３】本実施形態のタスク情報記憶部２１０の記憶内容を示す図表である。
【図４】ＣＰＵ余裕度算出ステップＳ２の具体的処理を示すフローチャートである。
【図５】優先度レベルｉのタスク余裕度を求める処理（ステップＳ１５）を示すフローチャートである。
【図６】マスクされたタスク情報記憶部２１０を説明するための図である。
【図７】マスクされたタスク情報記憶部２１０を説明するための図である。
【図８】本実施形態の余裕度表示部３００による表示画面を示す図である。
【符号の説明】
１００  入力部
２００  処理部
２１０  タスク情報記憶部
２２０  ＣＰＵ余裕度算出部
３００  余裕度表示部
３２０  ワーストタスク表示部
３３０  タスク表示部
【図１】
0003660083.tif 000002
【図２】
0003660083.tif 000003
【図３】
0003660083.tif 000004
【図４】
0003660083.tif 000005
【図５】
0003660083.tif 000006
【図６】
0003660083.tif 000007
【図７】
0003660083.tif 000008
【図８】
0003660083.tif 000009