(57)【要約】【課題】記憶媒体にダンプする必要性の高いダンプデータを選択的に出力することが可能な処理装置、ダンプ採取方法およびプログラムを提供する。【解決手段】処理装置は、メインメモリと、メインメモリ内のプログラムのうち、実行中のプロセスデータを保持するＣＰＵキャッシュと、ダンプデータとして、ＣＰＵキャッシュ内のプロセスデータを補助記憶装置に記録するダンプ出力部と、を含む。【選択図】図１
2012168707.tif 000002
【特許請求の範囲】
【請求項１】
補助記憶装置にダンプデータを記録する処理装置において、
メインメモリと、
前記メインメモリ内のプログラムのうち、実行中のプロセスデータを保持するキャッシュメモリと、
前記ダンプデータとして前記キャッシュメモリ内の前記プロセスデータを前記補助記憶装置に記録する記録手段と、を含む処理装置。
【請求項２】
請求項１に記載の処理装置において、
前記記録手段は、前記メインメモリ内のカーネル空間のデータを前記補助記憶装置に記録する、処理装置。
【請求項３】
メインメモリを有し、補助記憶装置にダンプデータを記録する処理装置のダンプ採取方法において、
前記メインメモリ内のプログラムのうち、実行中のプロセスデータをキャッシュメモリに保持する保持ステップと、
前記ダンプデータとして前記キャッシュメモリ内の前記プロセスデータを前記補助記憶装置に記録する記録ステップと、を含むダンプ採取方法。
【請求項４】
請求項３に記載のダンプ採取方法において、
前記記録ステップでは、前記メインメモリ内のカーネル空間のデータを前記補助記憶装置に記録する、ダンプ採取方法。
【請求項５】
メインメモリを有する処理装置内のコンピュータに、
前記メインメモリ内のプログラムのうち、実行中のプロセスデータをキャッシュメモリに保持する保持手順と、
前記キャッシュメモリ内の前記プロセスデータをダンプデータとして補助記憶装置に記録する記録手順と、を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理装置、ダンプ採取方法およびプログラムに関する。
【背景技術】
【０００２】
特許文献１には、外部の記憶媒体に主記憶装置内の情報をダンプする処理装置が記載されている。特許文献１に記載の処理装置は、主記憶装置とキャッシュメモリとを備えている。
【０００３】
特許文献１に記載の処理装置は、キャッシュメモリ内の情報を主記憶装置に書き込む。特許文献１に記載の処理装置は、自装置に不具合が発生した場合、主記憶装置内の情報を外部の記憶媒体にダンプする。なお、外部の記録媒体に記憶された情報であるダンプデータは、自装置の不具合の解析に使用される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−３９１９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載の処理装置は、主記憶装置内の情報のうち外部の記憶媒体にダンプする必要のない情報も外部の記憶媒体に記録するため、外部の記憶媒体の容量が不足してしまうことがあるという問題があった。
【０００６】
本発明の目的は、記憶媒体にダンプする必要性の高いダンプデータを選択的に出力することが可能な処理装置、ダンプ採取方法およびプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
本発明の処理装置は、補助記憶装置にダンプデータを記録する処理装置において、メインメモリと、前記メインメモリ内のプログラムのうち、実行中のプロセスデータを保持するキャッシュメモリと、前記ダンプデータとして前記キャッシュメモリ内の前記プロセスデータを前記補助記憶装置に記録する記録手段と、を含む。
【０００８】
本発明のダンプ採取方法は、メインメモリを有し、補助記憶装置にダンプデータを記録する処理装置のダンプ採取方法において、前記メインメモリ内のプログラムのうち、実行中のプロセスデータをキャッシュメモリに保持する保持ステップと、前記ダンプデータとして前記キャッシュメモリ内の前記プロセスデータを前記補助記憶装置に記録する記録ステップと、を含む。
【０００９】
本発明のプログラムは、メインメモリを有する処理装置内のコンピュータに、前記メインメモリ内のプログラムのうち、実行中のプロセスデータをキャッシュメモリに保持する保持手順と、前記キャッシュメモリ内の前記プロセスデータをダンプデータとして補助記憶装置に記録する記録手順と、を実行させる。
【発明の効果】
【００１０】
本発明によれば、記憶媒体にダンプする必要性の高いダンプデータを選択的に出力することが可能になる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態における処理装置の構成例を示すブロック図である。
【図２】ダンプ採取方法の処理手順例を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明の実施形態について図面を参照して説明する。
【００１３】
図１は、本実施形態における処理装置を示すブロック図である。
【００１４】
処理装置１は、自装置内でアプリケーションの異常終了やハードウェア障害などの不具合に起因するシステムダウンが発生した場合に、その原因を解析するためのダンプデータを補助記憶装置７に記録する。処理装置１は、ＣＰＵキャッシュ２と、メインメモリ４と、ダンプ出力部６と、を備える。
【００１５】
メインメモリ４には、不図示のＣＰＵ（Central Processing Unit）が実行するＯＳ（Operating System）のプログラムと、ＣＰＵが実行中のアプリケーションのプログラムと、が保持されている。なお、メインメモリ４は、コンピュータ読み取り可能な記録媒体である。
【００１６】
メインメモリ４内のメモリ領域は、ＣＰＵにて所定のブロック（以下、「ページ」と称する。）ごとに分割され、ページごとに互いに異なる仮想アドレス空間のページ領域が割り当てられる。なお、仮想アドレス空間のページ領域に格納されるデータは、ページデータと呼ぶこともある。
【００１７】
メインメモリ４内のメモリ領域に割り当てられる仮想アドレス空間は、カーネル空間とユーザ空間とにそれぞれ分けられる。
【００１８】
カーネル空間のページ領域には、ＯＳのプログラムを実行するＣＰＵにて使用されるデータが格納される。本実施形態では、カーネル空間のページ領域に格納されるデータ（カーネルデータページ）のうち、メインメモリ４内に格納されているデータとしてカーネルデータ４１が示されている。
【００１９】
ユーザ空間のページ領域には、アプリケーションのプログラムを実行しているＣＰＵにて使用されるデータ（ユーザデータページ）が格納される。本実施形態では、ユーザ空間のページ領域に格納されるデータをユーザデータと称する。
【００２０】
ＣＰＵキャッシュ２は、一般的にキャッシュメモリと呼ぶことができる。
【００２１】
ＣＰＵキャッシュ２は、メインメモリ４内のプログラムを実行中のＣＰＵにて使用されるプロセスデータを保持する。よって、ＣＰＵキャッシュ２内のプロセスデータは、実行中のプログラムのプロセスのイメージを示す。
【００２２】
ＣＰＵキャッシュ２は、ＣＰＵとメインメモリ４との処理速度の差を埋めるためにＣＰＵの使用中のプロセスデータを一時的に保持する。プロセスデータとは、プログラムを実行しているＣＰＵが、メインメモリ４から読み出すデータとメインメモリ４内に書き込むデータのことである。なお、処理装置１の大半の処理は、ＣＰＵキャッシュ２を通して行われる。
【００２３】
本実施形態では、ＣＰＵキャッシュ２は、メインメモリ４内の３つのプログラムごとに、プログラムを実行しているＣＰＵが使用中のプロセスデータ２１〜２３をそれぞれ保持する。
【００２４】
ＣＰＵキャッシュ２は、Ｌ１キャッシュ、Ｌ２キャッシュまたはＬ３キャッシュとして用いることが可能である。例えば、Ｌ１キャッシュ、Ｌ２キャッシュおよびＬ３キャッシュのそれぞれにＣＰＵキャッシュ２が用いられてもよい。なお、Ｌ３キャッシュとして用いられるＣＰＵキャッシュ２のメモリ容量は、数ＭＢ（Mega Byte）程度である。
【００２５】
ダンプ出力部６は、一般的に記録手段と呼ぶことができる。
【００２６】
ダンプ出力部６は、処理装置１に不具合が発生した場合、ダンプデータとしてＣＰＵキャッシュ２内のプロセスデータ２１〜２３と、メインメモリ４内のカーネルデータ４１とを、補助記憶装置７に出力して補助記憶装置７にダンプデータを記録する。なお、ダンプ出力部６は、メインメモリ４に格納されたプログラムに従って、ＣＰＵキャッシュ２とメインメモリ４と補助記憶装置７をそれぞれ制御するコンピュータである。
【００２７】
本実施形態では、ダンプ出力部６は、メインメモリ４内のカーネル空間のページ領域を特定する特定情報を保持する。例えば、ダンプ出力部６は、メインメモリ４内のメモリ領域のうち、ＣＰＵにてカーネル空間のページ領域に割り当てられた領域を特定するための物理アドレスを特定情報として保持する。
【００２８】
ダンプ出力部６は、処理装置１に不具合が発生した場合、特定情報にて特定されるメインメモリ４内のカーネル空間のページ領域に格納されたカーネルデータ４１を読み出す。さらにダンプ出力部６は、ＣＰＵキャッシュ２内の先頭アドレスから末尾アドレスまでに格納されたＣＰＵキャッシュサイズ分のプロセスデータ２１〜２３をＣＰＵキャッシュ２から読み出す（採取する）。例えば、ダンプ出力部６は、Ｌ１キャッシュ、Ｌ２キャッシュおよびＬ３キャッシュとして用いられた全てのＣＰＵキャッシュ２内のプロセスデータ２１〜２３を読み出す。
【００２９】
なお、ダンプ出力部６は、メインメモリ４内のカーネル空間のページ領域のうち、データの存在しないページ領域やゼロで充填されたページ領域を非対象領域として特定し、非対象領域以外のページ領域からカーネルデータ４１を読み出してもよい。
【００３０】
ダンプ出力部６は、メインメモリ４からカーネルデータ４１を読み出し、かつ、ＣＰＵキャッシュ２からプロセスデータ２１〜２３を読み出すと、カーネルデータ４１とプロセスデータ２１〜２３とをダンプデータとして補助記憶装置７に記録する。なお、プロセスデータ２１〜２３をダンプデータとして補助記憶装置７に記録することは、処理装置１の不具合の直前に実行していたプロセスのイメージが補助記憶装置７に記録されることを意味する。
【００３１】
ダンプ出力部６は、例えば、カーネルデータ４１とプロセスデータ２１〜２３とを含むダンプファイルを生成し、そのダンプファイルを補助記憶装置７に記録する。あるいは、ダンプ出力部６は、カーネルデータ４１とプロセスデータ２１〜２３とをそれぞれ別々のダンプファイルにして補助記憶装置７に記録してもよい。例えば、カーネルデータ４１とプロセスデータ２１〜２３とを１つのダンプファイルとして記録するか、または、別々のダンプファイルとして記録するかは使用者にて指定される。
【００３２】
また、ダンプ出力部６は、カーネルデータ４１とプロセスデータ２１〜２３とを選択的に補助記憶装置７に出力することが可能である。例えばダンプ出力部６は、カーネルデータ４１のみを補助記憶装置７に出力する。
【００３３】
補助記憶装置７は、ダンプファイルを記憶する記憶媒体である。なお、補助記憶装置７にダンプファイルが記録された後、例えば使用者の操作に基づいて、不図示のダンプ解析部が、補助記憶装置７を参照して所定の解析処理を実行する。
【００３４】
次に処理装置１の動作について説明する。
【００３５】
図２は、処理装置１におけるダンプ採取方法の処理手順例を示すフローチャートである。
【００３６】
まず、ダンプ出力部６は、不図示のＣＰＵからシステムダウンが発生した旨の不具合情報を受け付ける（ステップＳ９０１）。
【００３７】
ダンプ出力部６は、不具合情報を受け付けるとＣＰＵキャッシュ２からプロセスデータ２１〜２３を読み出す（ステップＳ９０２）。
【００３８】
さらにダンプ出力部６は、メインメモリ４からカーネルデータ４１を読み出す（ステップＳ９０３）。
【００３９】
そしてダンプ出力部６は、プロセスデータ２１〜２３とカーネルデータ４１とを、ダンプデータとして補助記憶装置７へ出力してダンプデータを補助記憶装置７に記録し（ステップＳ９０４）、ダンプ採取方法の処理手順を終了する。
【００４０】
本実施形態によれば、メインメモリ４と、メインメモリ４内のプログラムのうち、実行中のプロセスデータを保持するＣＰＵキャッシュ２と、を有する処理装置１では、ダンプ出力部６が、ダンプデータとして、ＣＰＵキャッシュ２内のプロセスデータを補助記憶装置７に記録する。
【００４１】
このため、システムダウンを起こした処理装置１では、ダンプ出力部６がＣＰＵキャッシュ２内のプロセスデータをダンプデータとして補助記憶装置７に記録する。よって、補助記憶装置７には、システムダウン直前に実行していたプログラムのプロセスデータのうち、システムダウン直前のプロセスデータが主に格納されることになる。このため、補助記憶装置７には、メインメモリ４内のプログラムのうち、システムダウンの原因となったプログラムのシステムダウン直前のプロセスデータが格納されている可能性が極めて高い。
【００４２】
このため、ダンプ出力部６は、システムダウンの原因の解析に必要とされる可能性の高いプロセスデータのうち、システムダウン直前のプロセスデータをダンプデータとして補助記憶装置７に記録することができる。よって、処理装置１は、補助記憶装置７に記録するプロセスデータのデータ量を、システムダウンの原因解析に必要な最低限のデータ量に抑制することができる。
【００４３】
また、メインメモリ内のデータの中からシステムダウンの原因解析に必要なデータを判断してそのデータをダンプするメモリダンプ装置では、原因解析に必要なデータを、補助記憶装置に記録する対象から誤って外してしまう恐れがある。しかしながら、処理装置１は、ＣＰＵキャッシュ２内のプロセスデータを誤って補助記憶装置７の記録対象から外すことはない。よって、処理装置１は、システムダウンの原因解析に必要とされる可能性の高いデータを確実に補助記憶装置７に記録することができる。
【００４４】
また、本実施形態では、メインメモリ４内のデータのうちシステムダウンの原因解析に必要とされるデータとして、ダンプ出力部６が、メインメモリ４内のＯＳ（オペレーションシステム）空間であるカーネル空間のページデータを補助記憶装置７に記録する。
【００４５】
よって、処理装置１は、メインメモリ４内のデータのうち、ＯＳのプログラムの解析に必要とされるページデータのみを補助記憶装置７に記録することが可能となる。
【００４６】
このため、処理装置１は、補助記憶装置７に記録するダンプデータを、自装置の不具合の解析に必要とされる可能性の高いデータに限定することができ、ダンプデータのデータ量を抑制することが可能になる。
【００４７】
以上説明した実施形態において、図示した構成は単なる一例であって、本発明はその構成に限定されるものではない。
【符号の説明】
【００４８】
１  処理装置
２  ＣＰＵキャッシュ
４  メインメモリ
６  ダンプ出力部
７  補助記憶装置
【図１】
2012168707.tif 000003
【図２】
2012168707.tif 000004