(57)【要約】【課題】ハードウェアのモデルと並列動作することができ、また、特別の機能の実装を必要とすることなく、シミュレーション動作を実行することができるシミュレーション装置を提供する。【解決手段】シミュレーション装置は、実行中のアプリケーション・タスク１６（１−Ｎ）の優先度に関係なくソフトウェアとハードウェア・モデル１９（１−Ｎ）との並行動作を模倣させるためにソフトウェアの状態に基づいてソフトウェアを制御するため、ソフトウェアの状態をハードウェア・モデルのタスクとは独立に管理するＯＳシミュレータ１２と、その情報をもとに次に動作すべきタスクを起床させるレイザー１４と、その情報をもとに各タスクが自身の実行を停止する自己停止機能１５（１−Ｎ）とを設けている。【選択図】  図２
2004348291.tif 000002
【特許請求の範囲】
【請求項１】
組込みソフトウェアとその制御対象であるハードウェア・デバイスの協調動作を模倣するシミュレーション装置のうち、上記組込みソフトウェアと上記ハードウェア・デバイス・モデルをともに開発用コンピュータ装置自身のプログラムに変換して実行するシミュレーション装置において、
上記組込みソフトウェアの実行中のタスクの優先度に関係なく上記組込みソフトウェアと上記ハードウェア・デバイス・モデルとの並行動作を模倣させるために上記組込みソフトウェアのタスクの状態に基づいて上記組込みソフトウェアのタスクを制御する並行動作模倣手段を備えることを特徴とするシミュレーション装置。
【請求項２】
請求項１記載のシミュレーション装置において、
上記並行動作模倣手段は、
上記組込みソフトウェアのタスクの状態を上記ハードウェア・デバイス・モデルのタスクとは独立に管理するタスク管理手段を備えることを特徴とするシミュレーション装置。
【請求項３】
請求項２記載のシミュレーション装置において、
上記並行動作模倣手段は、
上記タスク管理手段の管理情報をもとに次に動作すべきタスクを起床させるタスク起床手段を備えることを特徴とするシミュレーション装置。
【請求項４】
請求項３記載のシミュレーション装置において、
上記並行動作模倣手段は、
上記タスク起床手段の情報をもとに各タスクが自身の実行を停止する停止手段を備えることを特徴とするシミュレーション装置。
【請求項５】
組込みソフトウェアとその制御対象であるハードウェア・デバイスの協調動作を模倣するシミュレーション装置に対して、上記組込みソフトウェアと上記ハードウェア・デバイス・モデルをともに開発用コンピュータ装置自身のプログラムに変換して実行するシミュレーション方法において、
上記組込みソフトウェアの実行中のタスクの優先度に関係なく上記組込みソフトウェアと上記ハードウェア・デバイス・モデルとの並行動作を模倣させるために上記組込みソフトウェアのタスクの状態に基づいて上記組込みソフトウェアのタスクを制御する並行動作模倣ステップを備えることを特徴とするシミュレーション方法。
【請求項６】
請求項５記載のシミュレーション方法において、
上記並行動作模倣ステップは、
上記組込みソフトウェアのタスクの状態を上記ハードウェア・デバイス・モデルのタスクとは独立に管理するタスク管理ステップを備えることを特徴とするシミュレーション方法。
【請求項７】
請求項６記載のシミュレーション方法において、
上記並行動作模倣ステップは、
上記タスク管理ステップの管理情報をもとに次に動作すべきタスクを起床させるタスク起床ステップを備えることを特徴とするシミュレーション方法。
【請求項８】
請求項７記載のシミュレーション方法において、
上記並行動作模倣ステップは、
上記タスク起床ステップの情報をもとに各タスクが自身の実行を停止する停止ステップを備えることを特徴とするシミュレーション方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば、組込み制御システムの開発に用いられる情報処理装置に関するものである。
【０００２】
【従来の技術】
システム・オン・チップなどの開発では、ハードウェアとソフトウェアをＣ言語プログラムで模倣し、開発マシン上で並列動作させるシミュレーション装置（以下、協調シミュレータと呼ぶ）が広く用いられる。
【０００３】
協調シミュレータには、組込みソフトウェアをターゲットとなるプロセッサで実行される場合と同じ命令列に変換  （コンパイル）し、それをプロセッサのシミュレータが実行する方式の装置（ターゲット・コード・シミュレータ）と、組込みソフトウェアを開発マシンが実行可能な命令列に変換して実行する方式の装置（ネイティブ・コード・シミュレータ）とに大別される。
【０００４】
これらのうち、後者の方式は前者よりも１０〜１００倍の速度でシミュレーションが実行できるという利点があるが、ハードウェアのモデルと組込みソフトウェアを並列動作させるための制御が難しいという問題点がある。
【０００５】
ネイティブ・コード・シミュレータの並列動作の制御方式には、ハードウェアの機能を関数として実装する方法と、ハードウェアの機能を独立したタスクまたはスレッドとして実装する方法の二種類がある。
【０００６】
前者は制御が比較的容易であるが、ハードウェアは関数呼び出しによってしか動作せず、関数からリターンする時点で既に動作が完了しているというモデルにならざるを得ないため、組込みシステムにとって重要なハードウェアとソフトウェアの並列動作の十分な検証が出来ないという欠点がある。後者はハードウェアが独立して動作できるため、ソフトウェアとの並列動作の再現性に優れる。
【０００７】
また、特許文献１には、テキストプログラム中の命令が実行されるタイミングに同期してイベントがスケジュールされ、しかも高い信頼性の論理検証を行うことができるイベント発生装置、ハードウエアシミュレーション装置およびその方法が開示されている。
【０００８】
【特許文献１】
特開平１１−１１０４２９号公報
【０００９】
【発明が解決しようとする課題】
近年、組込みに用いられるソフトウェアが急速に複雑化するにつれ、ソフトウェア自身もリアルタイムＯＳを用いてマルチタスクとして実装されるようになってきた。これにより、協調シミュレータ上でソフトウェア・タスクを一つではなく複数実行させねばならなくなり、かつそのタスク間で優先度の制御や排他制御をしなくてはならなくなった。
【００１０】
ところが従来の、ハードウェアとソフトウェアを独立したタスク、あるいはスレッドとして実行するタイプのネイティブ・コード・シミュレータでは、図３Ａの従来技術のシミュレーションに示すように、ソフトウェアがタスク１（１６−１）、タスク２（１６−２）間で、Ｔ５−Ｔ７期間の３２またはＴ１２−Ｔ１４期間の３５のようにタスク２（１６−２）の優先度を高くまたは低くする優先度の制御や、Ｔ８−Ｔ１０期間の３３のようにタスク２（１６−２）を実行状態（ｗａｋｅ  ｕｐ）として排他制御を行うと、Ｔ６期間またはＴ１３期間のようにタスク２（１６−２）の優先度を高くまたは低くする情報をシミュレータ１２に報告し、Ｔ９期間のようにタスク２（１６−２）を実行状態（ｗａｋｅ  ｕｐ）とする情報をシミュレータ１２に報告することによりシミュレータ１２はこれを認識するため、ハードウェアＨＷ１９のモデルを実行させることができなくなり、３６のようにハードウェアＨＷ１９のモデルまで停止してしまうという問題があり、高速なネイティブ・コード・シミュレータを用いることができなかったという不都合があった。
【００１１】
また、ターゲット装置で使用するリアルタイムＯＳの持つタスク間通信機構やメモリ管理機構のうち、協調シミュレータの機能として実装されていないものについても使用できなかったという不都合があった。
【００１２】
また、特許文献１では、命令が実行されるタイミングに同期してイベントが確実に発生する点が記載されているのみで、ハードウェアとソフトウェアを独立したタスクとして実行するものではなく、本願発明と異なる。
【００１３】
そこで、本発明は、かかる点に鑑みてなされたものであり、ハードウェアのモデルと並列動作することができ、また、特別の機能の実装を必要とすることなく、シミュレーション動作を実行することができるシミュレーション装置を提供することを課題とする。
【００１４】
【課題を解決するための手段】
本発明のシミュレーション装置は、上述した課題を解決するために、組込みソフトウェアの実行中のタスクの優先度に関係なく組込みソフトウェアとハードウェア・デバイス・モデルとの並行動作を模倣させるために組込みソフトウェアのタスクの状態に基づいて組込みソフトウェアのタスクを制御する並行動作模倣手段を備えるものである。
【００１５】
また、本発明のシミュレーション装置における並行動作模倣手段は、ソフトウェアのタスクの状態をハードウェアのタスクとは独立に管理するタスク管理手段と、その情報をもとに次に動作すべきタスクを起床させるタスク起床手段と、その情報をもとに各タスクが自身の実行を停止する停止手段とを設けている。
【００１６】
従って本発明によれば、以下の作用をする。
本発明では、シミュレーション対象の組込みソフトウェアが提供するシステム・コールを共有関数として準備し、その中にタスクの実行順序を管理する機能としてタスク管理手段を付加してある。
【００１７】
組込みソフトウェアのアプリケーション・タスクがシステム・コールを実行したことにより、タスクの実行順序が変わり、タスクのディスパッチが必要となると、停止手段によりアプリケーション・タスクは自ら停止状態となる。
【００１８】
一方、他のタスクを起床させるためのタスクとしてタスク起床手段を用意してあり、このタスク起床手段が次に実行されるべきタスクを起床させる。
【００１９】
【発明の実施の形態】
以下に、本発明の実施の形態について適宜図面を参照しながら説明する。
【００２０】
以下、図面を参照し、本発明の実施の形態について説明する。
図１は、本発明の実施の形態による自己停止と起床のアルゴリズムを示すためのフローチャートであり、図１Ａはアプリケーション・タスク、図１Ｂはレイザーである。
【００２１】
図２は本発明の一実施の形態によるＯＳシミュレーション装置を備えた情報処理装置の構成を示すブロック図である。
図２において、１０はパーソナルコンピュータであり、この上で動作するプログラムである、ハード／ソフト協調シミュレータ１１を有して構成される。ハード／ソフト協調シミュレータ１１は複数のデバイスのハードウェア・モデル１９−１，１９−２・・・１９−Ｎとソフトウェアのモデルをアプリケーション・タスク１６−１，１６−２・・・１６−Ｎとして並列に動作させる機能を持つものである。
【００２２】
このＯＳシミュレーション装置は、組込みソフトウェアであるＯＳの実行中のアプリケーション・タスク１６−１，１６−２・・・１６−Ｎの優先度に関係なく組込みソフトウェアのアプリケーション・タスク１６−１，１６−２・・・１６−Ｎとハードウェア・デバイス・モデル１９−１，１９−２・・・１９−Ｎとの並行動作を模倣させるために組込みソフトウェアのアプリケーション・タスク１６−１，１６−２・・・１６−Ｎの状態に基づいて組込みソフトウェアのアプリケーション・タスク１６−１，１６−２・・・１６−Ｎを制御する並行動作模倣手段を有して構成される。
【００２３】
また、並行動作模倣手段は、ソフトウェアのアプリケーション・タスク１６−１，１６−２・・・１６−Ｎの状態をハードウェア・デバイス・モデル１９−１，１９−２・・・１９−Ｎのタスクとは独立に管理するＯＳシミュレータ１２（タスク管理手段）と、その情報をもとに次に動作すべきタスクを起床させるレイザー１４（タスク起床手段）と、その情報をもとに各タスクが自身の実行を停止する自己停止機構１５−１、１５−２、・・・１５−Ｎ（停止手段）とを設けている。なお、オブジェクト管理部１７はシミュレーション対象を管理する。
【００２４】
以下、タスクを停止・起床させる動作を示す。
ＯＳシミュレータ１２によりこのハード／ソフト協調シミュレータ１１が実行されると、各タスクは実行可能状態となるが、ソフトウェアのタスクのうち、１４のレイザー（ｒａｉｓｅｒ）のみを実行可能状態とし、その他のアプリケーション・タスク１６−１，１６−２・・・１６−Ｎは停止状態にしておく。これは、図１Ｂにおいて、レイザーが動作を開始する状態である。
【００２５】
システムの初期化が完了すると、レイザー１４は自らが管理するタスク管理情報１７を参照し、次に実行すべきアプリケーション・タスク１６−１を実行可能状態とし、自タスクの実行を中断する。これは、図１Ａにおいて、アプリケーション・タスクが動作を開始する状態である。本実施の形態では、シミュレーション対象のＯＳ（ｏｐｅｒａｔｉｎｇ  ｓｙｓｔｅｍ）が提供するシステム・コールを共有関数として準備し、その中にタスクの実行順序を管理する機能を付加してある。
【００２６】
これを受けてＯＳシミュレータ１２はディスパッチを行い、各ハードウェア・モデル１９−１，１９−２・・・１９−Ｎを実行した後にタスク１６−１に制御を移す。
【００２７】
アプリケーション・タスク１６−１はハードウェア・モデル１９−１，１９−２・・・１９−Ｎと同等のタスクとしてＯＳシミュレータ１２上で並列動作を行う。これは、図１Ａにおいて、アプリケーション・タスクがステップＳ１でタスク・コンテクストであるか否かを判断においてタスク・コンテクストである動作をする状態、および図１Ｂにおいて、レイザーがステップＳ１１でタスク・コンテクストであるか否かを判断においてタスク・コンテクストである動作をする状態である。
【００２８】
このとき、レイザー１４も並列に動作しているが、レイザー１４はタスク管理情報１７からディスパッチする必要がないことを判断し、すぐに他のアプリケーション・タスク１６−１，１６−２・・・１６−Ｎに制御を明け渡す。これは、図１Ｂにおいて、レイザーがステップＳ１２でディスパッチ許可状態であるか否かを判断においてディスパッチ許可状態であり、ステップＳ１３で実行中のタスクと実行中であるべきタスクは同一であるか否かを判断において実行中のタスクと実行中であるべきタスクは同一である動作をする状態である。またこのとき、図１Ａにおいて、アプリケーション・タスクがステップＳ２でディスパッチ許可状態であるか否かを判断においてディスパッチ許可状態であり、ステップＳ３で実行中であるべきタスクは自分自身であるか否かを判断において実行中であるべきタスクは自分自身である動作をする状態である。
【００２９】
アプリケーション・タスク１６−１がＯＳ−ＡＰＩ（ａｐｐｌｉｃａｔｉｏｎｐｒｏｇｒａｍ  ｉｎｔｅｒｆａｃｅ）１３の実行によって待ち状態になる場合は、タスクＯＳ−ＡＰＩ１３内で自ら停止状態となり、他のアプリケーション・タスク１６−１，１６−２・・・１６−Ｎへ制御を明け渡す。これは、図１Ａにおいて、アプリケーション・タスクがステップＳ２でディスパッチ許可状態であるか否かを判断においてディスパッチ許可状態であり、ステップＳ３で実行中であるべきタスクは自分自身であるか否かを判断において実行中であるべきタスクは自分自身でない動作をする状態であり、ステップＳ４で自タスクを停止状態にする動作をする状態である。アプリケーション・タスクがシステム・コールを実行したことにより、タスクの実行順序が変わり、タスクのディスパッチが必要となると、アプリケーション・タスクは図１ＡのステップＳ４により、自ら停止状態となる。
【００３０】
次にレイザー１４に実行権がまわってくると、レイザー１４はタスク管理情報１７によってディスパッチの必要があることを検知し、タスク１６−２を実行可能状態にする。これは、図１Ｂにおいて、レイザーがステップＳ１４で実行中であるべきタスクを起床する動作をする状態である。またこのとき、図１Ａにおいて、アプリケーション・タスクがステップ５２で起床する動作をする状態である。本実施の形態では他のタスクを起床させるためのタスク（レイズ・タスク）を示すレイザーを用意してあり、このタスクが次に実行されるべきタスクを起床させる。
【００３１】
図３Ａの本発明によるシミュレーションの動作を説明する。
図３Ａに示すように、Ｔ２８−Ｔ３０期間の４３のようにタスク２（１６−２）の優先度を高くするとき、Ｔ２９期間でタスク２（１６−２）は優先度を高くしたことをレイザー１４にのみ報告し、シミュレータ１２には報告しない。これにより、シミュレータ１２はタスク２（１６−２）は優先度を高くしたことを認識していないため、Ｔ３１−Ｔ３２期間でハードウェアＨＷ１９のモデルと並列動作をさせることができる。
【００３２】
また、Ｔ４２−Ｔ４５期間の４５のようにタスク２（１６−２）の優先度を低くするとき、Ｔ４３期間でタスク２（１６−２）は優先度を低くしたことをレイザー１４にのみ報告し、シミュレータ１２には報告しない。これにより、シミュレータ１２はタスク２（１６−２）は優先度を低くしたことを認識していないため、Ｔ４６−Ｔ４７期間でハードウェアＨＷ１９のモデルと並列動作をさせることができる。
【００３３】
また、Ｔ３５−Ｔ３７期間の４４のようにタスク２（１６−２）を実行状態（ｗａｋｅ  ｕｐ）として排他制御を行った場合であっても、Ｔ３８−Ｔ３９期間の４８のようにハードウェアＨＷ１９のモデルと並列動作をさせることができる。なお、実行状態（ｗａｋｅ  ｕｐ）を解除する動作を解除状態（ｓｌｅｅｐ）とする。
【００３４】
これにより、ソフトウェアがタスク間で、タスクの優先度を高くまたは低くする優先度の制御や、排他制御を行った場合であっても、ハードウェアのモデルと並列動作をさせることができ、高速なネイティブ・コード・シミュレータを実現することができる。
【００３５】
図４は、詳細動作を示すフローチャートである。
Ｔ６１期間までシミュレータ１２はハードウェアＨＷ１９のモデルに対するタスク生成６６を行う。Ｔ６１−Ｔ６２期間の５１のようにハードウェアＨＷ１９のモデルはタスク初期化を行い、制御をシミュレータ１２に離す。
【００３６】
Ｔ６２−Ｔ６３期間でシミュレータ１２はレイザー１４に対するタスク生成６７を行う。Ｔ６３−Ｔ６４期間の５２のようにレイザー１４はタスク初期化を行い、シミュレータ１２にタスク１生成要求を行う。
【００３７】
Ｔ６５−Ｔ６６期間でシミュレータ１２はソフトウエアタスク１（１６−１）に対するタスク生成６８を行う。Ｔ６５−Ｔ６６期間の５３のようにソフトウエアタスク１（１６−１）はタスク初期化を行い、シミュレータ１２に自タスクの停止の報告を行う。
【００３８】
Ｔ６７−Ｔ６８期間でハードウェアＨＷ１９のモデルの実行状態の後に、制御をシミュレータ１２に離す。Ｔ６９−Ｔ７０期間でレイザー１４はシミュレータ１２にタスク２生成要求５４を行う。
【００３９】
Ｔ７０−Ｔ７１期間でシミュレータ１２はソフトウエアタスク２（１６−２）に対するタスク生成６９を行う。Ｔ７１−Ｔ７２期間の５５のようにソフトウエアタスク２（１６−２）はタスク初期化を行い、シミュレータ１２に自タスクの停止の報告を行う。
【００４０】
Ｔ７３−Ｔ７４期間でハードウェアＨＷ１９のモデルの実行状態の後に、制御をシミュレータ１２に離す。Ｔ７５−Ｔ７６期間でレイザー１４はシミュレータ１２にタスク１起床要求５６を行う。
【００４１】
Ｔ７７−Ｔ７８期間の５７のようにソフトウエアタスク１（１６−１）はタスク１処理開始を行い、シミュレータ１２に報告を行う。
【００４２】
Ｔ７９−Ｔ８０期間でハードウェアＨＷ１９のモデルの実行状態の後に、制御をシミュレータ１２に離す。
【００４３】
Ｔ８１−Ｔ８２期間でレイザー１４はシミュレータ１２にタスク１処理要求を行う。Ｔ８３−Ｔ８４期間でソフトウエアタスク１（１６−１）はタスク１処理を行い、シミュレータ１２に報告を行う。
【００４４】
Ｔ８５−Ｔ８６期間でハードウェアＨＷ１９のモデルの実行状態の後に、制御をシミュレータ１２に離す。
【００４５】
Ｔ８７−Ｔ８８期間でレイザー１４はシミュレータ１２にタスク１ＯＳ−ＡＰＩ実行要求を行う。Ｔ８９−Ｔ９０期間の５８のようにソフトウエアタスク１（１６−１）はタスク１ＯＳ−ＡＰＩ実行処理を行い、シミュレータ１２に報告を行う。Ｔ９０−Ｔ９１期間の５９のようにソフトウエアタスク１（１６−１）は、シミュレータ１２に自タスクの停止の報告を行う。
【００４６】
Ｔ９２−Ｔ９３期間でレイザー１４はシミュレータ１２にタスク２起床要求６０を行う。Ｔ９４−Ｔ９５期間の６１のようにソフトウエアタスク２（１６−２）はタスク２処理開始を行い、シミュレータ１２に報告を行う。
【００４７】
Ｔ９６−Ｔ９７期間でハードウェアＨＷ１９のモデルの実行状態の後に、制御をシミュレータ１２に離す。
【００４８】
Ｔ９８−Ｔ９９期間でレイザー１４はシミュレータ１２にタスク１処理要求を行う。Ｔ１００−Ｔ１０期間でソフトウエアタスク２（１６−２）はタスク２処理を行い、シミュレータ１２に報告を行う。
【００４９】
Ｔ１０２−Ｔ１０３期間でハードウェアＨＷ１９のモデルの実行状態の後に、制御をシミュレータ１２に離す。
【００５０】
Ｔ１０４−Ｔ１０５期間でレイザー１４はシミュレータ１２にタスク２ＯＳ−ＡＰＩ実行要求を行う。Ｔ１０６−Ｔ１０７期間の６２のようにソフトウエアタスク２（１６−２）はタスク２ＯＳ−ＡＰＩ実行処理を行い、シミュレータ１２に報告を行う。Ｔ１０７−Ｔ１０８期間の６３のようにソフトウエアタスク２（１６−２）は、シミュレータ１２に自タスクの停止の報告を行う。
【００５１】
Ｔ１０９−Ｔ１１０期間でレイザー１４はシミュレータ１２にタスク１起床要求６４を行う。Ｔ１１１−Ｔ１１２期間の６５のようにソフトウエアタスク１（１６−１）はタスク１処理再開を行い、シミュレータ１２に報告を行う。
【００５２】
Ｔ１１３−Ｔ１１４期間でハードウェアＨＷ１９のモデルの実行状態の後に、制御をシミュレータ１２に離す。
【００５３】
Ｔ１１４−Ｔ１１５期間でレイザー１４はシミュレータ１２にタスク１処理要求を行う。Ｔ１１７−Ｔ１１８期間でソフトウエアタスク１（１６−１）はタスク１処理を行い、シミュレータ１２に報告を行う。
【００５４】
これにより、ソフトウエアタスク１（１６−１）およびソフトウエアタスク２（１６−２）による自タスクの停止、およびレイザー１４のソフトウエアタスク１（１６−１）およびソフトウエアタスク２（１６−２）に対するタスクの起床の動作の制御することにより、ソフトウエアタスク１（１６−１）およびソフトウエアタスク２（１６−２）の実行順序の制御を行うことができ、また、ハードウェアＨＷ１９のモデルとソフトウエアタスク１（１６−１）およびソフトウエアタスク２（１６−２）との並列動作をさせることができる。
【００５５】
本発明はこの様な協調シミュレータの上で動作するものであり、協調シミュレータの提供する・自タスクをいったん中断し、他のタスクに制御を明け渡す機能・自タスクを停止状態にする機能・他のタスクを実行可能状態にする機能のみを用いてソフトウエアタスクの優先度に応じた切り替えをシミュレーションできるものであり、ベースとなるシミュレータのタスク管理機能が最小限でよいため、本発明はこの実施の形態にのみ限定されるものではなく、広く応用可能である。
【００５６】
例えば、ＩＴＲＯＮ  ＯＳを代表とする組込みシステムのリアルタイムＯＳはこの発明が要求する機能を備えているため、そこにこの発明を適用することによりリアルタイムＯＳ上で他のリアルタイムＯＳと同等機能のシミュレータを動かすことが可能となる。これは、複数種類のＯＳ用のアプリケーションをひとつのプロセッサ上で動作させることや、複数のマルチタスク・アプリケーションを互いの優先度の干渉を起こさせずにひとつのプロセッサ上で動作させることを可能とし、ソフトウェアの再利用性を大きく高めることができることを意味するものである。
【００５７】
なお、上述した本発明の実施の形態に限らず、本発明の特許請求の範囲を逸脱しない限り、適宜他の構成をとりうることができることは言うまでもない。
【００５８】
【発明の効果】
以上説明したように、本発明によれば、ハードウェア／プロセッサ／マルチタスク・ソフトウェアを含むシステムを高速に機能検証できるという効果を奏する。また、ベースとなるシミュレータやＯＳのシステム・コールを最小限しか用いないため、ソフトウェア資産の流用や組み合わせが容易になるという効果を奏する。
【図面の簡単な説明】
【図１】本発明の実施の形態による自己停止と起床のアルゴリズムを示すためのフローチャートであり、図１Ａはアプリケーション・タスク、図１Ｂはレイザーである。
【図２】本発明の一実施の形態によるＯＳシミュレーション装置を備えた情報処理装置の構成を示すブロック図である。
【図３】動作を示すタイムチャートであり、図３Ａは従来技術によるシミュレーション、図３Ｂは本発明によるシミュレーションである。
【図４】動作を示すタイムチャートである。
【符号の説明】
１０……パーソナルコンピュータ、１１……ハード／ソフト協調シミュレータ、１２……ＯＳシミュレータ、１３……ＯＳ−ＡＰＩ、１４……レイザー、１５……自己停止機能、１６（１−Ｎ）……アプリケーション・タスク、１７……タスク管理部、１８……オブジェクト管理部、１９（１−Ｎ）……ハードウェア・モデル
【図１】
2004348291.tif 000003
【図２】
2004348291.tif 000004
【図３】
2004348291.tif 000005
【図４】
2004348291.tif 000006