JP4395496B2 - ダンプ方法およびダンプ装置 - Google Patents

ダンプ方法およびダンプ装置 Download PDF

Info

Publication number
JP4395496B2
JP4395496B2 JP2006199678A JP2006199678A JP4395496B2 JP 4395496 B2 JP4395496 B2 JP 4395496B2 JP 2006199678 A JP2006199678 A JP 2006199678A JP 2006199678 A JP2006199678 A JP 2006199678A JP 4395496 B2 JP4395496 B2 JP 4395496B2
Authority
JP
Japan
Prior art keywords
page
storage unit
reference number
management information
memory management
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2006199678A
Other languages
English (en)
Other versions
JP2008027232A (ja
Inventor
隆 池邉
裕朗 河原崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2006199678A priority Critical patent/JP4395496B2/ja
Publication of JP2008027232A publication Critical patent/JP2008027232A/ja
Application granted granted Critical
Publication of JP4395496B2 publication Critical patent/JP4395496B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明は、コンピュータシステムにおいてメモリ領域をダンプするダンプ方法およびダンプ装置に関するものである。
コンピュータシステムでは、障害が発生したプロセスは一旦動作を停止し、その間において、そのプロセスにより参照されるメモリ領域をダンプしてなるコアファイルが生成される。コアファイルは、後にデバッグツールなどで解析され、障害の原因究明がなされる。
UNIX(登録商標)manpages:core(4)、[online]、[2006年7月5日検索]、インターネット<http://mirrors.ccs.neu.edu/cgi-bin/unix(登録商標)help/man-cgi?4+gcore> TechnicalReference:BaseOperatingSystemandExtensions,Volume1、[online]、[2006年7月5日検索]、インターネット<http://publib16.boulder.ibm.com/pseries/en.US/libs/basetrfl/coredump,htm> UNIX(登録商標)manpages:gcore(1)、[online]、[2006年7月5日検索]、インターネット<http://mirrors.ccs.neu.edu/cgi-bin/unixhelp/man-cgi?1+gcore>
コアファイルの生成には長時間を要することが多いので、プロセスの再開後になされる復旧処理等の開始が遅れてしまうという問題がある。
また、障害が発生したプロセスに関連して動作するプロセスにより参照されるメモリ領域に障害の一因があった場合であっても、このメモリ領域からはコアファイルは生成されないので、障害の原因究明が困難となる場合がある。
本発明は、上記の課題に鑑みてなされたものであり、障害時のプロセスについてのコアファイルを生成できるようにした上で、そのプロセスの停止時間を短縮することを目的とする。また、好ましくは、さらに、関連して動作するプロセスについてのコアファイルを生成して、障害の原因究明を容易にすることを目的とする。
上記の課題を解決するために、請求項1の本発明は、プロセスに参照されるページが構成されるメモリ部と、どのプロセスにどのページが参照されるかが記憶されるメモリ管理情報記憶部と、ページを参照するプロセスの数である参照数が記憶される参照数記憶部と、プロセスを動作の順に示すランキューとを備え、プロセスが、ランキューにおける当該プロセスの記憶箇所に対応するタイミングが到来した際に実行権を与えられて動作を行い、且つ、当該動作でページを書き換えようとする場合、参照数記憶部において、当該ページを参照するプロセスの参照数=1か否かを当該プロセスが判定し、参照数=1の場合は、当該プロセスがページを書き換え、一方、参照数=1でない場合は、当該プロセスが当該ページをコピーし、且つ、コピーにより生じたページを書き換え、且つ、コピーされたページが当該プロセスにより参照されず、且つ、コピーにより生じたページが当該プロセスに参照されるようにメモリ管理情報記憶部を更新し、参照数記憶部において、コピーされたページを参照するプロセスの参照数から当該プロセスが1を減算し、コピーにより生じたページを参照するプロセスの参照数として当該プロセスが1を記憶させる、ダンプ装置が行うダンプ方法であって、ダンプ装置の参照数加算部が、障害が発生したプロセスにより参照されるページをメモリ管理情報記憶部で検索し、参照数記憶部において、当該検索された全ページの参照数に1を加算し、ダンプ装置のダミープロセス生成部が、前記ランキューに動作の順が示されたプロセスでなく、且つ、当該検索された全ページを参照するプロセスである、ダミープロセスを生成し、ダンプ装置のメモリ管理情報更新部が、当該検索されたページが当該ダミープロセスに参照されるようにメモリ管理情報記憶部を更新し、ダンプ装置のメモリダンプ部が、前記ダミープロセス生成部により生成されたダミープロセスを検索し、検索されたダミープロセスにより参照されるページをメモリ管理情報記憶部で検索し、検索された全ページをダンプしてなるコアファイルを生成することを特徴とするダンプ方法をもって解決手段とする。
請求項2の本発明は、ダンプ装置が、互いに関連して動作する複数のプロセスを示すプロセスリストが記憶されるプロセスリスト記憶部を備え、参照数加算部は、障害が発生したプロセスを示すプロセスリストがプロセスリスト記憶部に存在する場合、当該プロセスリストに示された各プロセスにつき、当該プロセスにより参照されるページをメモリ管理情報記憶部で検索し、参照数記憶部において、当該検索された全ページの参照数に1を加算し、ダミープロセス生成部は、当該プロセスリストに示された各プロセスにつき、当該プロセスにより参照されるページをメモリ管理情報記憶部で検索し、当該検索された全ページを参照するダミープロセスを生成し、メモリ管理情報更新部は、当該各ダミープロセスにつき、当該ダミープロセスの基となったプロセスにつきメモリ管理情報記憶部で検索されたページが当該ダミープロセスにより参照されるようにメモリ管理情報記憶部を更新することを特徴とする請求項1記載のダンプ方法をもって解決手段とする。
請求項3の本発明は、参照数の加算に先立ち、プロセスリストに示された、障害が発生したプロセス以外のプロセスの記憶内容をランキューから退避させ、参照数の加算後に、当該プロセスの記憶内容をランキューに戻すことを特徴とする請求項2記載のダンプ方法をもって解決手段とする。
請求項4の本発明は、プロセスに参照されるページが構成されるメモリ部と、どのプロセスにどのページが参照されるかが記憶されるメモリ管理情報記憶部と、ページを参照するプロセスの数である参照数が記憶される参照数記憶部と、プロセスを動作の順に示すランキューとを備え、プロセスが、ランキューにおける当該プロセスの記憶箇所に対応するタイミングが到来した際に実行権を与えられて動作を行い、且つ、当該動作でページを書き換えようとする場合、参照数記憶部において、当該ページを参照するプロセスの参照数=1か否かを当該プロセスが判定し、参照数=1の場合は、当該プロセスがページを書き換え、一方、参照数=1でない場合は、当該プロセスが当該ページをコピーし、且つ、コピーにより生じたページを書き換え、且つ、コピーされたページが当該プロセスにより参照されず、且つ、コピーにより生じたページが当該プロセスに参照されるようにメモリ管理情報記憶部を更新し、参照数記憶部において、コピーされたページを参照するプロセスの参照数から当該プロセスが1を減算し、コピーにより生じたページを参照するプロセスの参照数として当該プロセスが1を記憶させる、ダンプ装置であって、障害が発生したプロセスにより参照されるページをメモリ管理情報記憶部で検索し、参照数記憶部において、当該検索された全ページの参照数に1を加算する参照数加算部と、前記ランキューに動作の順が示されたプロセスでなく、且つ、当該検索された全ページを参照するプロセスである、ダミープロセスを生成するダミープロセス生成部と、当該検索されたページが当該ダミープロセスに参照されるようにメモリ管理情報記憶部を更新するメモリ管理情報更新部と、前記ダミープロセス生成部により生成されたダミープロセスを検索し、検索されたダミープロセスにより参照されるページをメモリ管理情報記憶部で検索し、検索された全ページをダンプしてなるコアファイルを生成するメモリダンプ部とを備えることを特徴とするダンプ装置をもって解決手段とする。
請求項5の本発明は、互いに関連して動作する複数のプロセスを示すプロセスリストが記憶されるプロセスリスト記憶部を備え、参照数加算部は、障害が発生したプロセスを示すプロセスリストがプロセスリスト記憶部に存在する場合、当該プロセスリストに示された各プロセスにつき、当該プロセスにより参照されるページをメモリ管理情報記憶部で検索し、参照数記憶部において、当該検索された全ページの参照数に1を加算し、ダミープロセス生成部は、当該プロセスリストに示された各プロセスにつき、当該プロセスにより参照されるページをメモリ管理情報記憶部で検索し、当該検索された全ページを参照するダミープロセスを生成し、メモリ管理情報更新部は、当該各ダミープロセスにつき、当該ダミープロセスの基となったプロセスにつきメモリ管理情報記憶部で検索されたページが当該ダミープロセスにより参照されるようにメモリ管理情報記憶部を更新することを特徴とする請求項4記載のダンプ装置をもって解決手段とする。
請求項6の本発明は、参照数の加算に先立ち、プロセスリストに示された、障害が発生したプロセス以外のプロセスの記憶内容をランキューから退避させ、参照数の加算後に、当該プロセスの記憶内容をランキューに戻すことを特徴とする請求項5記載のダンプ装置をもって解決手段とする。
本発明によれば、障害が発生したプロセスの動作が停止してから再開するまでの間に、当該プロセスにより参照されるページの参照数に1を加算するだけなので、停止時間を短縮することができ、また、当該ページを参照するダミープロセスを生成し、当該ページが当該ダミープロセスに参照されることを記憶するようにしたので、障害時のプロセスについてのコアファイルを生成することができる。
以下、本発明のダンプ方法およびダンプ装置に係る実施の形態を図面を参照して説明する。説明には例を用いるが、便宜上、例の数は実際のものより少なくて、しかも理解しやすい数にする。
図1は、本発明の実施の形態に係るコンピュータシステム1の構成図である。
コンピュータシステム1は、プロセスA、B、…、Zが動作するコンピュータシステムであり、プロセスにより参照されるデータが記憶されるメモリ部101を備える。メモリ部101は、複数のメモリ領域(ページという)から構成されている。また、コンピュータシステム1は、プロセスを動作させかつ障害時におけるメモリ部101の内容をダンプすべく、メモリ管理情報記憶部102、参照数記憶部103、ランキュー104、スケジューラ106、プロセスリスト生成部107、プロセスリスト記憶部108、インタフェース109、障害発生時制御部110、参照数加算部111、ダミープロセス生成部112、メモリ管理情報更新部113、メモリダンプ部114を備える。なお、コンピュータシステム1では、障害発生時制御部110、参照数加算部111、ダミープロセス生成部112、メモリ管理情報更新部113を主な要素として、ダンプ装置が構成される。
メモリ管理情報記憶部102は、どのページがどのプロセスに参照されるかが記憶されるものである。
参照数記憶部103は、各ページにつき、そのページを参照するプロセスの数(参照数)が記憶されるものである。
ランキュー104は、記憶手段であり、例えば、プロセスAが動作(例えば、以下に説明するページ操作)を行い、次にプロセスBが動作を行い、次に再びプロセスAが動作を行う場合、ある記憶箇所にプロセスAの名前などが記憶され、その次の記憶箇所にプロセスBの名前などが記憶され、その次の記憶箇所にプロセスAの名前などが記憶される。つまり、ランキュー104は、プロセスを動作の順で示すもの(リスト)である。
プロセスは、ランキュー104において、当該プロセスの名前などの記憶箇所に対応するタイミングが到来した際に実行権を与えられて動作を行い、そのとき、ページ操作に関しては、いわゆるコピーオンライト方式を行う。つまり、ページを書き換えようとする場合、参照数記憶部103において、当該ページを参照するプロセスの参照数=1か否かを判定し、参照数=1の場合は、ページを書き換え、一方、参照数=1でない場合は、当該ページをコピーし、コピーにより生じたページを書き換え、コピーされたページが当該キューのプロセスにより参照されず、コピーにより生じたページが当該プロセスに参照されるようにメモリ管理情報記憶部102を更新し、参照数記憶部103において、コピーされたページを参照するプロセスの参照数から1を減算し、コピーにより生じたページを参照するプロセスの参照数として1を記憶させるようになっている。
コピーオンライト方式については、http://opentechpress.jp/kernel/internal24/node186.shtmlのホームページに詳細が記載されている。
スケジューラ106は、通知されたプロセスの名前などをランキュー104から退避させ、戻すように通知されたら、その名前などを戻すようになっている。
コンピュータシステム1では、プロセスA、Bは互いに関連して動作する。つまり、例えば、プロセスAが行った処理結果をプロセスBが利用するのである。
プロセスリスト生成部107は、このように互いに関連して動作するプロセスを示すプロセスリストを生成するようになっている。図2は、プロセスリストを例示した図である。例えば、プロセスリストは、互いに関連して動作するプロセスをまとめて示す関連グループIDに各プロセスのプロセス名を対応づけたものである。
図1に戻り、プロセスリスト記憶部108は、生成されたプロセスリストが記憶されるものである。
インタフェース109は、障害が発生したプロセスとのやりとりを行うようになっている。
障害発生時制御部110は、プロセスに障害が発生した時の制御を行うようになっている。
参照数加算部111は、参照数記憶部103において、障害が発生したプロセスに参照されるページなどの参照数について加算を行うようになっている。
ダミープロセス生成部112は、障害が発生したプロセスにより参照されるページを参照するダミープロセス(動作しないプロセス)を生成するようになっている。
メモリ管理情報更新部113は、ダミープロセスの基となったプロセスに参照されるページがこのダミープロセスに参照されるようにメモリ管理情報記憶部102を更新するようになっている。
メモリダンプ部114は、ダミープロセスを検索し、検索されたダミープロセスに参照されるページをダンプするようになっている。
コアファイル記憶部115は、ダンプにより生成されたコアファイルが記憶されるものであり、ディスク装置などに構成されている。
なお、ランキュー104とスケジューラ106については、http://www.linux.or.jp/JF/JFdocs/The-Linux-Kernel-5.html#ss5.3のホームページに詳細が記載されている。
(本実施の形態の動作)
次に、コンピュータシステム1の動作前に行われることを説明する。
コンピュータシステム1のオペレータが、例えば、プロセス設計者からの情報を基に、プロセスA、Bが互いに関連して動作することを示す操作をコンピュータシステム1に対して行うと、プロセスリスト生成部107は、そのことを示すプロセスリストLを生成し、このプロセスリストLをプロセスリスト記憶部108に記憶させる。なお、プロセスリスト生成部107は、オペレータの操作により、プロセスリストの内容変更や削除なども行う。
次に、図3を参照しながら、コンピュータシステム1の動作を説明する。
コンピュータシステム1が起動されると、プロセスA、B、…、Zが動作を開始する(ステップS1)。このとき、プロセスA、Bは互いに関連して動作する。ランキュー104では、各プロセスが動作の順で記憶される。
ここで、メモリ部は、以下のようになっていることとする。
ページP101は、プロセスA、X、Zにより参照される。ページP102は、プロセスA、Xにより参照される。ページP201は、プロセスB、T、Sにより参照される。ページP202は、プロセスB、Tにより参照される。ページP301は、プロセスXにより参照される。
これにより、参照数記憶部103は、ページP101につき、参照数101N=3を記憶し、ページP102につき、参照数102N=2を記憶し、ページP201につき、参照数201N=3を記憶し、ページP202につき、参照数202N=2を記憶し、ページP301につき、参照数301N=1を記憶していることとする。
例えば、プロセスXが、ランキュー104におけるプロセスXの名前などの記憶箇所に対応するタイミングが到来した際に動作を行う。
プロセスXは、例えば、ページP102を書き換えようとする場合、参照数102N=1か否かを判定し、ここでは参照数102N=2であり、1ではないので、そのページをコピーし、そのコピー(ページ)を書き換え、プロセスXによってそのコピー(ページ)が参照され、プロセスXによってページP102が参照されないようにメモリ管理情報記憶部102を更新する。そして、プロセスXは、参照数102Nから1を減算して1とし、また、コピー(ページ)の参照数として1を参照数記憶部103に記憶させる。
一方、プロセスXは、ページP301を書き換えようとする場合は、参照数301N=1か否かを判定し、ここでは参照数301N=1なので、そのページを書き換える。そして、プロセスXは、メモリ管理情報記憶部102の更新、参照数301Nからの減算はせず、参照数301Nを1のままとする。
さて、プロセスAに障害が発生したこととする。このとき、障害のシグナルがプロセスAに送信され、プロセスAは、障害の発生をインタフェース109に通知する(ステップS2)。なお、プロセスAは、インタフェース109を通じて制御が戻るのを待機し、他の動作は停止させる。
プロセスAからの通知によりインタフェース109は、通知元のプロセスAで障害が発生したことを障害発生時制御部110に通知する。
インタフェース109からの通知により障害発生時制御部110は、プロセスリスト記憶部108において、通知されたプロセスAを示すプロセスリストが存在するか否かを判定する(ステップS3)。ここで、存在する場合は、障害発生時制御部110は、そのプロセスリストに示された他のプロセスをスケジューラ106に通知する(ステップS4)。
ここでは、通知されたプロセスAを示すプロセスリストLが存在するので、障害発生時制御部110は、そのプロセスリストLに示された、プロセスA以外のプロセスBをスケジューラ106に通知する。
障害発生時制御部110からの通知によりスケジューラ106は、通知されたプロセスBの名前などをランキュー104から別な場所に退避させる。これにより、プロセスBは処理を一旦停止する。
ステップS3で存在しないと判定された場合、または、ステップS4の後においては、障害発生時制御部110は、プロセスリストLに示されたプロセスA、Bを参照数加算部111とダミープロセス生成部112に通知する(ステップS5)。
障害発生時制御部110からの通知により参照数加算部111は、通知されたプロセスA、Bにより参照されるページをメモリ管理情報記憶部102で検索し、まず、検索されたページP101について、参照数記憶部103に記憶された参照数101Nに1を加算し、これにより、参照数101N=4となる。また、参照数加算部111は、検索されたページP102について、参照数記憶部103に記憶された参照数102Nに1を加算し、これにより、参照数102N=2となる。また、参照数加算部111は、検索されたページP201について、参照数記憶部103に記憶された参照数201Nに1を加算し、これにより、参照数201N=4となる。また、参照数加算部111は、検索されたページP202について、参照数記憶部103に記憶された参照数202Nに1を加算し、これにより、参照数202N=3となる。
障害発生時制御部110からの通知によりダミープロセス生成部112は、まず、通知されたプロセスAにより参照されるページをメモリ管理情報記憶部102で検索し、検索されたページP101、P102を参照するダミープロセスA’を生成する。また、ダミープロセス生成部112は、ページP101、P102がダミープロセスA’に参照されることをメモリ管理情報更新部113に通知する。
また、ダミープロセス生成部112は、通知されたプロセスBにより参照されるページをメモリ管理情報記憶部102で検索し、検索されたページP201、P202を参照するダミープロセスB’を生成する。また、ダミープロセス生成部112は、ページP201、P202がダミープロセスB’に参照されることをメモリ管理情報更新部113に通知する。
ダミープロセス生成部112からの通知によりメモリ管理情報更新部113は、まず、通知されたページP101、P102が、通知されたダミープロセスA’に参照されるようにメモリ管理情報記憶部102を更新する。
また、メモリ管理情報更新部113は、通知されたページP201、P202が、通知されたダミープロセスB’に参照されるようにメモリ管理情報記憶部102を更新する。
このような参照数の加算、ダミープロセスの生成、メモリ管理情報記憶部102の更新は、コアファイルの生成と違って、短時間で行うことが可能であり、その後、障害発生時制御部110が、スケジューラ106に対し、プロセスBの名前などを戻すように通知し、スケジューラ106は、プロセスBの名前などをランキュー104に戻すのだが、この戻す時間を合わせても短時間で行うことが可能である。よって、ステップS5の後、障害発生時制御部110が、インタフェース109を通じて、プロセスAに制御を戻す(ステップS6)のだが、この時には、全てが終了していることとなる。
なお、制御を戻されたプロセスAは処理を再開し、例えば、障害の復旧処理を行う。
その後、プロセスAは、ランキュー104におけるプロセスAの名前などの記憶箇所に対応するタイミングが到来した際に動作を行う。
その際、プロセスAは、ページP102を書き換えようとする場合、そのページをコピーし、そのコピー(ページ)を書き換え、プロセスAによってそのコピー(ページ)が参照され、プロセスAによってページP102が参照されないように、メモリ管理情報記憶部102を更新する。そして、プロセスAは、参照数102Nから1を減算して1とし、また、コピー(ページ)の参照数として1を参照数記憶部103に記憶させる。
参照数102Nが1であるということは、ページP102が1つのプロセスに参照されることを示している。このプロセスはダミープロセスA’であり、動作しないので、ページP102が書き換えられることはない。つまり、プロセスAに障害が発生した時のページP102が実質的に保存されていることになる。
次に、図4を参照しながら、メモリダンプ部114の動作を説明する。メモリダンプ部114は、図2の動作とは非同期で動作する。
メモリダンプ部114は、ダミープロセスにより参照されるページをダンプしてなるコアファイルを生成するのだが、まず、コアファイルが生成されていないダミープロセスを検索する(ステップS11)。該当のダミープロセスがあった場合は、その1つのダミープロセスにより参照されるページをメモリ管理情報記憶部102で検索し、検索されたページをダンプしてなるコアファイルを生成し、そのコアファイルをコアファイル記憶部115に記憶させ(ステップS12)、ステップS11に戻る。一方、該当のダミープロセスがなかった場合は、処理を終了させる。なお、図4の処理は、時間間隔をあけて、繰り返し行われる。
例えば、ダミープロセスA’、B’によりコアファイルが生成されていない場合は、ステップS11でYESと判定され、ステップS12では、例えば、メモリダンプ部114は、ダミープロセスA’により参照されるページをメモリ管理情報記憶部102で検索し、検索されたページP101、P102をダンプしてなるコアファイルCAを生成し、そのコアファイルCAをコアファイル記憶部115に記憶させる。
そして、その後のステップS11でもYESと判定され、ステップS12では、メモリダンプ部114は、ダミープロセスB’により参照されるページをメモリ管理情報記憶部102で検索し、検索されたページP201、P202をダンプしてなるコアファイルCBを生成し、そのコアファイルCBをコアファイル記憶部115に記憶させる。
以上のように、本実施の形態によれば、障害が発生したプロセスにより参照されるページの参照数に1を加算するだけなので、停止時間を短縮することができ、また、当該ページを参照するダミープロセスを生成し、当該ページが当該ダミープロセスに参照されることを記憶するようにしたので、障害時のプロセスについてのコアファイルを生成することができる。
また、障害が発生したプロセスに関連して動作するプロセスについてのコアファイルも生成されるようにしたので、障害の原因究明を容易にすることができる。
また、本実施の形態では、障害が発生したプロセスに関連して動作するプロセスのキューを一時的に退避するようにした。仮に、そのキューが実行された場合は、当該プロセスに参照されるページが書き換えられ、障害の原因究明が困難になることがあるが、本実施の形態では、そのような不都合を防止することができる。
なお、本実施の形態では、障害が発生したプロセスに制御を戻したが、これを行わないで、そのプロセスを終了させてもよい。
なお、上記のダンプ方法を実行させるコンピュータプログラムは、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスク、磁気テープなどのコンピュータ読み取り可能な記録媒体に格納し、陳列などして流通させたり、当該コンピュータプログラムをインターネットなどの通信網を介して伝送させてもよい。
本発明の実施の形態に係るコンピュータシステム1の構成図である。 プロセスリストを例示した図である。 コンピュータシステム1におけるフローチャートである。 メモリダンプ部114におけるフローチャートである。
符号の説明
1 コンピュータシステム
101 メモリ部
102 メモリ管理情報記憶部
103 参照数記憶部
104 ランキュー
106 スケジューラ
107 プロセスリスト生成部
108 プロセスリスト記憶部
109 インタフェース
110 障害発生時制御部
111 参照数加算部
112 ダミープロセス生成部
113 メモリ管理情報更新部
114 メモリダンプ部
115 コアファイル記憶部
101N、102N、201N、202N、301N 参照数
A、B、…、X プロセス
A’、B’ ダミープロセス
CA、CB コアファイル
L プロセスリスト
P101、P102、P201、P202、P301 ページ(メモリ領域)

Claims (6)

  1. プロセスに参照されるページが構成されるメモリ部と、
    どのプロセスにどのページが参照されるかが記憶されるメモリ管理情報記憶部と、
    ページを参照するプロセスの数である参照数が記憶される参照数記憶部と、
    プロセスを動作の順に示すランキューとを備え、
    プロセスが、ランキューにおける当該プロセスの記憶箇所に対応するタイミングが到来した際に実行権を与えられて動作を行い、且つ、当該動作でページを書き換えようとする場合、参照数記憶部において、当該ページを参照するプロセスの参照数=1か否かを当該プロセスが判定し、参照数=1の場合は、当該プロセスがページを書き換え、一方、参照数=1でない場合は、当該プロセスが当該ページをコピーし、且つ、コピーにより生じたページを書き換え、且つ、コピーされたページが当該プロセスにより参照されず、且つ、コピーにより生じたページが当該プロセスに参照されるようにメモリ管理情報記憶部を更新し、参照数記憶部において、コピーされたページを参照するプロセスの参照数から当該プロセスが1を減算し、コピーにより生じたページを参照するプロセスの参照数として当該プロセスが1を記憶させる、ダンプ装置が行うダンプ方法であって、
    ダンプ装置の参照数加算部が、障害が発生したプロセスにより参照されるページをメモリ管理情報記憶部で検索し、参照数記憶部において、当該検索された全ページの参照数に1を加算し、
    ダンプ装置のダミープロセス生成部が、前記ランキューに動作の順が示されたプロセスでなく、且つ、当該検索された全ページを参照するプロセスである、ダミープロセスを生成し、
    ダンプ装置のメモリ管理情報更新部が、当該検索されたページが当該ダミープロセスに参照されるようにメモリ管理情報記憶部を更新し、
    ダンプ装置のメモリダンプ部が、前記ダミープロセス生成部により生成されたダミープロセスを検索し、検索されたダミープロセスにより参照されるページをメモリ管理情報記憶部で検索し、検索された全ページをダンプしてなるコアファイルを生成する
    ことを特徴とするダンプ方法。
  2. ダンプ装置が、互いに関連して動作する複数のプロセスを示すプロセスリストが記憶されるプロセスリスト記憶部を備え、
    参照数加算部は、障害が発生したプロセスを示すプロセスリストがプロセスリスト記憶部に存在する場合、当該プロセスリストに示された各プロセスにつき、当該プロセスにより参照されるページをメモリ管理情報記憶部で検索し、参照数記憶部において、当該検索された全ページの参照数に1を加算し、
    ダミープロセス生成部は、当該プロセスリストに示された各プロセスにつき、当該プロセスにより参照されるページをメモリ管理情報記憶部で検索し、当該検索された全ページを参照するダミープロセスを生成し、
    メモリ管理情報更新部は、当該各ダミープロセスにつき、当該ダミープロセスの基となったプロセスにつきメモリ管理情報記憶部で検索されたページが当該ダミープロセスにより参照されるようにメモリ管理情報記憶部を更新する
    ことを特徴とする請求項1記載のダンプ方法。
  3. 参照数の加算に先立ち、プロセスリストに示された、障害が発生したプロセス以外のプロセスの記憶内容をランキューから退避させ、参照数の加算後に、当該プロセスの記憶内容をランキューに戻す
    ことを特徴とする請求項2記載のダンプ方法。
  4. プロセスに参照されるページが構成されるメモリ部と、
    どのプロセスにどのページが参照されるかが記憶されるメモリ管理情報記憶部と、
    ページを参照するプロセスの数である参照数が記憶される参照数記憶部と、
    プロセスを動作の順に示すランキューとを備え、
    プロセスが、ランキューにおける当該プロセスの記憶箇所に対応するタイミングが到来した際に実行権を与えられて動作を行い、且つ、当該動作でページを書き換えようとする場合、参照数記憶部において、当該ページを参照するプロセスの参照数=1か否かを当該プロセスが判定し、参照数=1の場合は、当該プロセスがページを書き換え、一方、参照数=1でない場合は、当該プロセスが当該ページをコピーし、且つ、コピーにより生じたページを書き換え、且つ、コピーされたページが当該プロセスにより参照されず、且つ、コピーにより生じたページが当該プロセスに参照されるようにメモリ管理情報記憶部を更新し、参照数記憶部において、コピーされたページを参照するプロセスの参照数から当該プロセスが1を減算し、コピーにより生じたページを参照するプロセスの参照数として当該プロセスが1を記憶させる、ダンプ装置であって、
    障害が発生したプロセスにより参照されるページをメモリ管理情報記憶部で検索し、参照数記憶部において、当該検索された全ページの参照数に1を加算する参照数加算部と、
    前記ランキューに動作の順が示されたプロセスでなく、且つ、当該検索された全ページを参照するプロセスである、ダミープロセスを生成するダミープロセス生成部と、
    当該検索されたページが当該ダミープロセスに参照されるようにメモリ管理情報記憶部を更新するメモリ管理情報更新部と、
    前記ダミープロセス生成部により生成されたダミープロセスを検索し、検索されたダミープロセスにより参照されるページをメモリ管理情報記憶部で検索し、検索された全ページをダンプしてなるコアファイルを生成するメモリダンプ部と
    を備えることを特徴とするダンプ装置。
  5. 互いに関連して動作する複数のプロセスを示すプロセスリストが記憶されるプロセスリスト記憶部を備え、
    参照数加算部は、障害が発生したプロセスを示すプロセスリストがプロセスリスト記憶部に存在する場合、当該プロセスリストに示された各プロセスにつき、当該プロセスにより参照されるページをメモリ管理情報記憶部で検索し、参照数記憶部において、当該検索された全ページの参照数に1を加算し、
    ダミープロセス生成部は、当該プロセスリストに示された各プロセスにつき、当該プロセスにより参照されるページをメモリ管理情報記憶部で検索し、当該検索された全ページを参照するダミープロセスを生成し、
    メモリ管理情報更新部は、当該各ダミープロセスにつき、当該ダミープロセスの基となったプロセスにつきメモリ管理情報記憶部で検索されたページが当該ダミープロセスにより参照されるようにメモリ管理情報記憶部を更新する
    ことを特徴とする請求項4記載のダンプ装置。
  6. 参照数の加算に先立ち、プロセスリストに示された、障害が発生したプロセス以外のプロセスの記憶内容をランキューから退避させ、参照数の加算後に、当該プロセスの記憶内容をランキューに戻す
    ことを特徴とする請求項5記載のダンプ装置。
JP2006199678A 2006-07-21 2006-07-21 ダンプ方法およびダンプ装置 Active JP4395496B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006199678A JP4395496B2 (ja) 2006-07-21 2006-07-21 ダンプ方法およびダンプ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006199678A JP4395496B2 (ja) 2006-07-21 2006-07-21 ダンプ方法およびダンプ装置

Publications (2)

Publication Number Publication Date
JP2008027232A JP2008027232A (ja) 2008-02-07
JP4395496B2 true JP4395496B2 (ja) 2010-01-06

Family

ID=39117799

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006199678A Active JP4395496B2 (ja) 2006-07-21 2006-07-21 ダンプ方法およびダンプ装置

Country Status (1)

Country Link
JP (1) JP4395496B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5286942B2 (ja) * 2008-05-30 2013-09-11 富士通株式会社 制御方法、制御プログラム及び情報処理装置
JP2012084069A (ja) * 2010-10-14 2012-04-26 Hitachi Ltd 計算機システム及び障害情報収集方法
WO2016121077A1 (ja) * 2015-01-30 2016-08-04 株式会社日立製作所 ダンプファイル生成方法及び装置
CN114201233A (zh) * 2021-11-18 2022-03-18 成都网思科平科技有限公司 一种基于快照参照的减少进程模块加载数据存储的方法

Also Published As

Publication number Publication date
JP2008027232A (ja) 2008-02-07

Similar Documents

Publication Publication Date Title
US7774636B2 (en) Method and system for kernel panic recovery
JP5682996B2 (ja) クライアントプログラム、端末、サーバ装置、サーバプログラム、システムおよび方法
JP2006031109A (ja) 管理システム及び管理方法
JP7190834B2 (ja) 装置およびコンピュータプログラム
JP2006286013A (ja) オブジェクト状態転送方法,オブジェクト状態転送装置およびオブジェクト状態転送プログラム並びにそのプログラムの記録媒体
US10768928B2 (en) Software development work item management system
JP2005346610A (ja) スナップショットの取得および利用のための記憶システムおよび方法
JP4395496B2 (ja) ダンプ方法およびダンプ装置
US7506212B2 (en) Distributed exception handling testing
JPWO2012108175A1 (ja) データベース更新通知方法
JP2005259057A (ja) 更新履歴管理装置及び記録媒体
US20090235126A1 (en) Batch processing apparatus and method
US9129275B2 (en) POS device
JP2007265137A (ja) マルチタスク処理方法及びマルチタスク処理装置
CN115495278A (zh) 异常修复方法、设备及存储介质
JP5001703B2 (ja) システム設計検証装置
JP6984377B2 (ja) 情報処理装置、画面表示システム及びプログラム
JP4661066B2 (ja) 情報処理装置
JP2008217202A (ja) ディスクアレイ装置及びファームウェア更新方法
US20180307662A1 (en) Information processing apparatus, information processing method, and non-transitory computer readable medium
JP4872328B2 (ja) 動作環境切り替えプログラム及び情報処理装置
JP4530645B2 (ja) コンピュータシステムの監視装置および監視方法
JPH11212845A (ja) バックアップデータ管理装置、バックアップデータ管理方法、及び記録媒体
JP2020086950A (ja) 情報処理装置、情報処理装置のダンプ管理方法、及び、情報処理装置のダンプ管理プログラム
JPH027156A (ja) 文書処理装置における文書バックアップ装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090423

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090512

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090617

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090929

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091019

R150 Certificate of patent or registration of utility model

Ref document number: 4395496

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121023

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121023

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131023

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350