JP5447841B2 - 情報処理装置、デバッグ情報取得方法、およびデバッグ情報取得プログラム - Google Patents

情報処理装置、デバッグ情報取得方法、およびデバッグ情報取得プログラム Download PDF

Info

Publication number
JP5447841B2
JP5447841B2 JP2010040006A JP2010040006A JP5447841B2 JP 5447841 B2 JP5447841 B2 JP 5447841B2 JP 2010040006 A JP2010040006 A JP 2010040006A JP 2010040006 A JP2010040006 A JP 2010040006A JP 5447841 B2 JP5447841 B2 JP 5447841B2
Authority
JP
Japan
Prior art keywords
access
instruction
access information
unit
storage unit
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.)
Expired - Fee Related
Application number
JP2010040006A
Other languages
English (en)
Other versions
JP2011175521A (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2010040006A priority Critical patent/JP5447841B2/ja
Publication of JP2011175521A publication Critical patent/JP2011175521A/ja
Application granted granted Critical
Publication of JP5447841B2 publication Critical patent/JP5447841B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明は、情報処理装置、デバッグ情報取得方法、およびデバッグ情報取得プログラムに関し、特に、メモリアクセスに関する情報を取得する情報処理装置、デバッグ情報取得方法、およびデバッグ情報取得プログラムに関する。
稼働中のコンピュータシステムにおいて、メモリに対するアクセス履歴をリアルタイムでメモリに保持しておき、異常なメモリアクセスによりメモリ内のデータが破壊された場合に、保持しておいたアクセス履歴を参照することにより、異常なメモリアクセスが行なわれた原因を調査することは有効な手段である。
コンピュータシステムにおける異常を解析するための構成として、たとえば、特許文献1(特開2001−14027号公報)には、以下のような技術が開示されている。すなわち、制御コントローラ内に配置されて、上記制御コントローラ内の制御プログラムが使用するメモリデータについて、所定周期前までと現在のプログラム命令の全入力値データおよび全出力値データを記憶手段に保存するデータ保存手段と、上記制御コントローラに接続された保守装置内に配置されて、上記データ保存手段によって記憶手段に保存された所定周期前までの全入力値データおよび全出力値データと現在の全入力値データおよび全出力値データとを読み出すデータ読み出し手段と、上記保守装置内に配置されて、上記データ読み出し手段の読み出した所定周期前までの全入力値データおよび全出力値データの値と現在の全入力値データおよび全出力値データの値を用いて、各周期毎の制御プログラムの命令実行結果データを表示するデータ表示手段とを備える。そして、制御コントローラ内の制御プログラムが複数のブロックに分割されている場合に、上記制御プログラムの、上記制御コントローラ内の記憶手段にデータを保存すべきブロックのブロック番号を、上記制御コントローラ内のデータ保存手段に対して指定するブロック指定手段を保守装置内に設ける。そして、上記データ保存手段が、上記ブロック指定手段によってブロック番号が指定された上記制御プログラムのブロックについてのみ、所定周期前までと現在のプログラム命令の全入力値データおよび全出力値データを記憶手段に保存する。
また、特許文献2(特開平7−191875号公報)には、以下のような技術が開示されている。すなわち、デバックのターゲットプログラムを1ステップ実行する度に、現在実行中のステップの命令により変更のあったレジスタ、メモリ、およびプログラムカウンタ等の情報をロギング情報として記憶していく。現ステップからスタートステップの方向へバックトレース要求がされた時、記憶されたロギング情報をもとにして1ステップずつ前ステップ(後方)の状態を再現していくことによって目的のステップにおける状態を再現し再実行を可能とする。
特開2001−14027号公報 特開平7−191875号公報
一般的に、メモリアクセスでは、局所的なアクセスが多数発生することが多い。このため、メモリに対するすべてのアクセス履歴を保持し続けることはメモリアクセス記録領域
の容量を考えると困難である。
このような問題点を解決する方法としては、記録するデータの形式を変更したり、アクセス履歴を保存する対象となるアクセス先のアドレス等を制限したりすることにより、保持するデータを削減することが考えられる。
しかしながら、異常なメモリアクセスがどのアドレスにおいていつ発生するかを予測することは困難である。また、プログラムは、異常な動作を行なうと、メモリにおける意図していないアドレスに異常な値を書き込むことがある。ところが、次に当該アドレスからデータを読み出すまで異常は検出されないところ、書き込みから読み出しまでの間隔が長い場合には、異常が検出された際にすでに書き込み時のメモリアクセス情報が消えている場合がある。
そして、特許文献1および特許文献2には、このような問題点を解決するための構成は開示されていない。
この発明は、上述の課題を解決するためになされたもので、その目的は、少ないメモリ容量でメモリアクセスに関する情報を適切に保存し、異常解析を容易にすることが可能な情報処理装置、デバッグ情報取得方法、およびデバッグ情報取得プログラムを提供することである。
上記課題を解決するために、この発明のある局面に係わる情報処理装置は、記憶部と、アクセス情報記録部と、上記記憶部のアドレスを指定し、上記記憶部から上記指定アドレスにおけるデータを読み出すかまたは上記記憶部の上記指定アドレスにデータを書き込むためのアクセス命令を少なくとも実行するための命令実行部と、上記記憶部において上記命令実行部が読み出しまたは書き込みを行なう単位の領域ごとに、上記アクセス命令に対応するアクセス情報を記録するためのトレース領域を上記アクセス情報記録部に設け、上記アクセス情報を取得して対応の上記トレース領域に保存するためのアクセス情報取得部と、上記トレース領域に保存された上記アクセス情報を出力するためのアクセス情報出力部とを備える。
上記課題を解決するために、この発明のある局面に係わるデバッグ情報取得方法は、記憶部を備える情報処理装置におけるデバッグ情報取得方法であって、上記記憶部のアドレスを指定し、上記記憶部から上記指定アドレスにおけるデータを読み出すかまたは上記記憶部の上記指定アドレスにデータを書き込むためのアクセス命令を実行するステップと、上記記憶部において上記アクセス命令によって読み出しまたは書き込みが行なわれる単位の領域ごとに、上記アクセス命令に対応するアクセス情報を記録するためのトレース領域を設け、上記アクセス情報を取得して対応の上記トレース領域に保存するステップと、上記トレース領域に保存された上記アクセス情報を出力するステップとを含む。
上記課題を解決するために、この発明のある局面に係わるデバッグ情報取得プログラムは、記憶部を備える情報処理装置におけるデバッグ情報取得プログラムであって、コンピュータに、上記記憶部のアドレスを指定し、上記記憶部から上記指定アドレスにおけるデータを読み出すかまたは上記記憶部の上記指定アドレスにデータを書き込むためのアクセス命令を実行するステップと、上記記憶部において上記アクセス命令によって読み出しまたは書き込みが行なわれる単位の領域ごとに、上記アクセス命令に対応するアクセス情報を記録するためのトレース領域を設け、上記アクセス情報を取得して対応の上記トレース領域に保存するステップと、上記トレース領域に保存された上記アクセス情報を出力するステップとを実行させる。
本発明によれば、少ないメモリ容量でメモリアクセスに関する情報を適切に保存し、異常解析を容易にすることができる。
本発明の実施の形態に係る情報処理装置の概略構成図である。 本発明の実施の形態に係る情報処理装置が提供する制御構造を示すブロック図である。 本発明の実施の形態に係る情報処理装置におけるメモリの領域およびメモリアクセス情報記録部の領域の対応関係を示す図である。 本発明の実施の形態に係る情報処理装置におけるメモリアクセス情報記録部に保存されるアクセス情報を示す図である。 本発明の実施の形態に係る情報処理装置がデバッグ情報取得処理を行なう際の動作手順を示すフローチャートである。
[概要]
本発明の実施の形態では、コンピュータシステム内のデバッグ情報保存領域に対してデバッグ情報をラップアラウンド方式で順次書き込んでいく方式の装置において、メモリアクセス単位、たとえばワード単位またはバイト単位で、かつロード命令およびストア命令ごとにデバッグ領域を分割して利用する。これにより、メモリにおける特定のアドレスにのみ多数のアクセスがあった場合でも、各アドレスの最終メモリアクセス情報が失われることを防ぐことができる。
本発明の実施の形態に係る情報処理装置は、典型的には、汎用的なアーキテクチャを有するコンピュータを基本構造としており、あらかじめインストールされたプログラムを実行することで各種機能を提供する。一般的に、このようなプログラムは、フレキシブルディスク(Flexible Disk)およびCD−ROM(Compact Disk Read Only Memory)などの記録媒体に格納されて、あるいはネットワークなどを介して流通する。
本発明の実施の形態に係るプログラムは、OS等の他のプログラムの一部に組み込まれて提供されるものであってもよい。この場合でも、本発明の実施の形態に係るプログラム自体は、上記のような組み込み先の他のプログラムが有するモジュールを含んでおらず、当該他のプログラムと協働して処理が実行される。すなわち、本発明の実施の形態に係るプログラムとしては、このような他のプログラムに組み込まれた形態であってもよい。
なお、代替的に、プログラムの実行により提供される機能の一部または全部を専用のハードウェア回路として実装してもよい。
以下、本発明の実施の形態について図面を用いて説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰り返さない。
[装置構成]
図1は、本発明の実施の形態に係る情報処理装置の概略構成図である。図1を参照して、情報処理装置201は、演算処理部であるCPU(Central Processing Unit)101と、メインメモリ102およびハードディスク103と、入力インターフェイス104と、表示コントローラ105と、データリーダ/ライタ106と、通信インターフェイス107とを備える。これらの各部は、バス121を介して互いにデータ通信可能に接続される。
CPU101は、ハードディスク103に格納されたプログラム(コード)をメインメモリ102に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ102は、典型的には、DRAM(Dynamic Random Access Memory)などの揮発性の記憶装置であり、ハードディスク103から読み出されたプログラムに加えて、各種の演算処理結果を示すデータなどを保持する。また、ハードディスク103は不揮発性の磁気記憶装置であり、CPU101で実行されるプログラムに加えて、各種設定値などが格納される。このハードディスク103にインストールされるプログラムは、後述するように、記録媒体111に格納された状態で流通する。なお、ハードディスク103に加えて、あるいはハードディスク103に代えて、フラッシュメモリなどの半導体記憶装置を採用してもよい。
入力インターフェイス104は、CPU101とキーボード108、マウス109および図示しないタッチパネルなどの入力部との間のデータ伝送を仲介する。すなわち、入力インターフェイス104は、ユーザが入力部を操作することで与えられる操作指令などの外部からの入力を受け付ける。
表示コントローラ105は、表示部の典型例であるディスプレイ110と接続され、ディスプレイ110での表示を制御する。すなわち、表示コントローラ105は、CPU101による画像処理の結果などをユーザに対して表示する。ディスプレイ110は、たとえばLCD(Liquid Crystal Display)またはCRT(Cathode Ray Tube)である。
データリーダ/ライタ106は、CPU101と記録媒体111の間のデータ伝送を仲介する。すなわち、記録媒体111は、情報処理装置201で実行されるプログラムなどが格納された状態で流通し、データリーダ/ライタ106は、この記録媒体111からプログラムを読み出す。また、データリーダ/ライタ106は、CPU101の内部指令に応答して、情報処理装置201における処理結果などを記録媒体111へ書き込む。なお、記録媒体111は、たとえば、CF(Compact Flash)およびSD(Secure Digital)などの汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)などの磁気記憶媒体、またはCD−ROM(Compact Disk Read Only Memory)などの光学記憶媒体である。
通信インターフェイス107は、CPU101とパーソナルコンピュータおよびサーバ装置などの間のデータ伝送を仲介する。通信インターフェイス107は、典型的には、イーサネット(登録商標)またはUSB(Universal Serial Bus)の通信機能を有する。なお、記録媒体111に格納されたプログラムを情報処理装置201にインストールする形態に代えて、通信インターフェイス107を介して配信サーバなどからダウンロードしたプログラムを情報処理装置201にインストールしてもよい。
また、情報処理装置201には、必要に応じてプリンタなどの他の出力装置が接続されてもよい。
[制御構造]
次に、情報処理装置201における各種機能を提供するための制御構造について説明する。
図2は、本発明の実施の形態に係る情報処理装置が提供する制御構造を示すブロック図である。
図2に示す情報処理装置201の各ブロックは、ハードディスク103に格納されたプ
ログラム(コード)などをメインメモリ102に展開して、CPU101に実行させることで提供される。なお、図2に示すモジュールの一部または全部がハードウェアに実装されているファームウェアによって提供される場合もある。あるいは、図2に示す制御構造の一部または全部を専用ハードウェアおよび/または配線回路によって実現してもよい。
図2を参照して、情報処理装置201は、CPU101と、メモリ(記憶部)3と、メモリアクセス情報記録部4と、入出力部6とを備える。CPU101は、その制御構造として、命令実行部1と、メモリアクセス情報取得部2と、メモリアクセス情報出力部5とを備える。メモリ3およびメモリアクセス情報記録部4は、たとえば図1に示すメインメモリ102に相当する。入出力部6は、たとえば図1に示すハードディスク103またはディスプレイ110に相当する。
CPU101は、図2に示す各部の他に、多くのユニットによって構成されるのが一般的であるが、説明を簡単にするために、本発明に関係しないユニットについては図示していない。
命令実行部1は、メモリ3のアドレスを指定し、メモリ3から指定したアドレス(以下、指定アドレスとも称する。)におけるデータを読み出すかまたはメモリ3の指定アドレスにデータを書き込むためのアクセス命令を少なくとも実行する。
メモリアクセス情報取得部2は、命令実行部1からメモリ3に対するアクセスが発生すると、当該アクセス情報を取得してメモリアクセス情報記録部4に記録する。
メモリアクセス情報出力部5は、メモリアクセス情報記録部4に記録されたアクセス情報を入出力部6へ出力する。
図3は、本発明の実施の形態に係る情報処理装置におけるメモリの領域およびメモリアクセス情報記録部の領域の対応関係を示す図である。
図3を参照して、メモリアクセス情報取得部2は、メモリ3において命令実行部1が読み出しまたは書き込みを行なう単位の領域ごと、たとえば各アドレス0x00001000,0x00001001,0x00001002,0x00001003のアクセス単位ごとに、アクセス命令に対応するアクセス情報を記録するためのトレース領域をアクセス情報記録部4に論理的に設ける。
たとえば、トレース領域は、命令実行部1がメモリ3から指定アドレスにおけるデータを読み出すためのロード命令に対応するロード用領域と、命令実行部1がメモリ3の指定アドレスにデータを書き込むためのストア命令に対応するストア用領域とに論理的に分割される。
メモリアクセス情報取得部2は、アクセス命令がロード命令であるかストア命令であるかに応じて、対応のロード用領域またはストア用領域にアクセス情報を保存する。
具体的には、メモリアクセス情報記録部4は、あらかじめ命令実行部1によるメモリアクセスの最小単位に合わせて複数のバッファすなわちトレース領域に論理的に分割されており、アクセス先のアドレスとロード命令およびストア命令とによってどのトレース領域に保存するかが決定される。分割された各トレース領域は一定の容量を有しており、保存されるアクセス情報がその容量を超えたときはラップアラウンド方式によって古い情報が削除され、上書きされる。
図4は、本発明の実施の形態に係る情報処理装置におけるメモリアクセス情報記録部に保存されるアクセス情報を示す図である。
図4を参照して、メモリアクセス情報取得部2は、命令実行部1からメモリ3に対してロード命令またはストア命令が発行されると、インストラクションアドレス、アクセスアドレス、およびメモリ内容を、メモリアクセス情報記録部4に保存する。すなわち、メモリアクセス情報取得部2は、アクセス情報として、アクセス命令の保存場所の情報、アクセス命令が示す指定アドレスおよびメモリ3の指定アドレスにおけるデータを少なくとも取得する。インストラクションアドレスは、たとえばメモリ3に保存されている。
ユーザは、異常なメモリアクセスでメモリ内容が破壊される不具合についてデバッグを行なう際などに、メモリアクセス情報出力部5および入出力部6を利用してメモリアクセス情報記録部4に記録されたアクセス情報の履歴を参照する。これにより、ユーザは異常なメモリアクセスが発生したメモリアドレスに対するアクセス情報を利用したデバッグを行なうことができる。
[動作]
次に、本発明の実施の形態に係る情報処理装置の動作について図面を用いて説明する。本発明の実施の形態では、情報処理装置201を動作させることによって、本発明の実施の形態に係るデバッグ情報取得方法が実施される。よって、本発明の実施の形態に係るデバッグ情報取得方法の説明は、以下の情報処理装置201の動作説明に代える。なお、以下の説明においては、適宜図2を参照する。
図5は、本発明の実施の形態に係る情報処理装置がデバッグ情報取得処理を行なう際の動作手順を示すフローチャートである。
図5を参照して、命令実行部1は、アクセス命令を実行する。すなわち、命令実行部1は、メモリ3のアドレスを指定し、メモリ3から指定アドレスにおけるデータを読み出すロード命令またはメモリ3における指定アドレスにデータを書き込むためのストア命令を実行する(ステップS2)。
次に、メモリアクセス情報取得部2は、命令実行部1の実行したロード命令またはストア命令に対応するアクセス情報を取得する(ステップS4)。
次に、メモリアクセス情報取得部2は、アクセス情報記録部4にトレース領域を設け、取得したアクセス情報をアクセス情報記録部4における対応のトレース領域に保存する(ステップS6)。
次に、メモリアクセス情報出力部5は、アクセス情報記録部4に保存されたアクセス情報をハードディスク103へ出力する(ステップS8)。
そして、ユーザは、異常なメモリアクセスでメモリ内容が破壊される不具合が発生すると、たとえばハードディスク103に記録されたアクセス情報を参照することにより、デバッグを行なう。
ところで、一般的に、メモリアクセスでは、局所的なアクセスが多数発生することが多い。このため、すべてのアクセス履歴を保持し続けることはメモリアクセス記録領域の容量を考えると困難である。このような問題点を解決する方法としては、記録するデータの形式を変更したり、アクセス履歴を保存する対象となるアクセス先のアドレス等を制限したりすることにより、保持するデータを削減する方法が考えられる。しかしながら、異常
なメモリアクセスがどのアドレスにおいていつ発生するかを予測することは困難であり、また、異常な値が書き込まれたアドレスからデータを読み出すまで異常は検出されないところ、書き込みから読み出しまでの間隔が長い場合には、異常が検出された際にすでに書き込み時のメモリアクセス情報が消えている場合がある。
これに対して、本発明の実施の形態では、メモリアクセス情報取得部2は、メモリ3において命令実行部1が読み出しまたは書き込みを行なう単位の領域ごとに、アクセス命令に対応するアクセス情報を記録するためのトレース領域をアクセス情報記録部4に設ける。そして、メモリアクセス情報取得部2は、アクセス情報を取得してアクセス情報記録部4における対応のトレース領域に保存する。メモリアクセス情報出力部5は、アクセス情報記録部4に保存されたアクセス情報を出力する。
このような構成により、メモリにおける領域の一部に多数のメモリアクセスがあっても、各アドレスの最終のアクセス情報が消えることを防ぐことができるため、異常なメモリアクセスのデバッグを容易に行なうことができる。また、メモリに対するすべてのアクセス履歴を保持し続ける必要もなくなる。また、異常な値が書き込まれたアドレスからデータを読み出すまでの間隔が長い場合でも、書き込み時のメモリアクセス情報が消えることを防ぐことができる。
すなわち、本発明の実施の形態に係る情報処理装置201における各構成要素のうち、命令実行部1、メモリアクセス情報取得部2、メモリ3、アクセス情報記録部4およびメモリアクセス情報出力部5からなる最小構成により、少ないメモリ容量でメモリアクセスに関する情報を適切に保存し、異常解析を容易にするという本発明の目的を達成することが可能となる。
また、本発明の実施の形態では、たとえば、トレース領域は、命令実行部1がメモリ3から指定アドレスにおけるデータを読み出すためのロード命令に対応するロード用領域と、命令実行部1がメモリ3の指定アドレスにデータを書き込むためのストア命令に対応するストア用領域とに分割される。そして、メモリアクセス情報取得部2は、アクセス命令がロード命令であるかストア命令であるかに応じて、対応のロード用領域またはストア用領域にアクセス情報を保存する。
すなわち、本発明の実施の形態では、メモリをアクセス単位ごとかつロード命令およびストア命令ごとに分割し、分割した単位でアクセス情報を記録する。このような構成により、メモリにおける各アドレスの最終のアクセス情報が消えることをさらに確実に防ぐことができる。
また、本発明の実施の形態では、メモリアクセス情報取得部2は、アクセス情報として、アクセス命令の保存場所の情報、アクセス命令が示す指定アドレスおよびメモリ3の指定アドレスにおけるデータを少なくとも取得する。このような構成により、異常解析を容易にすることが可能となる。
なお、本発明の実施の形態では、メモリ3およびアクセス情報記録部4はメインメモリ102に相当するとしたが、これに限定するものではない。メモリ3およびアクセス情報記録部4がそれぞれ物理的に別個のメモリであってもよい。
上記実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記説明ではなく特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
本発明によれば、少ないメモリ容量でメモリアクセスに関する情報を適切に保存し、異常解析を容易にすることができる。したがって、本発明は、産業上の利用可能性を有している。
上記実施の形態の一部または全部は以下の付記のようにも記載されうるが、本発明の範囲は、以下の付記に限定されるものではない。
[付記1]
記憶部を備える情報処理装置におけるデバッグ情報取得方法であって、
前記記憶部のアドレスを指定し、前記記憶部から前記指定アドレスにおけるデータを読み出すかまたは前記記憶部の前記指定アドレスにデータを書き込むためのアクセス命令を実行するステップと、
前記記憶部において前記アクセス命令によって読み出しまたは書き込みが行なわれる単位の領域ごとに、前記アクセス命令に対応するアクセス情報を記録するためのトレース領域を設け、前記アクセス情報を取得して対応の前記トレース領域に保存するステップと、
前記トレース領域に保存された前記アクセス情報を出力するステップとを含む、デバッグ情報取得方法。
[付記2]
前記アクセス情報を取得して保存するステップにおいては、前記アクセス情報として、前記アクセス命令の保存場所の情報、前記アクセス命令が示す前記指定アドレスおよび前記記憶部の前記指定アドレスにおけるデータを少なくとも取得する、付記1に記載のデバッグ情報取得方法。
[付記3]
前記アクセス情報を取得して保存するステップにおいては、前記トレース領域を、前記記憶部から前記指定アドレスにおけるデータを読み出すためのロード命令に対応するロード用領域と、前記記憶部の前記指定アドレスにデータを書き込むためのストア命令に対応するストア用領域とに分割し、前記アクセス命令が前記ロード命令であるか前記ストア命令であるかに応じて、対応の前記ロード用領域または前記ストア用領域に前記アクセス情報を保存する、付記1または2に記載のデバッグ情報取得方法。
[付記4]
記憶部を備える情報処理装置におけるデバッグ情報取得プログラムであって、コンピュータに、
前記記憶部のアドレスを指定し、前記記憶部から前記指定アドレスにおけるデータを読み出すかまたは前記記憶部の前記指定アドレスにデータを書き込むためのアクセス命令を実行するステップと、
前記記憶部において前記アクセス命令によって読み出しまたは書き込みが行なわれる単位の領域ごとに、前記アクセス命令に対応するアクセス情報を記録するためのトレース領域を設け、前記アクセス情報を取得して対応の前記トレース領域に保存するステップと、
前記トレース領域に保存された前記アクセス情報を出力するステップとを実行させる、デバッグ情報取得プログラム。
[付記5]
前記アクセス情報を取得して保存するステップにおいては、前記アクセス情報として、前記アクセス命令の保存場所の情報、前記アクセス命令が示す前記指定アドレスおよび前記記憶部の前記指定アドレスにおけるデータを少なくとも取得する、付記4に記載のデバッグ情報取得プログラム。
[付記6]
前記アクセス情報を取得して保存するステップにおいては、前記トレース領域を、前記記憶部から前記指定アドレスにおけるデータを読み出すためのロード命令に対応するロード用領域と、前記記憶部の前記指定アドレスにデータを書き込むためのストア命令に対応するストア用領域とに分割し、前記アクセス命令が前記ロード命令であるか前記ストア命令であるかに応じて、対応の前記ロード用領域または前記ストア用領域に前記アクセス情報を保存する、付記4または5に記載のデバッグ情報取得プログラム。
1 命令実行部
2 メモリアクセス情報取得部
3 メモリ(記憶部)
4 メモリアクセス情報記録部
5 メモリアクセス情報出力部
6 入出力部
101 CPU
102 メインメモリ
103 ハードディスク
104 入力インターフェイス
105 表示コントローラ
106 データリーダ/ライタ
107 通信インターフェイス
108 キーボード
109 マウス
110 ディスプレイ
111 記録媒体
121 バス
201 情報処理装置

