(57)【要約】  ＷＤＴ（ＷａｔｃｈＤｏｇ  Ｔｉｍｅｒ）は、一定の時間間隔でカウンタ値を更新する。時間監視部（１６）は、Ｓ／Ｗモジュール（１０）が処理の実行を開始してからの経過時間を計測し、Ｓ／Ｗモジュール（１０）が前記処理を実行しており、Ｓ／Ｗモジュール（１０）が前記処理の実行を開始してからの経過時間が規定の上限時間に達していないという状態が継続している間、ＷＤＴのカウンタ値のリセットを繰り返し要求する。ＷＤＴクリア部（１９）は、時間監視部（１６）からＷＤＴのカウンタ値のリセットが要求される度に、カウンタ値をリセットする。
2017037863.tif 000002
【特許請求の範囲】
【請求項１】
一定の時間間隔でカウンタ値を更新するＷＤＴ（ＷａｔｃｈＤｏｇ  Ｔｉｍｅｒ）と、
ソフトウェアモジュールが処理の実行を開始してからの経過時間を計測し、前記ソフトウェアモジュールが前記処理を実行しており、前記ソフトウェアモジュールが前記処理の実行を開始してからの経過時間が規定の上限時間に達していないという状態が継続している間、前記カウンタ値のリセットを繰り返し要求する時間監視部と、
前記時間監視部から前記カウンタ値のリセットが要求される度に、前記カウンタ値をリセットするＷＤＴクリア部とを有する計算機装置。
【請求項２】
前記時間監視部は、
前記ソフトウェアモジュールが周期処理の実行を開始してからの経過時間を計測し、前記ソフトウェアモジュールが前記周期処理を実行しており、前記ソフトウェアモジュールが前記周期処理の実行を開始してからの経過時間が前記上限時間に達していないという状態が継続している間、前記カウンタ値のリセットを繰り返し要求する請求項１に記載の計算機装置。
【請求項３】
前記時間監視部は、
前記ソフトウェアモジュールが前記周期処理の実行を停止しており、前記ソフトウェアモジュールが前記周期処理の実行を開始してからの経過時間が前記周期処理の処理周期に相当する時間に達していないという状態が継続している間、前記カウンタ値のリセットを繰り返し要求する請求項２に記載の計算機装置。
【請求項４】
一定の時間間隔でカウンタ値を更新するＷＤＴ（ＷａｔｃｈＤｏｇ  Ｔｉｍｅｒ）を有する計算機装置が、
ソフトウェアモジュールが処理の実行を開始してからの経過時間を計測し、前記ソフトウェアモジュールが前記処理を実行しており、前記ソフトウェアモジュールが前記処理の実行を開始してからの経過時間が規定の上限時間に達していないという状態が継続している間、前記カウンタ値をリセットし続ける制御方法。
【請求項５】
一定の時間間隔でカウンタ値を更新するＷＤＴ（ＷａｔｃｈＤｏｇ  Ｔｉｍｅｒ）を有する計算機装置に、
ソフトウェアモジュールが処理の実行を開始してからの経過時間を計測し、前記ソフトウェアモジュールが前記処理を実行しており、前記ソフトウェアモジュールが前記処理の実行を開始してからの経過時間が規定の上限時間に達していないという状態が継続している間、前記カウンタ値のリセットを繰り返し要求する時間監視処理と、
前記時間監視処理から前記カウンタ値のリセットが要求される度に、前記カウンタ値をリセットするＷＤＴクリア処理とを実行させる制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機装置における異常の検出に関する。
【背景技術】
【０００２】
計算機装置における異常の検出方法として、特許文献１には、１つのウォッチドッグタイマを用いて各タスクの異常を検出する方法が開示されている。
特許文献１の方法では、各タスクにおいて正常に処理が終了したときに各タスクに対応するウォッチドッグフラグがセットされる。
また、特許文献１の方法では、タスクの管理処理が行われる度に、ウォッチドッグフラグがすべてセットさせている場合にウォッチドッグタイマがクリアされ、ウォッチドッグフラグが１つでもセットされていない場合にはウォッチドッグタイマがクリアされない。
このようにすることで、特許文献１の方法は、各タスクの処理時間を監視し、計算機装置の異常を検出している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平０５−３４６８７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１の計算機システムでは、各タスクに対応するウォッチドッグフラグをもとにタスクの異常を検出している。
しかしながら、家電製品などの小規模な組込み機器においては、プロセッサの処理性能が低い、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）容量が少ないなどの理由から、１つのタスクで複数のソフトウェアモジュール（以下、Ｓ／Ｗモジュールとも表記する）が実行される場合がある。
しかしながら、特許文献１の方法は、１つのタスクで複数のソフトウェアモジュールが実行されるような実行環境に対応していない。
従って、特許文献１の方法では、ソフトウェアモジュールの単位で異常を検出することはできないという課題がある。【０００５】
本発明は、上記のような課題を解決することを主な目的としており、ソフトウェアモジュールにおける異常を検出することを主な目的とする。
なお、ソフトウェアモジュールは、アプリケーションプログラムの構成要素であり、複数のプログラムをまとめたひとまとまりの機能である。
また、ソフトウェアモジュールは、ソフトウェア部品やソフトウェアコンポーネントとも呼ばれる。
【課題を解決するための手段】
【０００６】
本発明に係る計算機装置は、
一定の時間間隔でカウンタ値を更新するＷＤＴ（ＷａｔｃｈＤｏｇ  Ｔｉｍｅｒ）と、
ソフトウェアモジュールが処理の実行を開始してからの経過時間を計測し、前記ソフトウェアモジュールが前記処理を実行しており、前記ソフトウェアモジュールが前記処理の実行を開始してからの経過時間が規定の上限時間に達していないという状態が継続している間、前記カウンタ値のリセットを繰り返し要求する時間監視部と、
前記時間監視部から前記カウンタ値のリセットが要求される度に、前記カウンタ値をリセットするＷＤＴクリア部とを有する。
【発明の効果】
【０００７】
本発明では、ソフトウェアモジュールが処理の実行を開始してからの経過時間が上限時間に達した場合はＷＤＴがクリアされずにＷＤＴがオーバーフローするため、ソフトウェアモジュールにおける異常を検出することができる。
【図面の簡単な説明】
【０００８】
【図１】実施の形態１に係る計算機システムのハードウェア構成例を示す図。
【図２】実施の形態１に係る計算機装置の機能構成例を示す図。
【図３】実施の形態１に係る時間監視テーブルの例を示す図。
【図４】実施の形態１に係る計算機装置の動作例を示すフローチャート図。
【図５】実施の形態１に係る計算機装置の動作例を示すフローチャート図。
【図６】実施の形態１に係る時間監視部の動作例を示すフローチャート図。
【図７】実施の形態１に係るＷＤＴクリア部の動作例を示すフローチャート図。
【発明を実施するための形態】
【０００９】
実施の形態１．
＊＊＊構成の説明＊＊＊
図１は、実施の形態１に係る計算機システム１のハードウェア構成例を示す。
つまり、図１は、計算機システム１を動作させるための物理ハードウェアを示す。
【００１０】
図１の例では、計算機装置１００にセンサ５、モータ６などのデバイスが接続されている。
計算機装置１００は、例えば、ＭＰＵ（Ｍｉｃｒｏ−Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２、メモリ３、ＷＤＴ（ＷａｔｃｈＤｏｇ  Ｔｉｍｅｒ）４で構成される。
【００１１】
ＷＤＴ４は、プログラムの暴走を検出するために使用されるタイマである。
ＷＤＴ４は、一定の時間間隔でカウンタ値を更新する。
そして、ＷＤＴ４のカウンタ値がオーバーフローした場合に、ＷＤＴ４がＭＰＵ２に割込みやリセットを発生させる。
この結果、ＭＰＵ２は、プログラムの暴走が発生したと判断することができる。
プログラムは、ＷＤＴ４のカウンタ値がオーバーフローしないようにカウンタ値をゼロにリセットする必要がある。
ＷＤＴ４のカウンタ値をゼロにリセットすることを「ＷＤＴをクリアする」、もしくは「ＷＤＴのクリア」という。
【００１２】
メモリ３は、例えば、ＲＡＭである。
メモリ３には、図２を参照して後述するアプリケーションプログラム７（以下、単にアプリケーション７という）が格納されている。
アプリケーション７には、図２を参照して後述するＳ／Ｗモジュール１０が複数含まれている。
また、アプリケーション７には、図２を参照して後述する処理要求部１１及び処理受付部１２も含まれている。
また、メモリ３には、図２を参照して後述する時間監視部１６及びＷＤＴクリア部１９が格納されている。
更に、メモリ３には、図２及び図３を参照して後述する時間監視テーブル１７が格納されている。
また、メモリ３には、図２を参照して後述するＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）１３も格納されている。
【００１３】
プロセッサであるＭＰＵ２は、ＯＳ１３の少なくとも一部をメモリ３から読み出して実行する。
また、ＭＰＵ２は、アプリケーション７の複数のＳ／Ｗモジュール１０をメモリ３から読み出して実行する。
また、ＭＰＵ２は、処理要求部１１、処理受付部１２、時間監視部１６及びＷＤＴクリア部１９をメモリ３から読み出して実行する。
【００１４】
時間監視部１６及びＷＤＴクリア部１９は、「サーキットリー」で提供してもよい。
「サーキットリー」は、ＭＰＵ２だけでなく、ロジックＩＣ又はＧＡ（Ｇａｔｅ  Ａｒｒａｙ）又はＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）又はＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）といった他の種類の処理回路をも包含する概念である。
また、時間監視部１６及びＷＤＴクリア部１９を「回路」又は「工程」又は「手順」又は「処理」として捉えることも可能である。
【００１５】
また、計算機装置１００に、ハードディスク装置等の二次記憶装置、マウス、キーボード等の入力装置、ディスプレイ装置等の出力装置、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）等の通信装置が含まれていてもよい。
【００１６】
図２は、実施の形態１に係る計算機装置１００の機能構成例を示す。
【００１７】
図２において、ＯＳ１３は計算機装置１００内でタスクの実行管理を行う。
また、ＯＳ１３は、タスク間のデータ通信機能として例えばメッセージバッファを提供する。
【００１８】
アプリケーション７は、計算機システム１が提供する機能を実現するソフトウェアであり、単一もしくは複数のタスク（ＯＳの実行単位）で構成される。
更に、タスクは単一もしくは複数のＳ／Ｗモジュール１０で構成される。
アプリケーション７では、複数のＳ／Ｗモジュール１０がお互いの処理を呼び出しあいながら、計算機システム１が提供する機能を実現する。
【００１９】
処理要求側タスク８は、Ｓ／Ｗモジュール１０が他のＳ／Ｗモジュール１０を呼び出す、つまり、処理を要求する側のタスクである。
処理受付側タスク９は、他のＳ／Ｗモジュール１０から呼び出される、つまり、要求された処理を実行する側のタスクである。
処理要求側タスク８と処理受付側タスク９は、後述する最高優先度タスク１４と最低優先度タスク１５の中間の優先度を持つタスクである。
処理要求側タスク８と処理受付側タスク９は、それぞれ複数存在していてもよい。
【００２０】
処理要求部１１は、Ｓ／Ｗモジュール１０からの処理要求を内容とするメッセージを生成する。
そして、処理要求部１１は、生成したメッセージを、ＯＳ１３の提供機能であるメッセージバッファを介して、処理受付側タスク９に通知する。
【００２１】
処理受付部１２は、処理要求部１１から通知されたメッセージの内容に基づき、要求された処理を実行する。
【００２２】
最高優先度タスク１４は、計算機装置１００内で最も優先度の高いタスクである。
最低優先度タスク１５は、計算機装置１００内で最も優先度の低いタスクである。
【００２３】
時間監視部１６は、最高優先度タスク１４内で動作する。
時間監視部１６は、Ｓ／Ｗモジュール１０が処理の実行を開始してからの経過時間を計測する。
そして、時間監視部１６は、Ｓ／Ｗモジュール１０が処理を実行しており、処理の実行開始からの経過時間が規定の上限時間に達していないという状態が継続している間、カウンタ値のリセットをＷＤＴクリア部１９に繰り返し要求する。
Ｓ／Ｗモジュール１０が処理の実行を開始してからの経過時間を処理時間ともいう。
また、時間監視部１６は、Ｓ／Ｗモジュール１０が周期処理の実行を開始してからの経過時間を計測する。
そして、時間監視部１６は、Ｓ／Ｗモジュール１０が周期処理の実行を停止しており、周期処理の実行開始からの経過時間が周期処理の処理周期に相当する時間に達していないという状態が継続している間、カウンタ値のリセットをＷＤＴクリア部１９に繰り返し要求する。
Ｓ／Ｗモジュール１０が周期処理の実行を開始してからの経過時間を周期時間ともいう。
なお、時間監視部１６により行われる処理は、時間監視処理に相当する
【００２４】
時間監視テーブル１７には、Ｓ／Ｗモジュール１０ごとに最大処理時間、処理周期等が登録されており、時間監視部１６から読み書きされる。
時間監視テーブル１７の詳細は後述する。
【００２５】
ＷＤＴフラグ１８は、１と０のうちのいずれかの値をとる。
ＷＤＴフラグ１８の値が１の場合は、ＷＤＴ４のクリアを意味する。
つまり、時間監視部１６がＷＤＴ４のカウンタ値のリセットを要求する場合は、時間監視部１６によりＷＤＴフラグ１８の値が１にセットされる。
【００２６】
ＷＤＴクリア部１９は、ＷＤＴフラグ１８の値が１である場合、すなわち、時間監視部からＷＤＴ４のカウンタ値のリセットが要求された場合に、ＷＤＴ４のクリアを実施する。
ＷＤＴクリア部１９は、ＷＤＴ４ごとに決められた方法でＷＤＴ４のクリアを実施する。
ＷＤＴ４のクリア方法としては、ＷＤＴクリア用のＩ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）アドレスに既定の値を書き込むという方法がある。
【００２７】
次に、時間監視テーブル１７の例を図３に示す。
【００２８】
時間監視テーブル１７は、Ｓ／Ｗモジュール１０ごとに用意される。
そして、各時間監視テーブル１７では、対応するＳ／Ｗモジュール１０で実行される周期処理ごとに、最大処理時間と処理周期が定義される。
図３の例では、周期処理として、処理Ｘ及び処理Ｙが記述されている。
最大処理時間は、処理時間として許容される上限時間であり、他の優先度の高いタスクの処理時間も含まれている。
処理周期は、周期処理が実行されてから当該周期処理が再度実行されるまでの時間である。
また、時間監視テーブル１７には、Ｓ／Ｗモジュール１０内の処理ごとに実行状態フラグと処理時間カウンタと周期時間カウンタを保持することができる。
実行状態フラグは、当該Ｓ／Ｗモジュール１０内の処理が実行中であるか停止中であるかを示すフラグである。
実行状態フラグは、「実行中」及び「停止中」のうちのいずれかの値をとる。
処理が実行中であれば、実行状態フラグは「実行中」の値をとり、処理が停止中であれば、実行状態フラグは「停止中」の値をとる。
処理時間カウンタは、処理時間を計測するためのカウンタである。
つまり、処理時間カウンタは、Ｓ／Ｗモジュールが周期処理を開始してからの経過時間を計測する。
周期時間カウンタは、周期時間を計測するためのカウンタである。
つまり、周期時間カウンタは、Ｓ／Ｗモジュールが周期処理を開始してからの経過時間を計測する。
図３の例では、処理時間カウンタ及び周期時間カウンタという２つのカウンタを設けているが、いずれか一方のみを設けるようにしてもよい。
【００２９】
＊＊＊動作の説明＊＊＊
次に、図４〜図７を参照して、本実施の形態に係る計算機装置１００の動作例を説明する。
図４及び図５は、計算機装置１００の動作例を示すフローチャート図である。
図６は、時間監視部１６の動作例を示すフローチャート図である。
図７は、ＷＤＴクリア部１９の動作例を示すフローチャート図である。
なお、以下の説明において（１）〜（１１）は、図２に示す（１）〜（１１）を指す。
また、図４〜図７に示す手順は、制御方法及び制御プログラムの例に相当する。
【００３０】
まず、処理要求側タスク８のＳ／ＷモジュールＡが処理要求部１１に対して（１）処理要求（Ｓ／ＷモジュールＢ、処理Ｙ）を行う（Ｓ１０１）。
処理要求部１１は、Ｓ／ＷモジュールＡにより指定されたＳ／ＷモジュールＢから、処理受付側タスク９を特定する（Ｓ１０２）。
更に、処理要求部１１は、当該処理受付側タスク９が使用するメッセージバッファを特定し（Ｓ１０３）、特定したメッセージバッファを介して（２）処理要求（処理Ｙ）のメッセージを処理受付部１２に送信する（Ｓ１０４）。
【００３１】
処理受付部１２は、時間監視部１６に（３）メッセージバッファを介して処理開始通知を送信する（Ｓ１０５）。
また、処理受付部１２は、Ｓ／ＷモジュールＢに、要求された処理である処理Ｙの実行を指示し（Ｓ１０７）、Ｓ／ＷモジュールＢが処理Ｙを実行する（Ｓ１０８）。
処理Ｙの（５）処理完了後、処理受付部１２は、メッセージバッファを介して時間監視部１６に（６）処理完了通知を送信する（Ｓ１０９）。
【００３２】
時間監視部１６は、（３）処理開始通知を受信した場合に、実行状態フラグを「実行中」にする（Ｓ１０６）。
また、時間監視部１６は、（６）処理完了通知を受信した場合に、実行状態フラグを「停止中」にする（Ｓ１１０）。
また、時間監視部１６は、（７）周期タイマ割込みにて起動される（図６のＳ２０１）。
本実施の形態では、時間監視部１６は１０ｍｓごとに起動される。
そして、時間監視部１６は、周期時間カウンタを加算する（Ｓ２０２）。
すなわち、時間監視部１６は１０ｍｓごとに周期時間カウンタを加算する。
また、実行状態フラグの値が「実行中」である場合は（Ｓ２０３でＹＥＳ）、時間監視部１６は処理時間カウンタも加算する（Ｓ２０４）。
すなわち、時間監視部１６は１０ｍｓごとに処理時間カウンタを加算する。
【００３３】
次に、時間監視部１６は、（８）時間監視テーブル１７を参照して、ＷＤＴクリアを要求するか否かを判定する（Ｓ２０５）。
より具体的には、時間監視部１６は、時間監視テーブル１７に登録されている処理のすべてについて、実行状態フラグの値が「実行中」かつ処理時間カウンタで計測されている処理時間が最大処理時間を超えていない場合、もしくは実行状態フラグの値が「停止中」かつ周期時間カウンタで計測されている周期時間が処理周期に相当する時間を超えていない場合にのみ（Ｓ２０５でＹＥＳ）、（９）ＷＤＴクリア要求を行う。
時間監視部１６は、ＷＤＴフラグ１８の値を１にすることによって、ＷＤＴクリア要求を行う（Ｓ２０６）。
つまり、時間監視部１６は、Ｓ／Ｗモジュール１０が周期処理の実行を開始してからの経過時間を計測し、Ｓ／Ｗモジュール１０が周期処理を実行しており、周期処理の実行開始からの経過時間が最大処理時間に達していないという状態が継続している間、ＷＤＴ４のカウンタ値のリセットを繰り返し要求する。
また、時間監視部１６は、Ｓ／Ｗモジュール１０が周期処理の実行を停止しており、周期処理の実行開始からの経過時間が周期処理の処理周期に相当する時間に達していないという状態が継続している間、ＷＤＴ４のカウンタ値のリセットを繰り返し要求する。
なお、処理時間カウンタ及び周期時間カウンタは、（３）処理開始通知時にゼロにクリアされる（Ｓ１１１、Ｓ１１２）。
【００３４】
このように、時間監視部１６は、起動後に処理受付部１２から処理開始通知を受信した場合に、実行状態フラグの値を「実行中」にする。
そして、時間監視部１６は、処理時間カウンタ及び周期時間カウンタをリセットする。
そして、次に周期タイマ割込みにて起動された際に、時間監視部１６は、周期時間カウンタを１０ｍｓ分加算する。
更に、時間監視部１６は、実行状態フラグの値を参照し、実行状態フラグの値が「実行中」であれば、時間監視部１６は、処理時間カウンタを１０ｍｓ分加算する。
また、時間監視部１６は、起動後に処理受付部１２から処理完了通知を受信した場合に、実行状態フラグの値を「停止中」にする。
実行状態フラグの値が「実行中」になってから「停止中」になるまでの間は、処理時間が最大処理時間を超えていなければ、時間監視部１６は、ＷＤＴフラグ１８の値を１にすることによって、ＷＤＴクリア要求を行う。
実行状態フラグの値が「実行中」であって、処理時間が最大処理時間を超えている場合は、時間監視部１６は、ＷＤＴフラグ１８の値を１に変更しないので、ＷＤＴフラグ１８の値は０のままであり、ＷＤＴオーバーフローが発生して、Ｓ／Ｗモジュール１０の異常が検出される。
一方、実行状態フラグの値が「停止中」になった後は、周期時間が処理周期に相当する時間を超えていなければ、時間監視部１６は、ＷＤＴフラグ１８の値を１にすることによって、ＷＤＴクリア要求を行う。
実行状態フラグの値が「停止中」であって、周期時間が処理周期に相当する時間を超えている場合は、時間監視部１６は、ＷＤＴフラグ１８の値を１に変更しないので、ＷＤＴフラグ１８の値は０のままであり、ＷＤＴオーバーフローが発生して、Ｓ／Ｗモジュール１０の異常が検出される。
【００３５】
ＷＤＴクリア部１９は、最低優先度のタスクにて実行される（図７のＳ３０１）。
ＷＤＴクリア部１９は、（１０）ＷＤＴフラグ１８を参照し、ＷＤＴフラグ１８の値が１の場合のみ（Ｓ３０２でＹＥＳ）、（１１）ＷＤＴ４をクリアし（Ｓ３０３）、ＷＤＴフラグ１８の値を０にする（Ｓ３０４）。
【００３６】
＊＊＊実施の形態の効果＊＊＊
以上のように、本実施の形態によれば、複数のＳ／Ｗモジュールが単一もしくは複数のタスクで実行された場合に、最大処理時間までに全ての処理を完了できなかったＳ／Ｗモジュールが存在すれば、ＷＤＴ割込みやリセットが発生するので、Ｓ／Ｗモジュールの異常を検出することができる。
また、本実施の形態によれば、周期処理を行うＳ／Ｗモジュールが周期処理を処理周期に従って実行できていないことを検出することができる。
さらに、Ｓ／Ｗの誤動作により、割込みが発生しなくなったり、最高優先度タスクが動作できないようになったり、最低優先度タスクが動作できないような高負荷になったりした場合も検出することができる。
【００３７】
＊＊＊付記＊＊＊
なお、最高優先度タスク１４は計算機装置１００内で最も優先度の高いタスクでなくてもよい。
最高優先度タスク１４が処理要求側タスク８と処理受付側タスク９よりも高い優先度であれば、上記の効果が得られる。
また、最低優先度タスク１５は計算機装置１００内で最も優先度の低いタスクでなくてもよい。
最低優先度タスク１５が処理要求側タスク８と処理受付側タスク９よりも低い優先度であれば、上記の効果が得られる。
【符号の説明】
【００３８】
１  計算機システム、２  ＭＰＵ、３  メモリ、４  ＷＤＴ、５  センサ、６  モータ、７  アプリケーション、８  処理要求側タスク、９  処理受付側タスク、１０  Ｓ／Ｗモジュール、１１  処理要求部、１２  処理受付部、１３  ＯＳ、１４  最高優先度タスク、１５  最低優先度タスク、１６  時間監視部、１７  時間監視テーブル、１８  ＷＤＴフラグ、１９  ＷＤＴクリア部、１００  計算機装置。
【図１】
2017037863.tif 000003
【図２】
2017037863.tif 000004
【図３】
2017037863.tif 000005
【図４】
2017037863.tif 000006
【図５】
2017037863.tif 000007
【図６】
2017037863.tif 000008
【図７】
2017037863.tif 000009
【手続補正書】
【提出日】平成28年5月27日(2016.5.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
一定の時間間隔でカウンタ値を更新するＷＤＴ（ＷａｔｃｈＤｏｇ  Ｔｉｍｅｒ）と、
処理要求側タスクから要求された処理を受け付ける処理受付側タスクに含まれる複数のソフトウェアモジュールについて、ソフトウェアモジュールごとに、該当するソフトウェアモジュールが前記処理要求側タスクから要求された処理の実行を開始してからの経過時間を計測し、ソフトウェアモジュールごとに、該当するソフトウェアモジュールが前記処理要求側タスクから要求された処理を実行しており、該当するソフトウェアモジュールが前記処理要求側タスクから要求された処理の実行を開始してからの経過時間が規定の上限時間に達していないという状態が継続している間、前記カウンタ値のリセットを繰り返し要求する時間監視部と、
前記時間監視部から前記カウンタ値のリセットが要求される度に、前記カウンタ値をリセットするＷＤＴクリア部とを有する計算機装置。
【請求項２】
前記時間監視部は、
ソフトウェアモジュールごとに、該当するソフトウェアモジュールが前記処理要求側タスクから要求された周期処理の実行を開始してからの経過時間を計測し、ソフトウェアモジュールごとに、該当するソフトウェアモジュールが前記処理要求側タスクから要求された周期処理を実行しており、該当するソフトウェアモジュールが前記処理要求側タスクから要求された周期処理の実行を開始してからの経過時間が前記上限時間に達していないという状態が継続している間、前記カウンタ値のリセットを繰り返し要求する請求項１に記載の計算機装置。
【請求項３】
前記時間監視部は、
ソフトウェアモジュールごとに、該当するソフトウェアモジュールが前記処理要求側タスクから要求された周期処理の実行を停止しており、該当するソフトウェアモジュールが前記処理要求側タスクから要求された周期処理の実行を開始してからの経過時間が前記処理要求側タスクから要求された周期処理の処理周期に相当する時間に達していないという状態が継続している間、前記カウンタ値のリセットを繰り返し要求する請求項２に記載の計算機装置。
【請求項４】
一定の時間間隔でカウンタ値を更新するＷＤＴ（ＷａｔｃｈＤｏｇ  Ｔｉｍｅｒ）を有する計算機装置が、
処理要求側タスクから要求された処理を受け付ける処理受付側タスクに含まれる複数のソフトウェアモジュールについて、ソフトウェアモジュールごとに、該当するソフトウェアモジュールが前記処理要求側タスクから要求された処理の実行を開始してからの経過時間を計測し、ソフトウェアモジュールごとに、該当するソフトウェアモジュールが前記処理要求側タスクから要求された処理を実行しており、該当するソフトウェアモジュールが前記処理要求側タスクから要求された処理の実行を開始してからの経過時間が規定の上限時間に達していないという状態が継続している間、前記カウンタ値をリセットし続ける制御方法。
【請求項５】
一定の時間間隔でカウンタ値を更新するＷＤＴ（ＷａｔｃｈＤｏｇ  Ｔｉｍｅｒ）を有する計算機装置に、
処理要求側タスクから要求された処理を受け付ける処理受付側タスクに含まれる複数のソフトウェアモジュールについて、ソフトウェアモジュールごとに、該当するソフトウェアモジュールが前記処理要求側タスクから要求された処理の実行を開始してからの経過時間を計測し、ソフトウェアモジュールごとに、該当するソフトウェアモジュールが前記処理要求側タスクから要求された処理を実行しており、該当するソフトウェアモジュールが前記処理要求側タスクから要求された処理の実行を開始してからの経過時間が規定の上限時間に達していないという状態が継続している間、前記カウンタ値のリセットを繰り返し要求する時間監視処理と、
前記時間監視処理から前記カウンタ値のリセットが要求される度に、前記カウンタ値をリセットするＷＤＴクリア処理とを実行させる制御プログラム。
【手続補正書】
【提出日】平成28年9月12日(2016.9.12)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
一定の時間間隔でカウンタ値を更新するＷＤＴ（ＷａｔｃｈＤｏｇ  Ｔｉｍｅｒ）と、
処理要求側タスクから要求された処理を受け付ける処理受付側タスクを構成する複数のソフトウェアモジュールについて、ソフトウェアモジュールごとに、該当するソフトウェアモジュールが前記処理要求側タスクから要求された処理の実行を開始してからの経過時間を計測し、ソフトウェアモジュールごとに、該当するソフトウェアモジュールが前記処理要求側タスクから要求された処理を実行しており、該当するソフトウェアモジュールが前記処理要求側タスクから要求された処理の実行を開始してからの経過時間が規定の上限時間に達していないという状態が継続している間、前記カウンタ値のリセットを繰り返し要求する時間監視部と、
前記時間監視部から前記カウンタ値のリセットが要求される度に、前記カウンタ値をリセットするＷＤＴクリア部とを有する計算機装置。
【請求項２】
前記時間監視部は、
ソフトウェアモジュールごとに、該当するソフトウェアモジュールが前記処理要求側タスクから要求された周期処理の実行を開始してからの経過時間を計測し、ソフトウェアモジュールごとに、該当するソフトウェアモジュールが前記処理要求側タスクから要求された周期処理を実行しており、該当するソフトウェアモジュールが前記処理要求側タスクから要求された周期処理の実行を開始してからの経過時間が前記上限時間に達していないという状態が継続している間、前記カウンタ値のリセットを繰り返し要求する請求項１に記載の計算機装置。
【請求項３】
前記時間監視部は、
ソフトウェアモジュールごとに、該当するソフトウェアモジュールが前記処理要求側タスクから要求された周期処理の実行を停止しており、該当するソフトウェアモジュールが前記処理要求側タスクから要求された周期処理の実行を開始してからの経過時間が前記処理要求側タスクから要求された周期処理の処理周期に相当する時間に達していないという状態が継続している間、前記カウンタ値のリセットを繰り返し要求する請求項２に記載の計算機装置。
【請求項４】
一定の時間間隔でカウンタ値を更新するＷＤＴ（ＷａｔｃｈＤｏｇ  Ｔｉｍｅｒ）を有する計算機装置が、
処理要求側タスクから要求された処理を受け付ける処理受付側タスクを構成する複数のソフトウェアモジュールについて、ソフトウェアモジュールごとに、該当するソフトウェアモジュールが前記処理要求側タスクから要求された処理の実行を開始してからの経過時間を計測し、ソフトウェアモジュールごとに、該当するソフトウェアモジュールが前記処理要求側タスクから要求された処理を実行しており、該当するソフトウェアモジュールが前記処理要求側タスクから要求された処理の実行を開始してからの経過時間が規定の上限時間に達していないという状態が継続している間、前記カウンタ値をリセットし続ける制御方法。
【請求項５】
一定の時間間隔でカウンタ値を更新するＷＤＴ（ＷａｔｃｈＤｏｇ  Ｔｉｍｅｒ）を有する計算機装置に、
処理要求側タスクから要求された処理を受け付ける処理受付側タスクを構成する複数のソフトウェアモジュールについて、ソフトウェアモジュールごとに、該当するソフトウェアモジュールが前記処理要求側タスクから要求された処理の実行を開始してからの経過時間を計測し、ソフトウェアモジュールごとに、該当するソフトウェアモジュールが前記処理要求側タスクから要求された処理を実行しており、該当するソフトウェアモジュールが前記処理要求側タスクから要求された処理の実行を開始してからの経過時間が規定の上限時間に達していないという状態が継続している間、前記カウンタ値のリセットを繰り返し要求する時間監視処理と、
前記時間監視処理から前記カウンタ値のリセットが要求される度に、前記カウンタ値をリセットするＷＤＴクリア処理とを実行させる制御プログラム。
【国際調査報告】
2017037863.tif 000010
2017037863.tif 000011