(57)【要約】【課題】クラッシュダンプ処理中のエラーを早期に検出する。【解決手段】ＷＤＴセット部１（１２３）は、メモリダンプ用のＷＤＴタイムアウト時間をＷＤＴ（１７０）にセットする。ダンプ実行部（１２６）は、１回のメモリダンプ処理をＷＤＴタイムアウト時間内で完了させることができるデータサイズをダンプサイズとし、各回のメモリダンプ処理においてダンプサイズ分のメモリダンプを行い、各回のメモリダンプ処理をＷＤＴタイムアウト時間内に完了させて、ダンプサイズ分のメモリダンプを複数回繰り返す。ＷＤＴリセット部（１２７）は、ダンプ実行部（１２６）が各回のメモリダンプ処理を完了する度にＷＤＴ（１７０）をリセットする。【選択図】図１
2014197347.tif 000002
【特許請求の範囲】
【請求項１】
メモリとＷＤＴ（Ｗａｔｃｈｄｏｇ  Ｔｉｍｅｒ）とを有し、前記メモリ内のデータのメモリダンプが行われるデータ処理装置であって、
メモリダンプ用のタイムアウト時間であるダンプタイムアウト時間を前記ＷＤＴにセットするダンプタイムアウト時間セット部と、
１回のメモリダンプ処理を前記ダンプタイムアウト時間内で完了させることができるデータサイズをダンプサイズとし、各回のメモリダンプ処理において前記ダンプサイズ分のメモリダンプを行い、各回のメモリダンプ処理を前記ダンプタイムアウト時間内に完了させて、前記ダンプサイズ分のメモリダンプを複数回繰り返すダンプ実行部と、
前記ダンプ実行部が各回のメモリダンプ処理を完了する度に前記ＷＤＴをリセットするＷＤＴリセット部とを有することを特徴とするデータ処理装置。
【請求項２】
前記データ処理装置は、
ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）が実装され、
前記ＯＳに障害が発生した場合に、前記メモリ内のデータのメモリダンプが行われ、
所定の制限時間内に前記メモリ内のメモリダンプの対象の全てのデータのメモリダンプが完了しない場合は、前記ＯＳのリブートが行われるデータ処理装置であって、
前記ダンプタイムアウト時間セット部は、
前記制限時間よりも短い時間を、前記ダンプタイムアウト時間として前記ＷＤＴにセットし、
前記ダンプ実行部は、
メモリダンプ処理中にエラーが発生しなければ、前記メモリ内のメモリダンプの対象の全てのデータのメモリダンプが完了するまで又は初回のメモリダンプ処理の開始から前記制限時間が経過するまで、前記ダンプサイズ分のメモリダンプを繰り返すことを特徴とする請求項１に記載のデータ処理装置。
【請求項３】
前記データ処理装置は、更に、
前記ダンプ実行部でのメモリダンプ処理中にエラーが発生した結果、メモリダンプ処理が前記ダンプタイムアウト時間内に完了せず、前記ＷＤＴのタイムアウトが発生した場合に、リトライ動作として、前記ダンプタイムアウト時間セット部に前記ＷＤＴへの前記ダンプタイムアウト時間のセットを行わせ、前記ダンプ実行部にメモリダンプ処理を再開させ、前記ＷＤＴリセット部に前記ＷＤＴのリセットを行わせるダンプリトライ制御部を有することを特徴とする請求項２に記載のデータ処理装置。
【請求項４】
前記データ処理装置は、更に、
１回のメモリダンプ処理がエラーなく完了した際に、当該メモリダンプ処理で処理されたデータのメモリアドレスを所定の記録領域に記録させるダンプ完了アドレス記録部を有し、
前記ダンプ実行部は、
メモリダンプ処理中にエラーが発生した結果、メモリダンプ処理が前記ダンプタイムアウト時間内に完了せず、前記ＷＤＴのタイムアウトが発生し、前記ダンプリトライ制御部によるリトライ動作として、メモリダンプ処理を再開する場合に、
前記記録領域に記録されているメモリアドレスに基づき、メモリダンプが未完了のデータを特定し、特定したメモリダンプが未完了のデータに対してメモリダンプ処理を再開することを特徴とする請求項３に記載のデータ処理装置。
【請求項５】
前記ダンプリトライ制御部は、
リトライ動作の上限回数に達するまでは、前記ＷＤＴのタイムアウトが発生する度に、リトライ動作として、前記ダンプタイムアウト時間セット部に前記ＷＤＴへの前記ダンプタイムアウト時間のセットを行わせ、前記ダンプ実行部にメモリダンプ処理を再開させ、前記ＷＤＴリセット部に前記ＷＤＴのリセットを行わせ、
リトライ動作の上限回数に達した場合は、前記ＯＳをリブートさせることを特徴とする請求項３又は４に記載のデータ処理装置。
【請求項６】
前記ダンプタイムアウト時間セット部は、
予め指定された時間を前記ダンプタイムアウト時間として前記ＷＤＴにセットし、
前記データ処理装置は、更に、
前記ダンプタイムアウト時間セット部によりセットされた前記ダンプタイムアウト時間と、メモリダンプの実行速度とに基づき、前記ダンプサイズを計算するダンプサイズ計算部を有し、
前記ダンプ実行部は、
各回のメモリダンプ処理において、前記ダンプサイズ計算部により計算されたダンプサイズ分のメモリダンプを行うことを特徴とする請求項１〜５のいずれかに記載のデータ処理装置。
【請求項７】
前記データ処理装置は、更に、
前記ダンプ実行部がメモリダンプ処理を繰り返す度に、メモリダンプ処理の開始前に、メモリダンプの実行速度を計測する実行速度計測部を有し、
前記ダンプサイズ計算部は、
前記ダンプ実行部がメモリダンプ処理を繰り返す度に、メモリダンプ処理の開始前に、前記実行速度計測部により計測された実行速度に基づき、前記ダンプサイズを計算し、
前記ダンプ実行部は、
前記ダンプサイズ計算部により新たにダンプサイズが計算される度に、その後のメモリダンプ処理において、計算されたダンプサイズ分のメモリダンプを行うことを特徴とする請求項６に記載のデータ処理装置。
【請求項８】
前記データ処理装置は、更に、
前記ダンプ実行部が初回のメモリダンプ処理を開始する前に１度だけ、メモリダンプの実行速度を計測する実行速度計測部を有し、
前記ダンプサイズ計算部は、
前記ダンプ実行部が初回のメモリダンプ処理を開始する前に１度だけ、前記実行速度計測部により計測された実行速度に基づき、前記ダンプサイズを計算することを特徴とする請求項６に記載のデータ処理装置。
【請求項９】
前記ダンプ実行部は、
予め指定されたデータサイズを前記ダンプサイズとし、
各回のメモリダンプ処理において、予め指定されたダンプサイズ分のメモリダンプを行い、
前記データ処理装置は、更に、
予め指定されたダンプサイズと、メモリダンプの実行速度とに基づき、前記ダンプタイムアウト時間を計算するダンプタイムアウト時間計算部を有し、
前記ダンプタイムアウト時間セット部は、
前記ダンプタイムアウト時間計算部により計算されたダンプタイムアウト時間を前記ＷＤＴにセットすることを特徴とする請求項１〜５のいずれかに記載のデータ処理装置。
【請求項１０】
前記データ処理装置は、更に、
前記ダンプ実行部がメモリダンプ処理を繰り返す度に、メモリダンプ処理の開始前に、メモリダンプの実行速度を計測する実行速度計測部を有し、
前記ダンプタイムアウト時間計算部は、
前記ダンプ実行部がメモリダンプ処理を繰り返す度に、メモリダンプ処理の開始前に、前記実行速度計測部により計測された実行速度に基づき、前記ダンプタイムアウト時間を計算し、
前記ダンプタイムアウト時間セット部は、
前記ダンプタイムアウト時間計算部によりダンプタイムアウト時間が計算される度に、計算されたダンプタイムアウト時間を前記ＷＤＴにセットすることを特徴とする請求項９に記載のデータ処理装置。
【請求項１１】
前記データ処理装置は、更に、
前記ダンプ実行部が初回のメモリダンプ処理を開始する前に１度だけ、メモリダンプの実行速度を計測する実行速度計測部を有し、
前記ダンプタイムアウト時間計算部は、
前記ダンプ実行部が初回のメモリダンプ処理を開始する前に１度だけ、前記実行速度計測部により計測された実行速度に基づき、前記ダンプタイムアウト時間を計算することを特徴とする請求項９に記載のデータ処理装置。
【請求項１２】
前記ダンプタイムアウト時間セット部は、
予め指定された時間を前記ダンプタイムアウト時間として前記ＷＤＴにセットし、
前記ダンプ実行部は、
１回のメモリダンプ処理を前記ダンプタイムアウト時間内で完了させることができる、予め指定されたデータサイズを前記ダンプサイズとし、
各回のメモリダンプ処理において、予め指定されたダンプサイズ分のメモリダンプを行うことを特徴とする請求項１〜５のいずれかに記載のデータ処理装置。
【請求項１３】
前記ダンプタイムアウト時間セット部は、
ミリ秒単位のダンプタイムアウト時間を前記ＷＤＴにセットすることを特徴とする請求項１〜１２のいずれかに記載のデータ処理装置。
【請求項１４】
メモリとＷＤＴ（Ｗａｔｃｈｄｏｇ  Ｔｉｍｅｒ）とを有し、前記メモリ内のデータのメモリダンプが行われるコンピュータで行われるデータ処理方法であって、
前記コンピュータが、メモリダンプ用のタイムアウト時間であるダンプタイムアウト時間を前記ＷＤＴにセットするダンプタイムアウト時間セットステップと、
１回のメモリダンプ処理を前記ダンプタイムアウト時間内で完了させることができるデータサイズをダンプサイズとし、前記コンピュータが、各回のメモリダンプ処理において前記ダンプサイズ分のメモリダンプを行い、各回のメモリダンプ処理を前記ダンプタイムアウト時間内に完了させて、前記ダンプサイズ分のメモリダンプを複数回繰り返すダンプ実行ステップと、
前記ダンプ実行ステップにおいて各回のメモリダンプ処理が完了する度に、前記コンピュータが、前記ＷＤＴをリセットするＷＤＴリセットステップとを有することを特徴とするデータ処理方法。
【請求項１５】
コンピュータを、請求項１に記載されたデータ処理装置として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）が処理を継続できない障害が発生した時に、障害解析用に行われるクラッシュダンプに関する。
なお、クラッシュダンプは、障害発生時のメモリ内のデータを静的な記憶装置（例えば、ハードディスク装置）にファイル（ダンプ・ファイル）として保存することである。
【背景技術】
【０００２】
従来技術では、クラッシュダンプ処理実行途中のエラー停止に対するＷＤＴ（Ｗａｔｃｈｄｏｇ  Ｔｉｍｅｒ）による細かな監視は行なわず、クラッシュダンプ処理全体が完了する時間よりも十分長いＷＤＴタイムアウト時間をセットして、ＷＤＴタイムアウト発生時にクラッシュダンプが完了しているかどうかを確認する方式などにより、クラッシュダンプ処理のエラー停止の監視を実現していた。
例えば、特許文献１では、クラッシュダンプが確実に完了している固定時間をＷＤＴタイムアウト時間にセットして、そのタイムアウト時間の経過後にクラッシュダンプが終了しているかどうかを確認し、クラッシュダンプが終了していなければダンプ失敗情報を記録するようにして、クラッシュダンプの正常実行を確認する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−８６３６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＯＳが処理を継続できない障害が発生した時に、障害解析用のクラッシュダンプを実行する計算機においては、クラッシュダンプ処理中に、定期的なＷＤＴリセット処理を実行できないためにＷＤＴを停止する場合があった。
この場合、クラッシュダンプ処理中のエラー停止を検知できずＯＳをリブートできないという課題がある。
【０００５】
また、クラッシュダンプ処理のエラー停止に備えてＷＤＴを用いてＯＳリブートを設定する場合においては、ＷＤＴタイムアウト時間を長く設定する必要があるため、エラー発生からＷＤＴタイムアウトによるＯＳリブートまでに時間を長く要するという課題がある。
【０００６】
例えば、特許文献１の技術では、ＷＤＴを用いながらクラッシュダンプ処理を正常に完了したかどうかを確認できるようにすることを目的としており、クラッシュダンプが確実に完了している固定時間をＷＤＴにセットして、その時間の経過後にクラッシュダンプが終了しているかどうかを確認し、ＷＤＴ時間内にクラッシュダンプが終了していなければダンプ失敗情報を記録するようにして、クラッシュダンプが実行されたかどうかを確認する技術が開示されている。
【０００７】
しかし、クラッシュダンプ処理中にエラー停止した場合のエラー検知は、クラッシュダンプが確実に完了している固定時間のＷＤＴタイムアウトを待つ必要があるため、ＯＳリブートまでに時間を長く要するという課題がある。
【０００８】
本発明は、上記のような課題を解決するためになされたもので、クラッシュダンプ中のエラーを早期に検出できるようにすることを主な目的とする。
【課題を解決するための手段】
【０００９】
本発明に係るデータ処理装置は、
メモリとＷＤＴ（Ｗａｔｃｈｄｏｇ  Ｔｉｍｅｒ）とを有し、前記メモリ内のデータのメモリダンプが行われるデータ処理装置であって、
メモリダンプ用のタイムアウト時間であるダンプタイムアウト時間を前記ＷＤＴにセットするダンプタイムアウト時間セット部と、
１回のメモリダンプ処理を前記ダンプタイムアウト時間内で完了させることができるデータサイズをダンプサイズとし、各回のメモリダンプ処理において前記ダンプサイズ分のメモリダンプを行い、各回のメモリダンプ処理を前記ダンプタイムアウト時間内に完了させて、前記ダンプサイズ分のメモリダンプを複数回繰り返すダンプ実行部と、
前記ダンプ実行部が各回のメモリダンプ処理を完了する度に前記ＷＤＴをリセットするＷＤＴリセット部とを有することを特徴とする。
【発明の効果】
【００１０】
本発明では、ダンプタイムアウト時間内に完了するメモリダンプ処理を行い、メモリダンプ処理が完了する度にＷＤＴをリセットする。
このため、メモリダンプ処理中にエラーが発生した場合にはＷＤＴがリセットされずにＷＤＴタイムアウトが発生するため、メモリダンプ処理中のエラーを早期に検出することができる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態１に係る計算機装置の構成例を示す図。
【図２】実施の形態１に係るクラッシュダンプ処理部の動作例を示すフローチャート図。
【図３】実施の形態１に係るクラッシュダンプ処理部の動作例を示すフローチャート図。
【図４】実施の形態２に係る計算機装置の構成例を示す図。
【図５】実施の形態２に係るクラッシュダンプ処理部の動作例を示すフローチャート図。
【図６】実施の形態３に係る計算機装置の構成例を示す図。
【図７】実施の形態３に係るクラッシュダンプ処理部の動作例を示すフローチャート図。
【図８】実施の形態４に係る計算機装置の構成例を示す図。
【図９】実施の形態４に係るクラッシュダンプ処理部の動作例を示すフローチャート図。
【図１０】実施の形態５に係る計算機装置の構成例を示す図。
【図１１】実施の形態５に係るクラッシュダンプ処理部の動作例を示すフローチャート図。
【発明を実施するための形態】
【００１２】
実施の形態１〜５では、ＯＳが処理を継続できない障害発生時に、障害解析用にメモリデータを静的な記憶装置に出力するクラッシュダンプ処理を実行する計算機において、クラッシュダンプ処理実行中のエラー停止のためのＷＤＴタイムアウト時間が長くならないようにする方式を説明する。
また、クラッシュダンプ処理全体の時間が長くなりすぎないように制限時間を設け、制限時間を超えたらクラッシュダンプ処理を中断してＯＳをリブートする方式を説明する。
【００１３】
実施の形態１．
［実施の形態１：構成の説明］
図１は、実施の形態１に係る計算機装置（１００）の構成例を示すブロック図である。
なお、計算機装置（１００）は、データ処理装置の例に相当する。
【００１４】
計算機装置（１００）の構成を大きく分けると、ハードウェアとして、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）（１８０）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）であるメモリ（１５０）、ハードディスクやＳＤカード（登録商標）などの静的記憶装置（１６０）、ＷＤＴ（１７０）が存在し、ソフトウェアとしてＯＳ（１１０）、クラッシュダンプ処理部（１２０）が存在する。
【００１５】
静的記憶装置（１６０）には、クラッシュダンプ処理の出力としてクラッシュダンプファイル（１６１）、リトライ回数や前回のメモリダンプ処理実行時のダンプ完了アドレスなどのクラッシュダンプの管理情報を格納するクラッシュダンプ管理情報（１６２）、クラッシュダンプ処理中のエラーを記録するクラッシュダンプエラー記録（１６３）が存在する。
更に、図１では、図示を省略しているが、ＯＳ（１１０）及びクラッシュダンプ処理部（１２０）を実現するプログラムコードが格納されている。
そして、ＯＳ（１１０）及びクラッシュダンプ処理部（１２０）のプログラムコードがメモリ（１５０）又は図１に不図示のメモリにロードされて、順次ＣＰＵ（１８０）により読みこまれて、実行され、以下に示すＯＳ（１１０）及びクラッシュダンプ処理部（１２０）の機能が実現される。
また、ＷＤＴ（１７０）は、計算機装置（１００）が正常に動作しているか否かを監視するためのタイマであり、タイムアウトが発生するとＷＤＴ（１７０）からの割込みにより例外処理が実行される。
【００１６】
クラッシュダンプ処理部（１２０）は、ＯＳ（１１０）上で動作するソフトウェアでも、ＯＳ（１１０）とは独立して動作するソフトウェアでもよい。
図１ではＯＳ（１１０）とクラッシュダンプ処理部（１２０）は独立した構成として図示している。
【００１７】
クラッシュダンプ処理部（１２０）には、クラッシュダンプ開始部（１２１）、クラッシュダンプリトライ判定部（１２２）、ＷＤＴセット部１（１２３）、メモリコピー平均時間取得部（１２４）、ダンプサイズ計算部（１２５）、ダンプ実行部（１２６）、ＷＤＴリセット部（１２７）、ダンプ完了アドレス記録部（１２８）、制限時間判定部（１２９）、ダンプ繰返し部（１３０）、ＷＤＴセット部２（１３１）、クラッシュダンプ終了部（１３２）が含まれる。
また、クラッシュダンプ処理部（１２０）の図中のＷＤＴタイムアウト時間（固定値）（１４１）は、クラッシュダンプ用のＷＤＴタイムアウト時間の設定値（固定値）である。
ＷＤＴタイムアウト時間（固定値）（１４１）は、実際には、例えば静的記憶装置（１６０）に記憶されているが、クラッシュダンプ処理部（１２０）と関連する値であるため、クラッシュダンプ処理部（１２０）内に図示している。
【００１８】
なお、ダンプ実行部（１２６）が行う各回のダンプ処理をメモリダンプ処理といい、メモリ（１５０）内のデータが静的記憶装置（１６０）に全て格納されるまでに行われるメモリダンプ処理の繰り返しをクラッシュダンプ処理という。
具体的には、後述する図２のＳ１０９の処理は繰り返しループに含まれるため、Ｓ１０９の処理は複数回繰り返されることになるが、各回のＳ１０９の処理をメモリダンプ処理といい、メモリ（１５０）内のデータが静的記憶装置（１６０）に全て格納されるまでに行われるＳ１０９の処理の繰り返しをクラッシュダンプ処理という。
【００１９】
ＯＳ（１１０）には、ＯＳ（１１０）が処理を継続できない障害の発生の検知を行う故障検知部（１１１）、発生した障害に対処しクラッシュダンプ処理部（１２０）を呼出す故障対処部（１１２）、クラッシュダンプ処理実行後にリブート処理を実行するリブート部（１１３）が存在する。
なお、ＯＳ（１１０）には通常のＯＳに含まれる機能（プロセス管理、ファイル管理等）が含まれるが、本発明の特徴には直接関係しないので、図示及び説明を省略する。
【００２０】
クラッシュダンプ処理部（１２０）において、クラッシュダンプ開始部（１２１）は、ＯＳ（１１０）に障害が発生した際に、故障対処部（１１２）により呼出される。
【００２１】
クラッシュダンプリトライ判定部（１２２）は、ダンプ実行部（１２６）でのメモリダンプ処理中にエラーが発生した結果、メモリダンプ処理がＷＤＴタイムアウト時間内に完了せず、ＷＤＴ（１７０）のタイムアウトが発生した場合に、リトライ動作として、ＷＤＴセット部１（１２３）にＷＤＴ（１７０）へのＷＤＴタイムアウト時間のセットを行わせ、ダンプ実行部（１２６）にメモリダンプ処理を再開させ、ＷＤＴリセット部（１２７）にＷＤＴ（１７０）のリセットを行わせる。
クラッシュダンプリトライ判定部（１２２）は、ダンプリトライ制御部に相当する。
【００２２】
ＷＤＴセット部１（１２３）は、クラッシュダンプ用のＷＤＴタイムアウト時間をＷＤＴ（１７０）にセットする。
なお、クラッシュダンプ用のＷＤＴタイムアウト時間はダンプタイムアウト時間に相当する。
そして、ＷＤＴセット部１（１２３）は、ダンプタイムアウト時間セット部に相当する。
【００２３】
メモリコピー平均時間取得部（１２４）は、メモリダンプにおけるメモリコピーの時間を計測し、メモリダンプの実行速度を計測する。
メモリコピー平均時間取得部（１２４）は、実行速度計測部に相当する。
【００２４】
ダンプサイズ計算部（１２５）は、メモリコピー平均時間取得部（１２４）により計測されたメモリダンプの実行速度とＷＤＴタイムアウト時間に基づき、ダンプサイズを計算する。
ダンプサイズとは、ダンプ実行部（１２６）における１回のメモリダンプ処理をＷＤＴタイムアウト時間内で完了させることができるデータサイズである。
【００２５】
ダンプ実行部（１２６）は、メモリダンプ処理、すなわち、ＯＳ（１１０）に障害が発生した際に、障害発生時のメモリ（１５０）内のデータを静的記憶装置（１６０）にクラッシュダンプファイル（１６１）として保存する処理を行う。
本実施の形態では、ダンプ実行部（１２６）は、メモリ（１５０）内のクラッシュダンプの対象の全てのデータを静的記憶装置（１６０）に保存するまでに、複数回のメモリダンプ処理を行う。
そして、ダンプ実行部（１２６）は、各回のメモリダンプ処理においてダンプサイズ分のメモリダンプを行い、各回のメモリダンプ処理をＷＤＴタイムアウト時間内に完了させる。
【００２６】
ダンプ完了アドレス記録部（１２８）は、ダンプ実行部（１２６）において１回のメモリダンプ処理がエラーなく完了した際に、当該メモリダンプ処理で処理されたデータのメモリアドレスを静的記憶装置（１６０）のクラッシュダンプ管理情報（１６２）に記録する。
【００２７】
制限時間判定部（１２９）は、クラッシュダンプの開始時から制限時間が経過しているかどうかを判定する。
制限時間内にメモリ（１５０）内のダンプの対象の全てのデータのクラッシュダンプが完了しない場合は、ＯＳ（１１０）のリブートが行われる。
【００２８】
ダンプ繰返し部（１３０）は、制限時間判定部（１２９）により制限時間内であると判定された場合に、ダンプサイズの計算、ＷＤＴタイムアウト時間のＷＤＴ（１７０）へのセット、メモリダンプ処理等を繰り返させる。
【００２９】
ＷＤＴセット部２（１３１）は、ＷＤＴ（１７０）の設定値をクラッシュダンプ用のＷＤＴタイムアウト時間から通常のＷＤＴタイムアウト時間に戻す。
【００３０】
クラッシュダンプ終了部（１３２）は、クラッシュダンプ対象のデータが全てクラッシュダンプファイル（１６１）に格納された場合、制限時間に達した場合、リトライ回数が上限値に達した場合に、リブート部（１１３）を呼出す。
【００３１】
［実施の形態１：動作の概要説明］
実施の形態１における動作の説明として、図１を用いて全体的な動作の流れの概要を説明する。
また、図２及び図３は実施の形態１における詳細な処理フローである。
図１における各要素の詳細処理は図２及び図３を用いて説明する。
【００３２】
クラッシュダンプ処理部（１２０）が呼出される場合は、ＯＳ（１１０）が処理を継続できない障害を検知した場合（図１の１１２から１２１への矢印）と、クラッシュダンプ処理中のＷＤＴタイムアウトの割込みによるリトライ発生の場合（図１の１７０から１２１への矢印）の２通りがある。
従って、以下では「実施の形態１：ＯＳが処理を継続できない障害検知時の場合」と、「実施の形態１：クラッシュダンプ処理中のＷＤＴタイムアウトの割込みによるリトライ発生の場合」の２つの場合に分けて動作の概要を説明する。
【００３３】
［実施の形態１：動作の概要説明（ＯＳが処理を継続できない障害検知時の場合）］
ＯＳ（１１０）が処理を継続できない障害が検知されて、クラッシュダンプ処理部（１２０）が呼出される場合について説明する。
【００３４】
ＯＳ（１１０）上の故障検知部（１１１）にて障害を検知し、故障対処部（１１２）にて障害対処を行って、クラッシュダンプ処理部（１２０）のクラッシュダンプ開始部（１２１）が呼出される。
図２の処理フローでは、Ｓ１００において、クラッシュダンプ開始部（１２１）が呼出される。
クラッシュダンプ開始部（１２１）は、クラッシュダンプリトライ判定部（１２２）を呼出す。
クラッシュダンプリトライ判定部（１２２）は、図２のＳ１０１〜Ｓ１０４の処理を行う。
【００３５】
Ｓ１０１では、クラッシュダンプリトライ判定部（１２２）は、クラッシュダンプ処理中のＷＤＴタイムアウトの割込みによるリトライ発生の場合であるかどうかを判定する。
リトライ発生の場合は、前述の「クラッシュダンプ処理中のＷＤＴタイムアウトの割込みによるリトライ発生の場合」であり、Ｙｅｓの処理に進むが、この場合については後述の［実施の形態１：動作の概要説明（ＷＤＴタイムアウトの割込みによるリトライが発生した場合）］にて説明する。
ここでは、「ＯＳが処理を継続できない障害検知時の場合」なので、Ｎｏの処理に進み、ＷＤＴセット部１（１２３）の処理に移る。
【００３６】
ＷＤＴセット部１（１２３）は、クラッシュダンプ用のＷＤＴタイムアウト時間を、ＷＤＴタイムアウト時間（固定値）（１４１）を参照して取得し、ＷＤＴタイムアウト時間としてＷＤＴ（１７０）にセットする（Ｓ１０５）。
これは、クラッシュダンプには一般的に長い時間がかかるため、適切なＷＤＴタイムアウト時間を設定しないと、一回にコピーするダンプサイズが小さくなりすぎて、ダンプ処理全体の効率が悪くならないようにする効果がある。
なお、ＷＤＴ（１７０）にセットするクラッシュダンプ用のＷＤＴタイムアウト時間は、例えば、１０ミリ秒や１００ミリ秒といったミリ秒単位の時間である。
【００３７】
次に、メモリコピー平均時間取得部（１２４）の処理に移る。
メモリコピー平均時間取得部（１２４）の処理フローは、Ｓ１０６〜Ｓ１０７である。
ここでは、メモリコピー平均時間取得部（１２４）は、指定サイズのメモリダンプを実行（Ｓ１０６）して、その実行時間を測ることにより、メモリコピー実行の平均時間を取得する（Ｓ１０７）。
また、メモリコピー平均時間取得部（１２４）は、指定サイズとメモリコピー実行の平均時間とから、メモリダンプの実行速度を取得する。
【００３８】
次に、ダンプサイズ計算部（１２５）が、クラッシュダンプ用のＷＤＴタイムアウト時間内に確実にメモリコピーが完了するデータサイズ（ダンプサイズ）を計算する（Ｓ１０８）。
【００３９】
次に、ダンプ実行部（１２６）がメモリダンプを実行する。
実施の形態１のダンプ実行部（１０６）の場合、Ｓ１０８で計算されたダンプサイズのメモリダンプを実行する（Ｓ１０９）。
メモリダンプ処理中にエラーが発生しなければ、ダンプサイズ分のメモリダンプはＷＤＴタイムアウト時間内に完了する。
【００４０】
次に処理がＷＤＴリセット部（１２７）に移り、ＷＤＴリセット部（１２７）が、ＷＤＴ（１７０）のリセット処理を実行する（Ｓ１１０）。
もしも、ダンプ実行部（１２６）がエラーなどで停止して、メモリダンプ処理がＷＤＴタイムアウト時間内に完了しなかった場合は、ＷＤＴリセット部（１２７）によるリセット処理が実行されず、ＷＤＴタイムアウトとなるが、この場合については後述する。
【００４１】
次に、処理がダンプ完了アドレス記録部（１２８）に移り、ダンプ完了アドレス記録部（１２８）は、ダンプ実行部（１２６）にてダンプ完了した最後のメモリアドレスをクラッシュダンプ管理情報（１６２）に記録する（Ｓ１１１）。
【００４２】
次に、処理が制限時間判定部（１２９）に移る。
制限時間判定部（１２９）は、クラッシュダンプ開始からの現在の処理までにかかった時間（クラッシュダンプ処理開始時の時刻と現在の処理の時刻との差）と、予め設定値として持つ制限時間とを比較する（Ｓ１１２）。
制限時間を超えていない場合は、ダンプ繰返し部（１３０）にて全てのメモリダンプが完了したかどうかを判定し（Ｓ１１３）、完了していない場合は、Ｓ１０６の処理に戻って、Ｓ１０６〜Ｓ１１３の処理を繰り返しながらクラッシュダンプ処理を進める。
Ｓ１１３で全てのメモリダンプが完了した場合には、ＷＤＴセット部２（１３１）の処理に移り、ＷＤＴセット部２（１３１）が、クラッシュダンプ用のＷＤＴタイムアウト時間に変更されていたＷＤＴタイムアウト時間を元の設定値に戻す（Ｓ１１４）。
そして、クラッシュダンプが終了（Ｓ１１５）したため、クラッシュダンプ終了部（１３２）が、ＯＳ（１１０）のリブート部（１１３）を呼出す（Ｓ１１６）。
【００４３】
また、Ｓ１０６〜Ｓ１１３の処理の繰返しの途中のＳ１１２で制限時間を超えた場合には、制限時間判定部（１２９）が、制限時間オーバーエラー記録（Ｓ１１７）にて静的記憶装置（１６０）のクラッシュダンプエラー記録（１６３）にエラーを記録し、Ｓ１０６〜Ｓ１１３の繰り返し処理を抜けて、Ｓ１１４の処理に移る（以降の処理は前述と同様である）。
【００４４】
以上の手順、処理フローにより、クラッシュダンプ中のエラー発生に備えたＷＤＴタイムアウト時間が長くならないようにする効果を得ることができる。
また、クラッシュダンプ全体の制限時間を超えた場合には、クラッシュダンプ処理を中止してＯＳをリブートすることができる。
また、毎回のＳ１０６〜Ｓ１１３の繰返し処理では、メモリコピーに要する平均時間を計算して固定のＷＤＴタイムアウト時間内に完了するダンプサイズを計算することにより、ハードウェアの違いなどで、読み出しや書き出しに利用するメモリの種類の違いがある場合でも、ソフトウェア的に柔軟に対応できる効果がある。
【００４５】
［実施の形態１：動作の概要説明（ＷＤＴタイムアウトの割込みによるリトライが発生した場合）］
次に、クラッシュダンプ処理中のＷＤＴタイムアウトの割込みによるリトライが発生した場合について説明する。
【００４６】
クラッシュダンプ処理中にＷＤＴ（１７０）のタイムアウトを検知した場合というのは、クラッシュダンプ処理中のエラー停止などで、ＷＤＴタイムアウトが発生した場合である。
この場合、ＷＤＴ（１７０）がＷＤＴタイムアウトを検知して、クラッシュダンプ開始部（１２１）を呼出す。
次に、クラッシュダンプ開始部（１２１）は、クラッシュダンプリトライ判定部（１２２）を呼出す。
【００４７】
クラッシュダンプリトライ判定部（１２２）の処理フローは前述の通りＳ１０１〜Ｓ１０４である。
この場合、クラッシュダンプ処理中のＷＤＴタイムアウトで呼出された場合であるので、Ｓ１０１でＹｅｓの処理へ進み、クラッシュダンプ管理情報（１６２）のリトライ回数を１つカウントアップする（Ｓ１０２）。
リトライ回数がリトライの最大回数以内ならばＳ１０３でＹｅｓの処理に進み、クラッシュダンプ管理情報（１６２）から前回のダンプ完了アドレスを取得し（Ｓ１０４）、ＷＤＴセット部１（１２３）に処理が移る。
以降は、前述のＳ１０５からの処理とほぼ同様であるが、前回ダンプ完了していた次のアドレスから前回の継続としてダンプ実行部（１２６）にてメモリダンプ処理を再開するところが異なる。
【００４８】
他方、Ｓ１０３でリトライ回数がリトライの最大回数を超えた場合にはＳ１０３のＮｏの処理に進み、メモリダンプリトライエラー記録（Ｓ１１７）にて、クラッシュダンプリトライ判定部（１２２）が、クラッシュダンプエラー記録（１６３）にクラッシュダンプのリトライエラーが発生したことを記録し、クラッシュダンプ終了部（１３２）でクラッシュダンプを終了し（Ｓ１１５）、ＯＳ側のリブート部（１１３）を呼出し、リブートを実行（Ｓ１１６）する。
【００４９】
以上、本実施の形態では、
ＯＳが処理を継続できない障害発生時に、障害解析用にメモリデータを記憶装置に保存するクラッシュダンプ処理を実行する計算機において、クラッシュダンプ処理中のエラー停止に備えてＷＤＴ（Ｗａｔｃｈｄｏｇ  Ｔｉｍｅｒ）を用いてリブートを設定する場合、ＷＤＴタイムアウト時間が長くならないように、クラッシュダンプ処理の途中でメモリダンプする処理部分を複数回のメモリダンプ処理に分けて実行し、メモリダンプ処理とメモリダンプ処理の間に、ＷＤＴリセットを実行する処理を、全てのメモリダンプが完了するまで繰返すことにより、ＷＤＴタイムアウトまでの期間を延長する仕組みを説明した。
【００５０】
また、本実施の形態では、メモリダンプ処理の繰返しのループの処理の中で、メモリコピーに要する平均時間を測定・計算して、それを基にＷＤＴタイムアウト時間内にメモリコピーが完了するダンプサイズを計算し、そのダンプサイズでメモリダンプ処理の繰返しを実行する仕組みを説明した。
【００５１】
また、本実施の形態では、クラッシュダンプ処理の経過時間（クラッシュダンプの開始時刻とループの処理の途中で取得した時刻との差分の時間）が、クラッシュダンプ処理全体の制限時間を超えた場合に、クラッシュダンプ処理を中断してリブートを行うことにより、確実に制限時間内にリブートが実行される仕組みを説明した。
【００５２】
また、本実施の形態では、ダンプサイズが小さすぎてループが多くなることによりクラッシュダンプ処理全体の効率が悪くならないように、クラッシュダンプ処理中はクラッシュダンプ用のＷＤＴタイムアウト時間をセットし、クラッシュダンプ処理が完了したら元のＷＤＴタイムアウト時間を再セットして戻すことができる仕組みを説明した。
【００５３】
また、本実施の形態では、クラッシュダンプ処理中にエラー停止などでＷＤＴタイムアウトが発生した場合、ＷＤＴタイムアウトの割込みにより再度クラッシュダンプ処理が呼出される（リトライ処理される）仕組みを説明した。
また、このリトライ処理は予め指定したリトライ最大回数まで実行でき、リトライ最大回数を超えた場合には、クラッシュダンプ処理をエラー終了してリブートする仕組みを説明した。
【００５４】
また、本実施の形態では、クラッシュダンプの繰返し処理時にダンプ完了したデータのメモリアドレスを記録しておき、リトライ処理実行時には、そのダンプ完了したメモリアドレスを参照して、ダンプ完了していないメモリアドレスからクラッシュダンプの繰返し処理を実行することにより、前回の継続処理としてクラッシュダンプを実行する仕組みを説明した。
【００５５】
実施の形態２．
［実施の形態２：構成の説明］
前述の実施の形態１ではＷＤＴタイムアウト時間を固定とし、そのＷＤＴタイムアウト時間内にコピー可能なダンプサイズを計算し、ダンプ実行部にてダンプサイズ分のクラッシュダンプを繰返したが、実施の形態２では、１回にコピーするダンプサイズを固定として、その固定サイズのメモリコピーに要する時間を計算し、それを基にＷＤＴタイムアウト時間を計算してＷＤＴにそのタイムアウト時間をセットし、ダンプ実行部を実行するところが、実施の形態１と異なる。
【００５６】
図４は、実施の形態２に係る計算機装置（１００）の構成例を示すブロック図である。
【００５７】
実施の形態１の図１との相違部分は、ダンプサイズを計算する必要がないため、図１のダンプサイズ計算部（１２５）が存在せず、その代わりに実施の形態２の図４ではＷＤＴタイムアウト時間計算部（２２１）とＷＤＴセット部３（２２２）が存在すること、および固定サイズのダンプを行うダンプ実行部（２２３）の部分である。
他の部分（１００、１１０〜１１３、１２０〜１２４、１２７〜１３２、１４１、１５０、１６０〜１６３、１７０、１８０）については図１と同様である。
【００５８】
ＷＤＴタイムアウト時間計算部（２２１）は、固定値のダンプサイズと、メモリコピー平均時間取得部（１２４）で計測されたメモリダンプの実行速度とに基づき、クラッシュダンプ用のＷＤＴタイムアウト時間を計算する。
ＷＤＴタイムアウト時間計算部（２２１）は、ダンプタイムアウト時間計算部に相当する。
【００５９】
ＷＤＴセット部３（２２２）は、ＷＤＴタイムアウト時間計算部（２２１）により計算されたＷＤＴタイムアウト時間をＷＤＴ（１７０）にセットする。
ＷＤＴセット部３（２２２）は、ダンプタイムアウト時間セット部に相当する。
【００６０】
［実施の形態２：動作の概要説明］
実施の形態２における動作の説明として、図４を用いて全体的な動作の流れの概要を説明する。
また、図５は実施の形態２における詳細な処理フローである。
図５は、実施の形態１の図３のフローチャートに対応するフローチャートである。
すなわち、実施の形態１で説明した図２のＳ１００〜Ｓ１０５が行われた後に図５のＳ１０６以降の処理が行われ、また、図２のＳ１１７が行われた後に図５のＳ１１５が行われる。
実施の形態２（図５）の処理フローと、実施の形態１（図３）の処理フローとの相違部分は、図５では図３のＳ１０８〜Ｓ１０９が存在せず、その代わりにＳ２０１〜Ｓ２０３が追加されている部分である。
他の部分（Ｓ１１０〜Ｓ１１８）については図３と同様である。
以下では、実施の形態２の動作のうち、実施の形態１と相違する部分のみ説明する。
【００６１】
Ｓ１０５の処理の後、Ｓ１０６とＳ１０７では、実施の形態１と同様に、メモリコピー平均時間取得部（１２４）がメモリコピーの平均時間を求め、また、メモリダンプの実行速度を求める。
【００６２】
次に、処理がＷＤＴタイムアウト時間計算部（２２１）に移り、ＷＤＴタイムアウト時間計算部（２２１）が、固定のダンプサイズのメモリコピーに要する時間を計算し（Ｓ２０１）、ＷＤＴセット部３（２２２）が、Ｓ２０１で計算されたＷＤＴタイムアウト時間をＷＤＴ（１７０）にセットする（Ｓ２０２）。
次に、ダンプ実行部（２２３）に処理が移り、ダンプ実行部（２２３）は固定のダンプサイズのメモリダンプを実行する（Ｓ２０３）。
他の部分の手順、処理フローは実施の形態１と同様である。
【００６３】
以上の手順、処理フローにより、クラッシュダンプ中のエラー発生に備えたＷＤＴタイムアウト時間が長くならないようにすることができる。
また、クラッシュダンプ全体の制限時間を超えた場合には、クラッシュダンプ処理を中止してリブートすることができる。
また、実施の形態２では、１回のダンプサイズが固定であるため、ダンプ実行部（１２６）のループ回数を（メモリ（１５０）内のデータのサイズ）÷（ダンプサイズ）で得られる回数とすることができ、ループ回数が多すぎて処理効率が悪くなることを避けられる効果がある。
【００６４】
本実施の形態では、１回のダンプサイズを固定サイズとし、１回のメモリダンプ処理に要する時間を計算し、それを基にＷＤＴタイムアウト時間を計算してＷＤＴにセットして、ダンプ実行部を実行し、終わったらＷＤＴをリセットする処理を、全てのメモリダンプが完了するまで繰り返しながら、クラッシュダンプ処理を進める仕組みを説明した。
【００６５】
実施の形態３．
［実施の形態３：構成および動作の概要説明］
実施の形態３は実施の形態１の変形である。
実施の形態１では、メモリコピーの平均時間を取得してダンプサイズを計算する処理を、ダンプ繰返し部のループの中で行なっているが、実施の形態３では、このメモリコピーの平均時間を取得してダンプサイズを計算する処理をダンプ繰返し部のループの前に１回のみ行う（ダンプ繰返し部のループの外出しにする）ところが、実施の形態１と異なる。
【００６６】
図６は、実施の形態３に係る計算機装置（１００）の構成例を示すブロック図である。
【００６７】
実施の形態３の図６と実施の形態１の図１との相違部分は、ダンプ繰返し部（２２４）である。
図１のダンプ繰返し部（１３０）では、１２４〜１３０の手順の繰返しであるが、図６のダンプ繰返し部（２２４）は１２６〜２２４の手順の繰返しとなる。
他の部分（１００、１１０〜１１３、１２０〜１２９、１３１〜１３２、１４１、１５０、１６０〜１６３、１７０、１８０）については図１と同様である。
【００６８】
実施の形態３における動作の説明として、図６を用いて全体的な動作の流れの概要を説明する。
また、図７は実施の形態３における詳細な処理フローである。
図６における各要素の詳細処理は図７を用いて説明する。
図７は、実施の形態１の図３のフローチャートに対応するフローチャートである。
すなわち、実施の形態１で説明した図２のＳ１００〜Ｓ１０５が行われた後に図７のＳ１０６以降の処理が行われ、また、図２のＳ１１７が行われた後に図７のＳ１１５が行われる。
実施の形態３の処理フロー（図７）と実施の形態１の処理フロー（図３）との相違部分は、ダンプ繰返し部の処理フローであり、図３ではＳ１１３からＳ１０６に戻って処理を繰返しているのに対し、図７ではＳ３０１からＳ１０９に戻って処理を繰返している部分である。
他の部分（Ｓ１００〜Ｓ１１２、Ｓ１１４〜Ｓ１１８）については図３と同様である。
【００６９】
実施の形態３は実施の形態１の図１と比較して、メモリコピー平均時間取得部（１２４）とダンプサイズ計算部（１２５）の処理が１回しか行なわれず、ダンプ繰返し部のループの前に外出しとなるところが実施の形態１と異なる。
すなわち、実施の形態１の図１ではダンプ繰返し部（１３０）のループは、図１の１２４〜１３０の繰返しとなっているが、実施の形態３の図６のダンプ繰返し部（２２４）のループは、１２６〜２２４の繰返しとなり、１２４と１２５はこの繰返しのループの前に外出しとなる。
【００７０】
詳細処理フローについては図７を用いて、実施の形態１の図３と異なる部分のみ説明する。
図７では、メモリコピー平均時間取得部（１２４）の処理であるＳ１０６〜Ｓ１０７と、ダンプサイズ計算部（１２５）の処理であるＳ１０８が、ダンプ繰返し部（２２４）の繰返しのループ（Ｓ１０９〜Ｓ３０１）の前に外出しとなるところが、実施の形態１の図３と異なる。
他の処理フローは図３と同じである。
【００７１】
この実施の形態３では、メモリコピーの速度がクラッシュダンプ処理中に変わらないと想定される場合（メモリや静的記憶装置のメモリコピー速度が一定と見込まれる場合）に、メモリダンプ処理の繰返し毎にダンプサイズを計算しなくてもよいメリットがある。
【００７２】
以上、本実施の形態では、メモリコピーに要する平均時間を計算してＷＤＴタイムアウト時間内に完了するダンプサイズを計算する処理を初回のみに行い、そのダンプサイズにてメモリダンプ処理を実行し、１回のメモリダンプ処理が終わったらＷＤＴをリセットする処理を、全てのメモリダンプが完了するまで繰り返しながら、クラッシュダンプ処理を進める仕組みを説明した。
【００７３】
実施の形態４．
［実施の形態４：構成および動作の概要説明］
実施の形態４は実施の形態２の変形である。
実施の形態２では、メモリコピーの平均時間を取得してＷＤＴタイムアウト時間を計算してＷＤＴをセットする処理を、ダンプ繰返し部のループの中で行なっているが、実施の形態４では、このメモリコピーの平均時間を取得してＷＤＴタイムアウト時間を計算してＷＤＴにセットする処理をダンプ繰返し部のループの前に１回のみ行う（ダンプ繰返し部のループの外出しにする）ところが、実施の形態２と異なる。
【００７４】
図８は、実施の形態４の計算機装置（１００）の構成例を示すブロック図である。
【００７５】
実施の形態４の図８と実施の形態２の図４との相違部分は、ダンプ繰返し部である。
図４のダンプ繰返し部（１３０）では１２４〜１３０の手順の繰返しであるが、図８のダンプ繰返し部（２２５）は２２３〜２２５の手順の繰返しとなる。
他の部分（１００、１１０〜１１３、１２０〜１２９、１３１〜１３２、１４１、１５０、１６０〜１６３、１７０、１８０）については図４と同様である。
【００７６】
実施の形態４における動作の説明として、図８を用いて全体的な動作の流れの概要を説明する。
また、図９は実施の形態４における詳細な処理フローである。
図８における各要素の詳細処理は図９を用いて説明する。
図９は、実施の形態１の図３のフローチャートに対応するフローチャートである。
すなわち、実施の形態１で説明した図２のＳ１００〜Ｓ１０５が行われた後に図９のＳ１０６以降の処理が行われ、また、図２のＳ１１７が行われた後に図９のＳ１１５が行われる。
実施の形態４の処理フロー（図９）と実施の形態２の処理フロー（図５）との相違部分は、ダンプ繰返し部の処理フローであり、図５ではＳ１１３からＳ１０６に戻って処理を繰返しているのに対し、図９ではＳ３０２からＳ２０３に戻って処理を繰返している部分である。
他の部分（Ｓ１００〜Ｓ１０７、Ｓ２０１〜Ｓ２０３、Ｓ１１０〜Ｓ１１２、Ｓ１１４〜Ｓ１１８）については図２、図５と同様である。
【００７７】
実施の形態４は実施の形態２の図４と比較して、メモリコピー平均時間取得部（１２４）とＷＤＴタイムアウト時間計算部（２２１）とＷＤＴセット部３（２２２）の処理が１回しか行なわれず、ダンプ繰返し部（１３０）のループの前に外出しとなるところが実施の形態２と異なる。
すなわち、実施の形態２の図４ではダンプ繰返し部（１３０）のループは、図４の１２４〜１３０の繰返しとなっているが、実施の形態３のダンプ繰返し部（２２５）のループは、２２３〜２２５の繰返しとなり、１２４と２２１と２２２はこの繰返しのループの前に外出しとなる。
【００７８】
詳細処理フローについては図９を用いて、実施の形態２の図５と異なる部分のみ説明する。
図９では、メモリコピー平均時間取得部（１２４）の処理であるＳ１０６〜Ｓ１０７と、ＷＤＴタイムアウト時間計算部（２２１）の処理であるＳ２０１と、ＷＤＴセット部３（２２２）の処理であるＳ２０２が、ダンプ繰返し部（２２５）の繰返しのループ（Ｓ２０３〜Ｓ３０２）の前に外出しとなるところが、実施の形態２の図５と異なる。
他の処理フローは図５と同じである。
【００７９】
この実施の形態４では、メモリコピーの速度がクラッシュダンプ処理中に変わらないと想定される場合（メモリや静的記憶装置のメモリコピー速度が一定と見込まれる場合）に、メモリダンプ処理の繰返し毎にＷＤＴタイムアウト時間の計算とＷＤＴセットを行わなくてもよいメリットがある。
【００８０】
以上、本実施の形態では、メモリダンプ処理の１回のダンプサイズを固定サイズとし、このメモリダンプ処理の１回の処理に要する時間を計算し、それを基にＷＤＴタイムアウト時間を計算してＷＤＴセットする処理を初回のみに行い、１回のメモリダンプ処理を実行してＷＤＴをリセットする処理を、全てのメモリダンプが完了するまで繰り返しながら、クラッシュダンプ処理を進める仕組みを説明した。
【００８１】
実施の形態５．
［実施の形態５：構成および動作の概要説明］
実施の形態５は実施の形態４の変形である。
実施の形態５は、実施の形態４と同様、１回のダンプサイズは固定だが、ＷＤＴタイムアウト時間の計算は行わず予め計算した固定値を使うところが異なる。
このため、メモリコピーにかかる平均時間を取得する必要がなく、ＷＤＴタイムアウト時間の計算も、ＷＤＴにそのタイムアウト時間をセットする必要もない。
【００８２】
実施の形態５に係る計算機装置（１００）の構成例を図１０に示す。
実施の形態４の構成（図８）との違いは、図８には存在するメモリコピー平均時間取得部（１２４）とＷＤＴタイムアウト時間計算部（２２１）とＷＤＴセット部３（２２２）が、実施の形態５の図１０には存在しないところである。
他の部分（１００、１１０〜１１３、１２０〜１２３、１２７〜１３２、２２３、１４１、１５０、１６０〜１６３、１７０、１８０）については図８と同様である。
【００８３】
実施の形態５の詳細処理フローを図１１に示す。
実施の形態５ではダンプサイズは固定サイズであり、事前にＷＤＴタイムアウト時間は計算しておいた固定値をＷＤＴタイムアウト時間（固定値）（１４１）から取得する。
【００８４】
実施の形態５の処理フロー（図１１）のＳ２０３以降の部分と実施の形態４の処理フロー（図９）との相違部分は、図９では存在するＳ１０６〜Ｓ１０７とＳ２０１〜Ｓ２０２の処理が、図１１では存在しない部分である。
他の部分（Ｓ１００〜Ｓ１０５、Ｓ２０３、Ｓ１１０〜Ｓ１１２、Ｓ３０２、Ｓ１１４〜Ｓ１１８）については図２、図９と同様である。
【００８５】
詳細処理フローについては図１１を用いて、実施の形態４の図９と異なる部分のみ説明する。
ダンプサイズは固定値であり、ＷＤＴタイムアウト時間は、ＷＤＴタイムアウト時間（固定値）（１４１）より取得する（この部分は実施の形態４と同じ）が、ＷＤＴタイムアウト時間は予め固定サイズのダンプサイズのメモリコピーの時間を元にしたＷＤＴタイムアウト時間（固定値）を用いる。
従って、実施の形態１〜４のようにダンプサイズの計算もＷＤＴタイムアウトサイズの計算も必要なく、計算済みの固定値を用いる。
このため、実施の形態４では存在したＳ１０６〜Ｓ２０２までの処理がなくなっているところが、実施の形態４とは異なる。
他の処理フローは、図２、図９と同じである。
【００８６】
実施の形態５では、メモリコピーの速度がクラッシュダンプ処理中に変わらないと想定される場合に、メモリ（１５０）や静的記憶装置（１６０）のメモリコピー速度を事前に測定してＷＤＴタイムアウト時間（固定値）を予め計算しておいて固定値として利用することにより、実施の形態４におけるＷＤＴタイムアウト時間の計算が必要なくなり、クラッシュダンプ処理を効率化できるメリットがある。
【００８７】
以上、本実施の形態では、メモリダンプ処理の１回のダンプサイズとＷＤＴタイムアウト時間も固定値とすることを説明した。
【００８８】
以上、本発明の実施の形態について説明したが、これらの実施の形態のうち、２つ以上を組み合わせて実施しても構わない。
あるいは、これらの実施の形態のうち、１つを部分的に実施しても構わない。
あるいは、これらの実施の形態のうち、２つ以上を部分的に組み合わせて実施しても構わない。
なお、本発明は、これらの実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
【符号の説明】
【００８９】
１００  計算機装置、１１０  ＯＳ、１１１  故障検知部、１１２  故障対処部、１１３  リブート部、１２０  クラッシュダンプ処理部、１２１  クラッシュダンプ開始部、１２２  クラッシュダンプリトライ判定部、１２３  ＷＤＴセット部１、１２４  メモリコピー平均時間取得部、１２５  ダンプサイズ計算部、１２６  ダンプ実行部、１２７  ＷＤＴリセット部、１２８  ダンプ完了アドレス記録部、１２９  制限時間判定部、１３０  ダンプ繰返し部、１３１  ＷＤＴセット部２、１３２  クラッシュダンプ終了部、１４１  ＷＤＴタイムアウト時間（固定値）、１５０  メモリ、１６０  静的記憶装置、１６１  クラッシュダンプファイル、１６２  クラッシュダンプ管理情報、１６３  クラッシュダンプエラー記録、１７０  ＷＤＴ、１８０  ＣＰＵ、２２１  ＷＤＴタイムアウト時間計算部、２２２  ＷＤＴセット部３、２２３  ダンプ実行部、２２４  ダンプ繰返し部、２２５  ダンプ繰返し部。
【図１】
2014197347.tif 000003
【図２】
2014197347.tif 000004
【図３】
2014197347.tif 000005
【図４】
2014197347.tif 000006
【図５】
2014197347.tif 000007
【図６】
2014197347.tif 000008
【図７】
2014197347.tif 000009
【図８】
2014197347.tif 000010
【図９】
2014197347.tif 000011
【図１０】
2014197347.tif 000012
【図１１】
2014197347.tif 000013