Claims (5)

  1. 記憶部と、
    アクセス情報記録部と、
    前記記憶部のアドレスを指定し、前記記憶部から前記指定アドレスにおけるデータを読み出すかまたは前記記憶部の前記指定アドレスにデータを書き込むためのアクセス命令を少なくとも実行するための命令実行部と、
    前記記憶部において前記命令実行部が読み出しまたは書き込みを行なう単位の領域ごとに、前記アクセス命令に対応するアクセス情報を記録するためのトレース領域を前記アクセス情報記録部に設け、前記アクセス情報を取得して対応の前記トレース領域に保存するためのアクセス情報取得部と、
    前記トレース領域に保存された前記アクセス情報を出力するためのアクセス情報出力部とを備える、情報処理装置。
  2. 前記アクセス情報取得部は、前記アクセス情報として、前記アクセス命令の保存場所の情報、前記アクセス命令が示す前記指定アドレスおよび前記記憶部の前記指定アドレスにおけるデータを少なくとも取得する、請求項1に記載の情報処理装置。
  3. 前記トレース領域は、さらに、前記命令実行部が前記記憶部から前記指定アドレスにおけるデータを読み出すためのロード命令に対応するロード用領域と、前記命令実行部が前記記憶部の前記指定アドレスにデータを書き込むためのストア命令に対応するストア用領域とに分割され、
    前記アクセス情報取得部は、前記アクセス命令が前記ロード命令であるか前記ストア命令であるかに応じて、対応の前記ロード用領域または前記ストア用領域に前記アクセス情報を保存する、請求項1または2に記載の情報処理装置。
  4. 記憶部を備える情報処理装置におけるデバッグ情報取得方法であって、
    前記記憶部のアドレスを指定し、前記記憶部から前記指定アドレスにおけるデータを読み出すかまたは前記記憶部の前記指定アドレスにデータを書き込むためのアクセス命令を実行するステップと、
    前記記憶部において前記アクセス命令によって読み出しまたは書き込みが行なわれる単位の領域ごとに、前記アクセス命令に対応するアクセス情報を記録するためのトレース領域を設け、前記アクセス情報を取得して対応の前記トレース領域に保存するステップと、
    前記トレース領域に保存された前記アクセス情報を出力するステップとを含む、デバッグ情報取得方法。
  5. 記憶部を備える情報処理装置におけるデバッグ情報取得プログラムであって、コンピュータに、
    前記記憶部のアドレスを指定し、前記記憶部から前記指定アドレスにおけるデータを読み出すかまたは前記記憶部の前記指定アドレスにデータを書き込むためのアクセス命令を実行するステップと、
    前記記憶部において前記アクセス命令によって読み出しまたは書き込みが行なわれる単位の領域ごとに、前記アクセス命令に対応するアクセス情報を記録するためのトレース領域を設け、前記アクセス情報を取得して対応の前記トレース領域に保存するステップと、
    前記トレース領域に保存された前記アクセス情報を出力するステップとを実行させる、デバッグ情報取得プログラム。
