(57)【要約】【課題】既存の制御プログラム構造を改変することなく，システム内で発生した擾乱を，処理プログラムレベルで高速かつ確実に検出することを可能とする。【解決手段】擾乱発生検出プログラム１１の実行優先順位設定部１１０が，擾乱発生検出プログラムの実行優先順位を設定し，時間監視部１１１が，擾乱検出ポイント時間ごとに実行状態となるように擾乱検出ポイント時間をタイマに設定して時間監視し，擾乱検証部１１２が，時間監視部１１１による時間監視結果に基づいて，再度実行状態になるまでの時間が所定の擾乱検出リミット時間を超えたかどうかにより擾乱が発生したかどうかを判断し，擾乱の発生を検出した場合に，空間ダンプ処理部１１３が，空間ダンプ処理を行い，ダンプ情報格納手段２００にダンプ情報を格納する。【選択図】図１
2005316806.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵ資源を不用意に使用し続けるプログラムである擾乱プログラムによる擾乱の発生を検出する擾乱発生検出プログラムであって，
当該擾乱発生検出プログラムの実行優先順位を，擾乱の検出対象となるプログラムの実行優先順位以上の値に設定する実行優先順位設定手順と，
所定の擾乱検出ポイント時間ごとに当該擾乱発生検出プログラムがＣＰＵ実行制御権を得て実行状態となるように，擾乱検出ポイント時間をタイマに設定し，タイマ割込み待ち状態で時間監視を行う時間監視手順と，
タイマ割込みによって当該擾乱発生検出プログラムが実行状態となったときに，前記時間監視を開始してから前記実行状態となるまでの時間と，所定の擾乱検出リミット時間との比較を行い，前記時間監視を開始してから前記実行状態となるまでの時間が，所定の擾乱検出リミット時間を超えていれば，擾乱が発生したと判断する擾乱検証手順とを，
コンピュータに実行させるための擾乱発生検出プログラム。
【請求項２】
請求項１記載の擾乱発生検出プログラムにおいて，
前記擾乱検証手順において擾乱が発生したと判断された場合に，当該コンピュータの所定のメモリ領域の情報を外部記憶装置に出力する空間ダンプ処理手順を，
コンピュータに実行させるためのプログラムを含む擾乱発生検出プログラム。
【請求項３】
請求項１または請求項２記載の擾乱発生検出プログラムにおいて，
前記実行優先順位，前記擾乱検出ポイント時間および前記擾乱検出リミット時間が，当該擾乱発生検出プログラムの起動時パラメタで与えられる
ことを特徴とする擾乱発生検出プログラム。
【請求項４】
前記擾乱発生検出プログラムは，オペレーティング・システムを構成する制御プログラムとは別の処理プログラムとして構成されたものである
ことを特徴とする請求項１，請求項２または請求項３記載の擾乱発生検出プログラム。
【請求項５】
請求項１から請求項４までのいずれか１項に記載の擾乱発生検出プログラムを用いた擾乱発生検出方法であって，
マルチプロセッサシステムにおける擾乱の発生を検出する場合に，前記擾乱発生検出プログラムを，マルチプロセッサシステムを構成するＣＰＵごとに割り当て，それぞれ特定のＣＰＵでのみ動作させる
ことを特徴とする擾乱発生検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，計算機システム内の問題プログラムを検出する擾乱発生検出技術に関し，特に，既存の制御プログラム構造を改変することなく，システム内で発生した擾乱を高速かつ確実に検出する擾乱発生検出プログラムおよび擾乱発生検出方法に関する。
【背景技術】
【０００２】
オンライン業務（ＡＴＭ制御など）では，アプリケーションプログラムにおいてＣＰＵ資源を使用／走行して，目的とする処理を実現しているが，制御プログラム構造の不備または他のアプリケーションプログラムの不備等により，そのＣＰＵ資源を不用意に使用し続け，アプリケーションプログラムにてＣＰＵ資源が使用できず，オンライン停止となる重大問題が発生することがある。このように，ＣＰＵ資源を不用意に使用し続け，ＣＰＵの実行制御権を他のプログラムに渡さないプログラムのことを「擾乱プログラム」と呼ぶ。
【０００３】
ここで，擾乱とは，ＣＰＵ資源の使用が必要なアプリケーションプログラムにＣＰＵの実行制御権（ＣＰＵ資源の使用権）が渡されるタイミングが遅れることをいう。擾乱が発生する原因として，実行優先度の高いプログラムが割込みを発生させずにＣＰＵ資源を長時間使用することが挙げられる。割込みを発生させずにＣＰＵ資源を使用し続けるプログラム構造のときに擾乱が発生することになる。
【０００４】
また，割込みが禁止されていない場合でも，複数の多くのプログラムが無駄にループしている場合には，ＣＰＵ資源の使用が必要なアプリケーションプログラムにＣＰＵの実行制御権が渡されるタイミングが遅れ，擾乱が発生することもある。
【０００５】
擾乱が発生した後に，擾乱プログラムを特定（検出）するための調査を実施しようとしても，調査資料としてその時点の情報は既に存在していないことが多い。このため，従来は，予想をたてて擾乱プログラムを検出する手法をとっていた。
【０００６】
また，制御プログラムに組み込んだ機能により擾乱の発生を検出する従来技術としては，下記の特許文献１に記載されたものがあり，この特許文献１には，スレッド制御装置にてカウンタ機構を設け，ランダムな監視時間にて，カウンタ値の検査を行い，異常動作をするスレッドを検出する技術が記載されている。
【特許文献１】特開２０００−１０８００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上記の予想をたてて擾乱プログラムを検出する手法をとる従来技術では，多大な期間・工数を要し，また問題解決に至らないことがある。
【０００８】
また，上記特許文献１に記載された従来技術では，制御プログラム（ＯＳ）の改変を基本とした検出方式を用いて問題解決を図っており，既存の制御プログラムを用いている場合には，アプリケーションプログラムの開発者側で対処することはできない。また，既存の制御プログラムを改変する場合，制御プログラム自体の再インストールを含めて，その影響が大きく，工数／期間に多大な工数が費やされるという問題がある。
【０００９】
本発明は，上記従来技術の問題点を解決し，既存の制御プログラム構造を改変することなく，システム内で発生した擾乱を高速かつ確実に検出することができる技術を提供することを目的とする。
【課題を解決するための手段】
【００１０】
長時間割込みを発生させずにＣＰＵ資源を使用し続ける構造を持つ擾乱プログラムを検出するためには，擾乱プログラムにおいて１つの処理を終え，割込み（実行プログラムの切り替え）が発生した時，本来，ＣＰＵ資源を使用しなければならない他プログラムが動作できなかった状態かどうかを検出する必要がある。
【００１１】
そのため，本発明の擾乱発生検出プログラムは，自己の実行優先順位を高く設定した上で現在時刻Ｘ１を取得し，タイマ割込み時間を設定して時間監視を行い，タイマ割込みによって実行状態となった時に取得した時刻Ｘ２と時刻Ｘ１との差が，擾乱発生検出プログラムの実行周期にある余裕を持たせた時間である擾乱検出リミット時間を超えているかを検証することによって，擾乱発生を検出する。
【００１２】
本発明の擾乱発生検出処理の前提として，以下のシステム環境設定を事前に行う。
（１）擾乱発生検出プログラムに対し，複数のＣＰＵがある場合に各ＣＰＵ資源毎に実行可能とするＣＰＵ割り当て設定を行う。また，空間追い出し（ページアウト）禁止走行モードを設定する。
【００１３】
各ＣＰＵ資源毎に実行可能とするＣＰＵ割り当て設定を行うのは，マルチプロセッサ制御の場合，擾乱発生検出プログラムを個々のＣＰＵ資源毎に実行可能にしないと，例えば１つのＣＰＵの実行制御権を持っている擾乱プログラムがＣＰＵの実行制御権を擾乱発生検出プログラムに渡さなくても，擾乱発生検出プログラムは他のＣＰＵ上での走行によって実行できるため，擾乱発生を検出できなくなるからである。
【００１４】
この複数の各ＣＰＵ資源毎に実行可能とするＣＰＵ割り当て設定およびページアウト禁止走行モードの設定は，例えば，プログラム毎の環境設定パラメタとして設定する。
（２）また，擾乱発生検出プログラムの起動時パラメタにより，擾乱検出ポイント時間，擾乱検出リミット時間，実行優先順位を設定する。
【００１５】
擾乱検出ポイント時間とは，擾乱発生検出プログラムの実行周期であり，言い換えると，各プログラムへのＣＰＵ資源の割り当て時間に相当する時間である。
【００１６】
擾乱検出リミット時間とは，擾乱検出ポイント時間にある余裕を持たせた時間であり，擾乱発生検出プログラムが，時間監視開始時刻から実行状態となった時刻までの時間がこの時間を超えていたときに擾乱が発生したと判断する時間である。
【００１７】
この起動時パラメタの設定は，例えば，ジョブ制御文のＥＸＥＣ文で［ＰＡＲＭ＝‘ｘｘｘｘｘ，ｙｙｙｙｙ，００ｐｐｐ’］の各パラメタを指定することにより行われる。擾乱検出ポイント時間をＡミリ秒（ｍｓ），擾乱検出リミット時間をＢミリ秒（ｍｓ），実行優先順位をＣとすると，例えば，［ＰＡＲＭ＝‘Ａ，Ｂ，Ｃ’］と指定する。この実行優先順位は，最大２５５まで設定できる。
【００１８】
具体的には，各プログラムへのＣＰＵ資源割り当て時間（つまり擾乱検出ポイント時間）が１００ｍｓ，擾乱検出リミット時間が５００ｍｓ，実行優先順位が２５５である場合，［ＰＡＲＭ＝‘００１００，００５００，００２５５’］と指定する。なお，擾乱発生検出プログラムがジョブ制御文ではなく，コマンドで起動されるようなタイプのシステムである場合には，そのコマンドの起動パラメタで同様に指定する。
【００１９】
本発明は，上記システム環境設定の後，以下のようにして擾乱発生を検出する。
（３）擾乱発生検出プログラムは，起動時パラメタを参照して，自己の実行優先順位を設定する。
（４）擾乱発生検出プログラムは，現在時刻Ｘ１を取得した後，時間監視を行う。
（５）擾乱発生検出プログラムは，監視時間が経過した後のタイマ割込みによって実行状態となった時の時刻Ｘ２を取得する。
（６）時刻Ｘ２と時刻Ｘ１との差と擾乱検出リミット時間とを比較する。
（７）時刻Ｘ２と時刻Ｘ１との差が擾乱検出リミット時間より大きいとき，擾乱プログラムによってＣＰＵ資源が使用し続けられ，擾乱が発生していたと判断し，即時に空間ダンプ処理を行う。すなわち，例えば各プログラムの実行履歴が記録された，ＯＳ内のトレース情報を読み込んで，ディスク等のダンプ情報格納手段に格納する。ダンプ情報格納手段に格納されたダンプ情報に基づいて，どのプログラムが擾乱を発生させていたかを検出することができる。
【００２０】
上記（４）〜（７）の処理を，図６および図７を用いて説明する。図６は，擾乱発生検出プログラムの動作タイムチャートである。擾乱発生検出プログラムは，設定された擾乱検出ポイント時間がＡｍｓであるとすると，Ａｍｓ後にタイマ割込みがかかるように設定して時間監視待ちに入る。これにより，擾乱発生検出プログラムは，通常はＡｍｓの周期で実行状態となるはずである。
【００２１】
具体的には，擾乱発生検出プログラムは，時刻ｔ0 〜ｔ1 間に１回目の実行，時刻ｔ1 〜ｔ2 間に１回目の待ち（ＷＡＩＴ），時刻ｔ2 〜ｔ3 間に２回目の実行，時刻ｔ3 〜ｔ4 に２回目の待ち（ＷＡＩＴ），時刻ｔ4 〜ｔ5 に３回目の実行，時刻ｔ5 〜ｔ6 に３回目の待ち（ＷＡＩＴ），時刻ｔ6 〜ｔ7 に４回目の実行，…となる。
【００２２】
図７は，擾乱発生の検出を説明する図であり，図７（Ａ）は正常な場合，図７（Ｂ）は擾乱が発生した場合を示している。図７に示す例では，設定された擾乱検出ポイント時間はＡｍｓ，擾乱検出リミット時間はＢｍｓであるものとする。
【００２３】
図７（Ａ）において，擾乱発生検出プログラムは，図中に示す開始ポイントで時刻Ｘ１を取得する。擾乱検出ポイント時間Ａｍｓをタイマ設定し，時間監視する。そして，タイマ割込みにより実行状態となったときに，時刻Ｘ２を取得する。
【００２４】
擾乱発生検出プログラムは，タイマ割込みにより実行状態となったときの時刻Ｘ２と開始ポイントで取得した時刻Ｘ１との差が擾乱検出リミット時間であるＢｍｓより大きければ擾乱が発生したと判断する。
【００２５】
時刻Ｘ２と時刻Ｘ１との差が擾乱検出ポイント時間Ａｍｓより大きくても，擾乱検出リミット時間であるＢｍｓより小さければ，擾乱は発生していないと判断する。例えば，図７（Ａ）の場合は，時刻Ｘ２と時刻Ｘ１との差はＢｍｓより小さいため，擾乱が発生していないと判断する。一方，図７（Ｂ）の場合は，時刻Ｘ２と時刻Ｘ１との差はＢｍｓより大きいため，擾乱が発生したと判断する。
【００２６】
すなわち，本発明は，ＣＰＵ資源を不用意に使用し続けるプログラムである擾乱プログラムによる擾乱の発生を検出する擾乱発生検出プログラムであって，当該擾乱発生検出プログラムの実行優先順位を，擾乱の検出対象となるプログラムの実行優先順位以上の値に設定する実行優先順位設定手順と，所定の擾乱検出ポイント時間ごとに当該擾乱発生検出プログラムがＣＰＵ実行制御権を得て実行状態となるように，擾乱検出ポイント時間をタイマに設定し，タイマ割込み待ち状態で時間監視を行う時間監視手順と，タイマ割込みによって当該擾乱発生検出プログラムが実行状態となったときに，前記時間監視を開始してから前記実行状態となるまでの時間と，所定の擾乱検出リミット時間との比較を行い，前記時間監視を開始してから前記実行状態となるまでの時間が，所定の擾乱検出リミット時間を超えていれば，擾乱が発生したと判断する擾乱検証手順とを，コンピュータに実行させることを特徴とする。
【００２７】
また，本発明の擾乱発生検出プログラムは，前記擾乱検証手順において擾乱が発生したと判断された場合に，当該コンピュータの所定のメモリ領域の情報を外部記憶装置に出力する空間ダンプ処理手順をコンピュータに実行させるためのプログラムを含む。
【００２８】
前記実行優先順位，前記擾乱検出ポイント時間および前記擾乱検出リミット時間は，当該擾乱発生検出プログラムの起動時パラメタで与えられる。
【００２９】
また，この擾乱発生検出プログラムは，オペレーティング・システムを構成する制御プログラムとは別の処理プログラムとして構成され，制御プログラムとは別に動作する。
【００３０】
また，本発明による擾乱発生検出方法は，マルチプロセッサシステムにおける擾乱の発生を検出する場合には，前記擾乱発生検出プログラムを，マルチプロセッサシステムを構成するＣＰＵごとに割り当て，それぞれ特定のＣＰＵでのみ動作させることを特徴とする。
【発明の効果】
【００３１】
本発明によれば，既存の制御プログラム構造を改変することなく，処理プログラムのレベルでシステム内の問題プログラムを検出することができ，システム内の擾乱プログラム検出までの期間短縮及び工数削減を図ることができる。従って，本発明によれば，システム内で発生した擾乱を高速かつ確実に検出することが可能となり，作業性の向上に大きな効果がある。かつ，ＯＳの制御プログラム構造を改変する必要がないので，他システムへの移植性にも優れている。
【発明を実施するための最良の形態】
【００３２】
以下に図を用いて，本発明の実施の形態について説明する。図１は，本発明の擾乱発生検出装置の構成の一例を示す図である。１はＣＰＵおよびメモリからなる擾乱発生検出装置である。本実施の形態における擾乱発生検出装置１は，一般の計算機によるデータ処理装置に擾乱発生検出プログラム１１をインストールしたものである。
【００３３】
擾乱発生検出装置１において，１０はＯＳ（オペレーティングシステム），１１は擾乱発生検出プログラム，１２はアプリケーションプログラムＸ，１３はアプリケーションプログラムＹ，１４はアプリケーションプログラムＺである。ＯＳ１０において，１００は制御プログラムＡ，１０１は制御プログラムＢ，１０２は制御プログラムＣであり，それぞれＯＳ１０の各種機能を実現する。
【００３４】
擾乱発生検出プログラム１１において，１１０は擾乱発生検出プログラム１１の実行優先順位を設定する実行優先順位設定部，１１１は擾乱検出ポイント時間をタイマ設定して時間監視を行う時間監視部，１１２は時間監視部１１１による時間監視結果に基づいて擾乱の発生を検証する擾乱検証部，１１３は擾乱検証部１１２によって擾乱が発生したと判断されたときに空間ダンプ処理を行う空間ダンプ処理部である。また，２００は空間ダンプ処理の結果のダンプ情報が格納されるダンプ情報格納手段である。空間ダンプとは，擾乱発生検出装置１のメモリのデータを外部の記憶装置に出力することをいう。
【００３５】
図２は，擾乱発生検出プログラムと擾乱発生検出の対象となる各プログラムの実行優先順位を示す図である。図２において，１０３はＯＳ１０内のトレース情報格納部，２０１はトレース情報格納部に格納されているトレース情報である。擾乱発生検出プログラム１１は，複数ＣＰＵ資源毎に実行可能とするＣＰＵ割り当て設定が行われているものとする。
【００３６】
図２に示した例では，図の上方にあるプログラムほど実行優先順位が高いプログラムである。図２では，擾乱発生検出プログラム１１，ＯＳ１０内の各制御プログラム，各アプリケーションプログラムの順に実行優先順位が高い。
【００３７】
本発明の実施の形態では，各プログラムの実行優先順位は，最大２５５まで設定可能であり，擾乱発生検出プログラム１１の実行優先順位は，擾乱発生検出の対象となるプログラムより高い値に設定される。擾乱発生検出プログラム１１より実行優先順位が高い他のプログラムが存在すると，監視時間の経過後，擾乱検出対象のプログラムの実行が終了しても，擾乱発生検出プログラム１１にＣＰＵの実行制御権がすぐには渡されないことがあり，擾乱発生を検出できないおそれがあるからである。
【００３８】
例えば，擾乱発生検出プログラム１１の実行優先順位を最大値の２５５に設定しておくことにより，ＯＳ１０の各制御プログラムが擾乱プログラムであるときも，擾乱発生を検出することができる。なお，擾乱発生検出プログラム１１の実行優先順位は，擾乱発生検出対象のプログラムの実行優先順位よりも高いほうが望ましいが，実行優先順位が同じであっても擾乱の発生の検出は可能である。
【００３９】
擾乱発生検出プログラム１１は，擾乱が発生していたと判断すると，ＯＳ１０内のトレース情報格納部１０３のトレース情報２０１を読み込んでダンプ情報格納手段２００に格納する。従って，ユーザは，ダンプ情報格納手段２００に格納されたダンプ情報に基づいて擾乱プログラムを検出することができる。
【００４０】
図３は，トレース情報の構成例を示す図である。トレース情報２０１は，プログラム名，割込み情報，割込みが発生した時刻，その他の項目から構成される。割込み情報の項目に記録された各数字は，例えば割込みの種別を示している。
【００４１】
図３の例では，制御プログラムＡ１００は，時刻「1000001000001 」に割込み２（例えば，タイマ割込み）で実行状態となり，擾乱発生検出プログラム１１は，時刻「1000001000011 」と時刻「1000001000028 」に割込み２で実行状態となったことを示している。
【００４２】
図３に示すように，トレース情報２０１は各プログラムの実行履歴を示しているため，トレース情報２０１をもとに，どのプログラムが擾乱を発生させていたかを検出することができる。このトレース情報２０１は，ＯＳ１０が割込み等によりプログラムの実行制御が切り替わったときに，メモリ内の所定のトレース情報格納部１０３に，自動的に収集しておくものである。ＯＳ１０が，このようなトレース機能を持っていない場合には，トレース情報格納部１０３ではなく，あらかじめ定められた他のメモリ領域をダンプするようにしてもよい。
【００４３】
図４は，擾乱発生検出処理フローの一例を示す図である。この例では，起動時パラメタとして，擾乱検出ポイント時間がＡｍｓ，擾乱検出リミット時間がＢｍｓ，実行優先順位が最大値の２５５に設定されるものとする。
【００４４】
起動時パラメタの設定がなされると，擾乱発生検出プログラム１１は，まず，起動時パラメタを参照して，自己の実行優先順位の設定を行う（ステップＳ１）。擾乱発生検出プログラム１１は，ここでは，実行優先順位として最大値の２５５を設定する。
【００４５】
次に，擾乱発生検出プログラム１１は，ＯＳ１０が提供する時刻取得用のマクロ命令を用いて現時刻Ｘ１を取得し，記憶する（ステップＳ２）。次に起動時パラメタ中の擾乱検出ポイント時間（Ａｍｓ）を参照して，ＯＳ１０のマクロ命令を用いて監視時間をタイマに設定し（ステップＳ３），時間監視（ＷＡＩＴ）を行う（ステップＳ４）。
【００４６】
擾乱発生検出プログラム１１は，監視時間が経過しタイマ割込みによって実行状態になると，現時刻Ｘ２を取得し（ステップＳ５），Ｘ２−Ｘ１＞Ｂであるか，すなわち，擾乱が発生したかを判断する（ステップＳ６）。Ｘ２−Ｘ１＞Ｂである場合は，空間ダンプ処理を行う（ステップＳ７）。ユーザは，空間ダンプ処理によってダンプ情報格納手段２００に格納されたダンプ情報に基づいて，擾乱プログラムを検出することができる。図３に示すようなトレース情報から，どのプログラムが異常に長くＣＰＵを使用していたかがわかるからである。
【００４７】
ステップＳ７における空間ダンプ処理は，例えば，以下のＳＤＵＭＰマクロ命令により行われる。なお，このようなマクロ命令の記述は，ＯＳ１０の種類に依存するので，ここでは単に表記の一例だけを示す。
【００４８】
SDUMP HDR=(DISTURBANCE ABNORMAL END)
ステップＳ６において，Ｘ２−Ｘ１＞Ｂでない場合は，Ｘ２をＸ１として記憶した上で（ステップＳ８），ステップＳ３に戻る。
【００４９】
図５は，擾乱発生検出処理フローの別の一例を示す図である。現時刻Ｘ１，Ｘ２の取得方法が違うだけで，実質的には前述した図４のフローと同様である。この例でも，起動時パラメタとして，擾乱検出ポイント時間がＡｍｓ，擾乱検出リミット時間がＢｍｓ，実行優先順位が最大値の２５５に設定されるものとする。
【００５０】
起動時パラメタの設定がなされると，擾乱発生検出プログラム１１は，まず，起動時パラメタを参照して，自己の実行優先順位の設定を行う（ステップＳ１１）。擾乱発生検出プログラム１１は，実行優先順位として，最大値の２５５を設定する。
【００５１】
次に，擾乱発生検出プログラム１１は，現時刻Ｘ１を取得する（ステップＳ１２）。起動時パラメタ中の擾乱検出ポイント時間（Ａｍｓ）を参照して，監視時間をタイマに設定し（ステップＳ１３），時間監視（ＷＡＩＴ）を行う（ステップＳ１４）。
【００５２】
擾乱発生検出プログラム１１はタイマ割込みによって実行状態になると，現時刻Ｘ２を取得し（ステップＳ１５），Ｘ２−Ｘ１＞Ｂであるか，すなわち，擾乱が発生したかを判断する（ステップＳ１６）。Ｘ２−Ｘ１＞Ｂである場合には，空間ダンプ処理を行い（ステップＳ１７）。ユーザは，空間ダンプ処理によってダンプ情報格納手段２００に格納されたダンプ情報に基づいて，擾乱プログラムを検出することができる。
【００５３】
ステップＳ１６において，Ｘ２−Ｘ１＞Ｂでない場合には，ステップＳ１１へ戻り，実行優先順位を再設定する。これは，ＯＳ１０が自動的に擾乱発生検出プログラム１１の実行優先順位を下げることがある場合でも，擾乱発生検出プログラム１１の実行優先順位を当初設定した最大値に保つためである。
【００５４】
なお，擾乱プログラムが割込み禁止状態で無限ループに陥ったような場合には，擾乱発生検出プログラム１１は監視時間が過ぎても実行されないことになり，空間ダンプ処理部１１３による空間ダンプ処理は行われないことになるが，このような擾乱プログラムは，擾乱発生検出プログラム１１を用いなくてもすぐに分かるので，擾乱発生検出プログラム１１による検出ができなくても問題はない。
【００５５】
以上から把握できるように，本発明の実施形態の特徴を述べると以下の通りである。
【００５６】
（付記１）  ＣＰＵ資源を不用意に使用し続けるプログラムである擾乱プログラムによる擾乱の発生を検出する擾乱発生検出プログラムであって，
当該擾乱発生検出プログラムの実行優先順位を，擾乱の検出対象となるプログラムの実行優先順位以上の値に設定する実行優先順位設定手順と，
所定の擾乱検出ポイント時間ごとに当該擾乱発生検出プログラムがＣＰＵ実行制御権を得て実行状態となるように，擾乱検出ポイント時間をタイマに設定し，タイマ割込み待ち状態で時間監視を行う時間監視手順と，
タイマ割込みによって当該擾乱発生検出プログラムが実行状態となったときに，前記時間監視を開始してから前記実行状態となるまでの時間と，所定の擾乱検出リミット時間との比較を行い，前記時間監視を開始してから前記実行状態となるまでの時間が，所定の擾乱検出リミット時間を超えていれば，擾乱が発生したと判断する擾乱検証手順とを，
コンピュータに実行させるための擾乱発生検出プログラム。
【００５７】
（付記２）  付記１記載の擾乱発生検出プログラムにおいて，
前記擾乱検証手順において擾乱が発生したと判断された場合に，当該コンピュータの所定のメモリ領域の情報を外部記憶装置に出力する空間ダンプ処理手順を，
コンピュータに実行させるためのプログラムを含む擾乱発生検出プログラム。
【００５８】
（付記３）  付記１または付記２記載の擾乱発生検出プログラムにおいて，
前記実行優先順位，前記擾乱検出ポイント時間および前記擾乱検出リミット時間が，当該擾乱発生検出プログラムの起動時パラメタで与えられる
ことを特徴とする擾乱発生検出プログラム。
【００５９】
（付記４）  前記擾乱発生検出プログラムは，オペレーティング・システムを構成する制御プログラムとは別の処理プログラムとして構成されたものである
ことを特徴とする付記１，付記２または付記３記載の擾乱発生検出プログラム。
【００６０】
（付記５）  付記１から付記４までのいずれか１項に記載の擾乱発生検出プログラムを用いた擾乱発生検出方法であって，
マルチプロセッサシステムにおける擾乱の発生を検出する場合に，前記擾乱発生検出プログラムを，マルチプロセッサシステムを構成するＣＰＵごとに割り当て，それぞれ特定のＣＰＵでのみ動作させる
ことを特徴とする擾乱発生検出方法。
【００６１】
（付記６）  付記１から付記４までのいずれか１項に記載の擾乱発生検出プログラムを，コンピュータ読み取り可能な記録媒体に記録したことを特徴とする擾乱発生検出プログラム記録媒体。
【図面の簡単な説明】
【００６２】
【図１】擾乱発生検出装置の構成の一例を示す図である。
【図２】擾乱発生検出プログラムと擾乱発生検出の対象となる各プログラムの実行優先順位を示す図である。
【図３】トレース情報の構成例を示す図である。
【図４】擾乱発生検出処理フローの一例を示す図である。
【図５】擾乱発生検出処理フローの別の一例を示す図である。
【図６】擾乱発生検出プログラムの動作タイムチャートである。
【図７】擾乱発生の検出を説明する図である。
【符号の説明】
【００６３】
１  擾乱発生検出装置
１０  ＯＳ
１１  擾乱発生検出プログラム
１２  アプリケーションプログラムＸ
１３  アプリケーションプログラムＹ
１４  アプリケーションプログラムＺ
１００  制御プログラムＡ
１０１  制御プログラムＢ
１０２  制御プログラムＣ
１０３  トレース情報格納部
１１０  実行優先順位設定部
１１１  時間監視部
１１２  擾乱検証部
１１３  空間ダンプ処理部
２００  ダンプ情報格納手段
２０１  トレース情報
【図１】
2005316806.tif 000003
【図２】
2005316806.tif 000004
【図３】
2005316806.tif 000005
【図４】
2005316806.tif 000006
【図５】
2005316806.tif 000007
【図６】
2005316806.tif 000008
【図７】
2005316806.tif 000009