JP2010040006A 2010-02-25 2010-02-25 情報処理装置、デバッグ情報取得方法、およびデバッグ情報取得プログラム Expired - Fee Related JP5447841B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010040006A JP5447841B2 (ja) 2010-02-25 2010-02-25 情報処理装置、デバッグ情報取得方法、およびデバッグ情報取得プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010040006A JP5447841B2 (ja) 2010-02-25 2010-02-25 情報処理装置、デバッグ情報取得方法、およびデバッグ情報取得プログラム

Publications (2)

Publication Number Publication Date
JP2011175521A JP2011175521A (ja) 2011-09-08
JP5447841B2 true JP5447841B2 (ja) 2014-03-19

Family

ID=44688311

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010040006A Expired - Fee Related JP5447841B2 (ja) 2010-02-25 2010-02-25 情報処理装置、デバッグ情報取得方法、およびデバッグ情報取得プログラム

Country Status (1)

Country Link
JP (1) JP5447841B2 (ja)

Also Published As

Publication number Publication date
JP2011175521A (ja) 2011-09-08

Similar Documents

Publication Publication Date Title
JP2011008460A (ja) ダンプ出力制御装置、ダンプ出力制御プログラム、ダンプ出力制御方法
CN105824750A (zh) 一种在NorFlash程序空间调试的软断点模拟方法
JP5447841B2 (ja) 情報処理装置、デバッグ情報取得方法、およびデバッグ情報取得プログラム
JP2007094986A (ja) シミュレーション装置およびシミュレーション方法
CN113874802B (zh) 控制系统、可编程逻辑控制器以及信息处理方法
JP2009223714A (ja) 演算回路及び演算回路の異常解析方法
JP2007034825A (ja) デバッグ装置
JP5001703B2 (ja) システム設計検証装置
JP2006331391A (ja) データ処理装置及びデータ処理方法
CN113470725A (zh) 一种动态随机存储器的测试方法及装置
JPH04112344A (ja) データベースの疑似更新方式
KR101225577B1 (ko) 어셈블리 언어 코드의 분석 장치 및 방법
JP2006079485A (ja) 電子計算機における障害解析用情報収集方式
JP5935319B2 (ja) 回路エミュレーション装置、回路エミュレーション方法及び回路エミュレーションプログラム
JP5937530B2 (ja) ソフトエラー解析装置、エラー情報作成装置
JP7401751B2 (ja) 情報処理プログラム、情報処理方法及び情報処理システム
JP5277217B2 (ja) 情報処理装置およびコンピュータープログラム
JP4858779B2 (ja) 分散並列プログラムの障害解析ファイル軽量化装置、その方法及びそのプログラム
JP2011164730A (ja) Cpuでの命令実行と非同期的に発生するメモリアクセスエラーの原因究明のための情報処理装置、異常分析方法、および異常分析プログラム
JP2007156594A (ja) プログラムトレース装置及び方法
WO2019193620A1 (ja) 履歴記憶装置、履歴記憶方法及び履歴記憶プログラム
CN117435495A (zh) 函数测试方法、装置、计算机可读存储介质及电子设备
JP5762229B2 (ja) プログラム性能の測定方法
JP2023031907A (ja) 情報処理装置および情報処理装置の制御方法
JP2008242592A (ja) メモリ監視回路、情報処理装置、及びメモリ監視方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131120

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: 20131204

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131217

R150 Certificate of patent or registration of utility model

Ref document number: 5447841

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees