JP2002149444A - ソフトウェア試験システム及びソフトウェア試験方法及びソフトウェア試験方法を計算機で実現するためのプログラムを記録した計算機で読み取り可能なプログラム記録媒体及びソフトウェア試験方法を計算機で実現するためのプログラム - Google Patents

ソフトウェア試験システム及びソフトウェア試験方法及びソフトウェア試験方法を計算機で実現するためのプログラムを記録した計算機で読み取り可能なプログラム記録媒体及びソフトウェア試験方法を計算機で実現するためのプログラム

Info

Publication number
JP2002149444A
JP2002149444A JP2000344656A JP2000344656A JP2002149444A JP 2002149444 A JP2002149444 A JP 2002149444A JP 2000344656 A JP2000344656 A JP 2000344656A JP 2000344656 A JP2000344656 A JP 2000344656A JP 2002149444 A JP2002149444 A JP 2002149444A
Authority
JP
Japan
Prior art keywords
test
software
program
instruction
trace data
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.)
Withdrawn
Application number
JP2000344656A
Other languages
English (en)
Inventor
Yoshiaki Katayama
吉章 片山
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2000344656A priority Critical patent/JP2002149444A/ja
Publication of JP2002149444A publication Critical patent/JP2002149444A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

(57)【要約】 【課題】 書き換えができないメモリに記録されたプロ
グラムのコードを変更することなく、試験を行う手段を
提供する。 【解決手段】 ハードウェアとしてメモリ保護機能を搭
載した組込み機器において、以下の手段を備えたことを
特徴とするソフトウェアのトレースデータ蓄積方法を実
現するシステム。 (a)トレースデータ蓄積機能を有効・無効に制御する
トレースデータ蓄積機能制御手段4、(b)トレースデ
ータを取得したいところに配置され、特定メモリ領域へ
のアクセスを行うメモリアクセス命令5、(c)トレー
スデータの蓄積処理を行うトレースデータ蓄積処理手段
6。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、製品リリース用
ソフトウェアにわずかな実行コード(例えば、メモリア
クセス命令)を埋め込むだけで、ソフトウェアの試験を
行う手段を提供するものである。
【0002】
【従来の技術】一般的に、組込み機器のソフトウェアを
デバッグする際、OSのシステムコール処理やタスク切
替え処理がどのように行われたかを調査するため、トレ
ースデータを蓄積する。従来、トレースデータ蓄積を行
うとソフトウェアの動作が遅くなるため、製品リリース
時にはトレースデータ蓄積機能を持たないソフトウェア
を準備するか、もしくはトレースデータ蓄積機能を無効
にするスイッチ(フラグ)を設け、製品リリース時には
トレースデータ蓄積機能を無効にしていた。
【0003】
【発明が解決しようとする課題】しかし、前者の場合、
トレースデータ蓄積機能を有効にしたい時にはソフトウ
ェアを入れ替えなければならず、組込み機器動作中にト
レース機能を有効、無効にすることができない。この問
題を回避する方法として、実行プログラムコードを動作
中に書き換えるという方法も考えられるが、実行プログ
ラムコードがROMに置かれている場合、実行プログラ
ムコードを書き換えることは不可能であり、この問題を
回避できない。
【0004】後者の場合、トレースデータ蓄積機能は常
に実行プログラムコードに含まれているため、実行プロ
グラムコードを書き換えなくても、トレースデータ蓄積
機能を有効もしくは無効にすることができる。しかしな
がら、トレースデータ蓄積機能を無効にした場合でも、
フラグ読み出し、フラグ比較、比較結果による分岐とい
う処理を行わなければならず、トレースデータ蓄積機能
を持たないソフトウェアと比較すると、そのオーバヘッ
ドは大きいという問題点があった。また、トレースデー
タ蓄積機能だけでなく、組込み機器ソフトウェアの性能
試験を行うための性能測定機能に関しても、上記トレー
スデータ蓄積機能と同様の問題があった。
【0005】この発明は、プログラムのコードを変更す
ることなく、即ち、ソフトウェアを入れ替えることな
く、ソフトウェアの試験を行う手段を提供することを目
的とする。さらに、この発明は、ソフトウェアの試験を
行う手段を実現するために実行する処理のオーバーヘッ
ドを少なくすることを目的とする。
【0006】
【課題を解決するための手段】この発明に係るソフトウ
ェア試験システムは、試験処理を発生させる試験処理発
生命令を組み込んだプログラムを記憶するプログラム記
憶部と、上記プログラム記憶部に記憶されたプログラム
に組み込まれた試験処理発生命令を実行した結果に基づ
いて起動され、ソフトウェアの試験を実行する試験実行
部と、上記試験処理発生命令の実行を制御することによ
って、上記試験実行部の起動を有効・無効にする試験機
能制御部と、を備えることを特徴とする。
【0007】上記試験処理発生命令は、例外処理を発生
させる命令であり、上記試験機能制御部は、上記試験処
理発生命令を実行することによって発生する例外処理に
よって、上記試験実行部の起動を有効・無効にすること
を特徴とする。
【0008】上記ソフトウェア試験システムは、さら
に、メモリ保護機能を有するメモリ領域を備え、上記試
験処理発生命令は、上記メモリ領域をアクセスするメモ
リアクセス命令であり、上記試験機能制御部は、上記メ
モリ領域へのメモリ保護機能を用いて、上記試験処理発
生命令を実行したときに例外処理を発生させ、上記例外
処理が発生したときに、上記試験実行部を起動する命令
を実行させることを特徴とする。
【0009】上記試験実行部は、トレースデータを蓄積
するトレース蓄積処理部を含み、上記試験処理発生命令
は、上記プログラムの中で、トレースデータを取得する
開始点に組み込まれることを特徴とする。
【0010】上記試験実行部は、性能を測定する性能測
定処理部を含み、上記試験処理発生命令は、上記プログ
ラムの中で、性能を測定する開始点に組み込まれること
を特徴とする。
【0011】上記ソフトウェア試験システムは、さら
に、上記メモリ領域を指定するメモリ領域管理テーブル
を備え、上記試験機能制御部は、上記試験処理発生命令
が上記メモリ領域管理テーブルで指定されたアドレスを
アクセスするメモリアクセス命令の場合に、上記試験実
行部を起動する命令を実行させることを特徴とする。
【0012】上記プログラム記憶部は、書き換えができ
ないメモリであることを特徴とする。
【0013】この発明に係るソフトウェア試験方法は、
試験を実行する試験実行部によって、ソフトウェアを試
験するソフトウェア試験方法において、試験処理を発生
させる試験処理発生命令を含むプログラムを実行するこ
とによって上記試験実行部を起動し、試験処理発生命令
の実行を制御することによって、上記試験実行部の起動
を有効・無効にすることを特徴とする。
【0014】この発明に係るプログラムを記録した計算
機で読み取り可能なプログラム記録媒体は、試験を実行
する試験実行部によって、ソフトウェアを試験するソフ
トウェア試験方法を計算機で実現するためのプログラム
を記録した計算機で読み取り可能なプログラム記録媒体
において、試験処理を発生させる試験処理発生命令を含
むソフトウェアを実行することによって上記試験実行部
を起動し、試験処理発生命令の実行を制御することによ
って、上記試験実行部の起動を有効・無効にすることを
特徴とするソフトウェア試験方法を計算機で実現するた
めのプログラムを記録した計算機で読み取り可能なプロ
グラム記録媒体であることを特徴とする。
【0015】
【発明の実施の形態】実施の形態1.図1は、この発明
の実施の形態1である組込み機器におけるソフトウェア
のトレースデータ蓄積方法を示すものである。図におい
て、1はターゲット機器、2は開発ホストマシン、3は
ターゲット機器1が持つ特定メモリ領域、4はトレース
データ蓄積機能制御手段(トレースデータ蓄積機能制御
部)、5は特定メモリ領域3へのアクセスを行うメモリ
アクセス命令、6はトレースデータ蓄積処理手段、10
はOS(OperatingSystem)及びアプリ
ケーション(試験対象となるソフトウェアの一例であ
る。ソフトウェアは、1つのプログラム、或いは、複数
のプログラムの集合によって構成されている。)であ
る。
【0016】この実施の形態では、例外処理発生命令
(例外処理を発生させる命令)は、メモリアクセス命令
5(メモリ領域の任意のアドレスをアクセス(読み書
き)する命令)を一例として説明する。例外処理発生命
令は、ソフトウェアを試験する試験処理を発生させる試
験処理発生命令の一例である。また、上記トレースデー
タ蓄積処理手段6は、上記試験処理発生命令を実行する
ことによって起動され、ソフトウェアの試験を実行する
試験実行部の一例である。
【0017】上記トレースデータ蓄積機能制御手段4
は、試験実行部の起動を有効・無効にすることを、試験
処理発生命令によって制御する試験機能制御部の一例で
ある。また、上記OS及びアプリケーション10は、図
1では、明記していないが、プログラムを記憶するプロ
グラム記憶部に記憶される。
【0018】まず、トレースデータ蓄積処理を行う場合
の動作を図2を用いて説明する。トレースデータ蓄積処
理を有効にしたい時に、トレースデータ蓄積機能制御手
段4において、ハードウェア(ここでは、メモリ領域を
一例とする)のメモリ保護機能を利用し、S101にお
いて、メモリアクセス違反例外処理ベクタの設定(メモ
リアクセス違反例外発生時の処理の設定)を行うことに
よって、メモリアクセス違反があった場合に、トレース
データ蓄積処理手段6にジャンプするように設定する。
S102において、特定メモリ領域3へのアクセス(書
き込み)を保護するように設定する。これにより、OS
及びアプリケーションプログラム10が、S111にお
いてメモリアクセス命令5を実行すると、メモリアクセ
ス違反例外(書き込みを保護するように設定された特定
メモリ領域3へアクセスすることをによるアクセス違反
の例外)が発生し、プロセッサがトレースデータ蓄積処
理手段6に実行を移す。
【0019】トレースデータ蓄積処理手段6では、S1
21において、プロセッサが持つすべてのレジスタ、も
しくはトレースデータ蓄積処理手段6内で変更されるレ
ジスタのみを保存し、S122において、トレースデー
タを蓄積する。トレースデータとしては、特定メモリ領
域3に書き込もうとした値、もしくはアクセスしようと
した特定メモリ領域のアドレス、もしくは特定メモリ領
域3にアクセスしようとしたプログラムの実行アドレス
などを利用し、そこからデータを生成することができ
る。
【0020】例えば、システムコールトレースの場合、
特定メモリ領域3にアクセスしようとしたプログラムの
実行アドレスからどのシステムコールが発行されたかを
特定し、それをトレースデータに含めることができる。
また、特定メモリ領域3に書き込む値をシステムコール
の引数の値にすることによって、発行されたシステムコ
ールの引数をトレースデータに含めることもできる。ト
レースデータを蓄積した後、S123において、保存し
ておいたレジスタの値を復帰させ、プロセッサのリター
ン命令を用いて、メモリアクセス命令の次の命令に処理
を戻す。
【0021】次に、トレースデータ蓄積処理を行わない
場合の動作を図3を用いて説明する。トレースデータ蓄
積処理を無効にしたい時に、トレースデータ蓄積機能制
御手段4において、ハードウェアのメモリ保護機能を利
用し、S131において、特定メモリ領域3へのアクセ
ス(書き込み)を保護しないように設定する。これによ
り、S111において、OS及びアプリケーションプロ
グラム10がメモリアクセス命令5を実行しても、メモ
リアクセス違反例外は発生せず、単に無意味なデータが
特定メモリ領域3に書き込まれるだけとなる。
【0022】以上のように、メモリアクセス(この実施
の形態では、特定メモリ領域3への書き込みを一例とす
る)という最小限の実行コードだけをソフトウェアに埋
め込むことによって、トレースデータ蓄積処理を実現す
ることができる。その結果、組込み機器動作中でもトレ
ースデータ蓄積機能を有効・無効にできるだけでなく、
無効にした場合に、フラグ読み出し、フラグ比較、比較
結果による分岐等の処理を行う必要がないため、メモリ
アクセス命令一回分のごく僅かなオーバヘッドだけで済
む。
【0023】また、この発明に係るソフトウェア試験シ
ステム及び方法は、書き換えができないメモリ(例え
ば、ROM(Read Only Memory))に
搭載されるプログラムを試験するときに有効である。
【0024】この実施の形態のソフトウェア試験システ
ム及び方法によれば、ハードウェアとしてメモリ保護機
能を搭載した組込み機器において、組込み機器の動作中
であっても、実行プログラムコードを書き換えることな
く、トレースデータ蓄積機能を有効にしたり、無効にし
たりすることが可能となる。しかも、トレースデータ蓄
積機能を無効にした場合に、ごく僅かなオーバヘッド
(メモリアクセスのみ)で済ませることが可能となる。
【0025】以上のように、ハードウェアとしてメモリ
保護機能を搭載した組込み機器において、以下の手段を
備えたことを特徴とするソフトウェアのトレースデータ
蓄積方法を実現するソフトウェア試験システム及び方法
を提供する。 (a)トレースデータ蓄積機能を有効・無効に制御する
トレースデータ蓄積機能制御手段、(b)トレースデー
タを取得したいところに配置され、特定メモリ領域への
アクセスを行うメモリアクセス命令、(c)トレースデ
ータの蓄積処理を行うトレースデータ蓄積処理手段。
【0026】実施の形態2.図4は、この発明の実施の
形態2である組込み機器におけるソフトウェアの性能試
験方法を示すものであり、図において、1はターゲット
機器、2は開発ホストマシン、3はターゲット機器が持
つ特定メモリ領域、5は特定メモリ領域へのアクセスを
行うメモリアクセス命令、7は性能測定機能制御手段、
8は性能測定処理手段(性能測定処理部)である。
【0027】この実施の形態では、例外処理発生命令
は、メモリアクセス命令5を一例として説明する。ま
た、上記性能測定処理手段は、上記試験処理発生命令を
実行することによって起動され、ソフトウェアの試験を
実行する試験実行部の一例である。上記性能測定制御手
段は、試験実行部の起動を有効・無効にすることを、試
験処理発生命令によって制御する試験機能制御部の一例
である。また、上記OS及びアプリケーション10は、
実施の形態1と同様に、プログラム記憶部に記憶され
る。
【0028】まず、性能測定処理を行う場合の動作を図
5を用いて説明する。性能測定処理を有効にしたい時
に、性能測定機能制御手段7において、ハードウェアの
メモリ保護機能を利用し、S201において、メモリア
クセス違反例外処理ベクタの設定を行うことによって、
メモリアクセス違反があった場合に性能測定処理手段8
にジャンプするように設定する。S202において、特
定メモリ領域へのアクセス(書き込み)を保護するよう
に設定する。これにより、OS及びアプリケーションプ
ログラムがS111においてメモリアクセス命令5を実
行すると、メモリアクセス違反例外が発生し、プロセッ
サが性能測定処理手段8に実行を移す。
【0029】性能測定処理手段8では、S121におい
て、プロセッサが持つすべてのレジスタもしくは、性能
測定処理手段8内で変更されるレジスタのみを保存し、
S211において、性能測定を行う。例えば、メモリア
クセス命令5を、性能を測定したい開始点と終了点に配
置しメモリアクセス違反例外を発生させ、ジャンプ先の
性能測定処理手段8において現在システム時刻を取得
し、その測定データを開発ホストマシンに送る。開発ホ
ストマシンでは、終了点と開始点の時刻の差分をとるこ
とでその間の性能を測定することができる。性能を測定
した後、S123において、保存しておいたレジスタの
値を復帰させ、プロセッサのリターン命令を用いて、メ
モリアクセス命令の次の命令に処理を戻す。
【0030】次に、性能測定処理を行わない場合の動作
を図6を用いて説明する。性能測定処理を無効にしたい
時に、性能測定機能制御手段7において、ハードウェア
のメモリ保護機能を利用し、S221において、特定メ
モリ領域へのアクセス(書き込み)を保護しないように
設定する。これにより、S111において、OS及びア
プリケーションプログラムがメモリアクセス命令5を実
行しても、メモリアクセス違反例外は発生せず、単に無
意味なデータが特定メモリ領域に書き込まれるだけとな
る。
【0031】以上のように、メモリアクセスという最小
限の実行コードだけをソフトウェアに埋め込むことによ
って、性能測定処理を実現することができる。その結
果、組込み機器動作中でも性能測定機能を有効・無効に
できるだけでなく、無効にした場合に、メモリアクセス
命令一回分のごく僅かなオーバヘッドだけで済む。
【0032】この実施の形態のソフトウェア試験システ
ム及び方法によれば、ハードウェアとしてメモリ保護機
能を搭載した組込み機器において、組込み機器の動作中
であっても、実行プログラムコードを書き換えることな
く、性能測定機能を有効にしたり、無効にしたりするこ
とが可能となる。しかも、性能測定機能を無効にした場
合に、ごく僅かなオーバヘッド(メモリアクセスのみ)
で済ませることが可能となる。
【0033】ハードウェアとしてメモリ保護機能を搭載
した組込み機器において、以下の手段を備えたことを特
徴とするソフトウェアの性能試験方法を実現するソフト
ウェア試験システム及び方法を提供する。 (a)性能測定機能を有効・無効に制御する性能測定機
能制御手段、(b)性能を測定したいところに配置さ
れ、特定メモリ領域へのアクセスを行うメモリアクセス
命令、(c)性能測定の処理を行う性能測定処理手段。
【0034】実施の形態3.図7は、この発明の実施の
形態3である組込み機器におけるソフトウェアのトレー
スデータ蓄積方法を示すものであり、図において、1は
ターゲット機器、2は開発ホストマシン、3はターゲッ
ト機器が持つ特定メモリ領域、4はトレースデータ蓄積
機能制御手段、5は特定メモリ領域へのアクセスを行う
メモリアクセス命令、6はトレースデータ蓄積処理手
段、9は特定メモリ領域管理テーブル(メモリ領域管理
テーブル)である。
【0035】まず、トレースデータ蓄積処理を行う場合
の動作を図9を用いて説明する。トレースデータ蓄積処
理を有効にしたい時に、トレースデータ蓄積機能制御手
段4において、ハードウェアのメモリ保護機能を利用
し、S101において、メモリアクセス違反例外処理ベ
クタの設定を行うことによって、メモリアクセス違反が
あった場合に、トレースデータ蓄積処理手段6にジャン
プするように設定する。S102において、特定メモリ
領域へのアクセス(書き込み)を保護するように設定す
る。これにより、OS及びアプリケーションプログラム
が、S111においてメモリアクセス命令5を実行する
と、メモリアクセス違反例外が発生し、プロセッサがト
レースデータ蓄積処理手段6に実行を移す。トレースデ
ータ蓄積処理手段6では、S121において、プロセッ
サが持つすべてのレジスタもしくはトレースデータ蓄積
処理手段6内で変更されるレジスタのみを保存する。
【0036】S311においては、特定メモリ領域管理
テーブル9を参照し、特定メモリ領域に対するメモリア
クセスかどうかを調べる。もし、特定メモリ領域に対す
るアクセスでない場合、通常のメモリアクセス違反例外
処理(S321)にジャンプする。特定メモリ領域管理
テーブル9の例を図8に示す。もし、特定メモリ領域に
対するアクセスである場合、S122において、トレー
スデータを蓄積する。トレースデータを蓄積した後、S
123において、保存しておいたレジスタの値を復帰さ
せ、プロセッサのリターン命令を用いて、メモリアクセ
ス命令の次の命令に処理を戻す。
【0037】トレースデータ蓄積処理を行わない場合の
動作は、実施の形態1と同様(図3)であるため、説明
を省略する。
【0038】以上のように、特定メモリ領域の開始アド
レスと終了アドレスを記述した特定メモリ領域管理テー
ブル9を設けることによって、トレースデータ蓄積処理
を行いつつ、本来のメモリ保護機能の使い方であるメモ
リアクセス違反例外処理を行うことができる。
【0039】また、実施の形態2に示した組込み機器に
おけるソフトウェアの性能試験方法においても、同様
に、特定メモリ領域の開始アドレスと終了アドレスを記
述した特定メモリ領域管理テーブル9を設けることによ
って、性能測定処理を行いつつ、本来のメモリ保護機能
の使い方であるメモリアクセス違反例外処理を行うこと
ができる。
【0040】さらに、特定メモリ領域管理テーブル9に
トレースデータ蓄積用、もしくは性能試験用といった用
途を示す変数を要素として加えることによって、S31
1において、特定メモリ領域に対するメモリアクセスで
あった場合に、その用途に応じてトレースデータ蓄積を
行ったり、性能測定を行ったりするようにすることがで
きる。つまり、アクセスしようとした特定メモリ領域の
アドレスでトレースデータ蓄積を行うのか性能測定を行
うのかを分類することによって、トレースデータ蓄積機
能と性能測定機能とメモリアクセス違反例外処理を同時
に併用することができる。この場合の特定メモリ領域管
理テーブル9の例を図10に示す。
【0041】この実施の形態のソフトウェア試験システ
ム及び方法によれば、特定メモリ領域管理テーブルを設
けることによって、トレースデータ蓄積機能もしくは性
能測定機能と、通常のメモリアクセス違反例外処理とを
併用することが可能となる。
【0042】この実施の形態では、上記実施の形態1又
は実施の形態2の機能に加え、トレースデータ蓄積処理
手段もしくは性能測定処理手段が参照し、特定メモリ領
域の開始アドレスと終了アドレスが記述された特定メモ
リ領域管理テーブルを備えることを特徴とする。
【0043】実施の形態4.上記実施の形態では、組込
み機器におけるソフトウェアを試験する場合を説明した
が、これらに限られることはない。上記以外のソフトウ
ェアの試験にも利用することができる。また、組込み機
器として、携帯電話やモバイル端末等が一例としてあげ
られる。従って、上記組込み機器に搭載されるメモリ
(ROM,RAM(RandomAccess Mem
ory)等)のソフトウェアを試験するときに有効なシ
ステム、方法を提供することができる。
【0044】実施の形態5.上記実施の形態1から3で
は、試験の一例として、トレースデータ蓄積、試験性能
測定を一例として説明した。しかしながら、試験の種類
は、上記に限られることはなく、その他の試験であって
も構わない。試験対象となるソフトウェアから起動でき
る処理(プログラム)であれば、その他の処理であって
もよい。従って、試験実行部は、トレースデータ蓄積処
理手段、試験性能測定処理手段に限られず、試験を実行
する処理手段を備えている場合もある。
【0045】また、試験処理発生命令(例外処理発生命
令)は、メモリアクセス命令を一例として説明したが、
これに限られることはない。例外を発生させる、すなわ
ち、エラーを発生させることができる命令であれば、こ
のほかの命令であってもよい。試験処理発生命令(例外
処理発生命令)は、試験実行部を起動するための例外を
発生させる命令であればよい。
【0046】実施の形態6.上記実施の形態1から4に
おいて説明したソフトウェア試験システム及び方法は、
プログラムによって実現することができる。上記プログ
ラムは、計算機読み取り可能な記録媒体に記録すること
が可能であり、上記記録媒体からプログラムを計算機、
組込み機器等のメモリ(プログラムを実行可能な装置に
備えられたメモリであればその他の装置に備えられたメ
モリであっても構わない)へ書き込み、書き込んだプロ
グラムによって、ソフトウェア試験システム及び方法を
実現する。プログラムを書き込む計算機等、組込み機器
等のメモリは、書き換え可能なメモリであるか否かは問
わない。
【0047】
【発明の効果】この発明によれば、プログラムのコード
を変更することなく、すなわち、ソフトウェアを入れ替
えることなく、試験を実行することができる。
【0048】この発明によれば、エラーを発生させる例
外処理命令を用いることによって、プログラムのコード
を変更することなく、ソフトウェアの試験を実行するこ
とができる。
【0049】例外処理発生命令へ、メモリアクセス命令
を用いることによって、プログラムのコードを変更する
ことなく、ソフトウェアの試験を実行することができ
る。また、メモリ領域管理テーブルによって、例外処理
を発生させるアドレスを指定することができる。
【0050】この発明によれば、ソフトウェアの試験と
して、トレースデータの蓄積、性能測定をプログラムの
コードを変更することなく、ソフトウェアの試験を実行
することができる。
【0051】この発明によれば、書き換えができないメ
モリへ記憶されているソフトウェアの試験が効率よくで
きる。
【図面の簡単な説明】
【図1】 実施の形態1のソフトウェア試験システム
(トレースデータ蓄積処理)の構成の一例を表す図。
【図2】 実施の形態1のトレースデータ蓄積処理の動
作の一例を表すフローチャート図。
【図3】 実施の形態1のトレースデータ蓄積処理を実
施しない場合の動作の一例を表すフローチャート図。
【図4】 実施の形態2のソフトウェア試験システム
(性能測定処理)の構成の一例を表す図。
【図5】 実施の形態2の性能測定処理の動作の一例を
表すフローチャート図。
【図6】 実施の形態2の性能測定処理を実施しない場
合の動作の一例を表すフローチャート図。
【図7】 実施の形態3のソフトウェア試験システム
(トレースデータ蓄積処理)の構成の一例を表す図。
【図8】 実施の形態3の特定メモリ領域管理テーブル
の一例を表すフローチャート図。
【図9】 実施の形態3のトレースデータ蓄積処理の動
作の一例を表すフローチャート図。
【図10】 実施の形態3の特定メモリ領域管理テーブ
ル(用途の項目を追加したテーブル)の一例を表すフロ
ーチャート図。
【符号の説明】 1 ターゲット機器、2 開発ホストマシン、3 特定
メモリ領域、4 トレースデータ蓄積機能制御手段、5
メモリアクセス命令、6 トレースデータ蓄積処理手
段、7 性能測定機能制御手段、8 性能測定処理手
段、9 メモリ領域管理テーブル、10 OS及びアプ
リケーション。
───────────────────────────────────────────────────── フロントページの続き (54)【発明の名称】 ソフトウェア試験システム及びソフトウェア試験方法及びソフトウェア試験方法を計算機で実現 するためのプログラムを記録した計算機で読み取り可能なプログラム記録媒体及びソフトウェア 試験方法を計算機で実現するためのプログラム

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 試験処理を発生させる試験処理発生命令
    を組み込んだプログラムを記憶するプログラム記憶部
    と、 上記プログラム記憶部に記憶されたプログラムに組み込
    まれた試験処理発生命令を実行した結果に基づいて起動
    され、ソフトウェアの試験を実行する試験実行部と、 上記試験処理発生命令の実行を制御することによって、
    上記試験実行部の起動を有効・無効にする試験機能制御
    部と、を備えることを特徴とするソフトウェア試験シス
    テム。
  2. 【請求項2】 上記試験処理発生命令は、例外処理を発
    生させる命令であり、 上記試験機能制御部は、上記試験処理発生命令を実行す
    ることによって発生する例外処理によって、上記試験実
    行部の起動を有効・無効にすることを特徴とする請求項
    1記載のソフトウェア試験システム。
  3. 【請求項3】 上記ソフトウェア試験システムは、さら
    に、メモリ保護機能を有するメモリ領域を備え、 上記試験処理発生命令は、上記メモリ領域をアクセスす
    るメモリアクセス命令であり、 上記試験機能制御部は、上記メモリ領域へのメモリ保護
    機能を用いて、上記試験処理発生命令を実行したときに
    例外処理を発生させ、上記例外処理が発生したときに、
    上記試験実行部を起動する命令を実行させることを特徴
    とする請求項1または2記載のソフトウェア試験システ
    ム。
  4. 【請求項4】 上記試験実行部は、トレースデータを蓄
    積するトレース蓄積処理部を含み、 上記試験処理発生命令は、上記プログラムの中で、トレ
    ースデータを取得する開始点に組み込まれることを特徴
    とする請求項1から3いずれかに記載のソフトウェア試
    験システム。
  5. 【請求項5】 上記試験実行部は、性能を測定する性能
    測定処理部を含み、 上記試験処理発生命令は、上記プログラムの中で、性能
    を測定する開始点に組み込まれることを特徴とする請求
    項1から3いずれかに記載のソフトウェア試験システ
    ム。
  6. 【請求項6】 上記ソフトウェア試験システムは、さら
    に、上記メモリ領域を指定するメモリ領域管理テーブル
    を備え、 上記試験機能制御部は、上記試験処理発生命令が上記メ
    モリ領域管理テーブルで指定されたアドレスをアクセス
    するメモリアクセス命令の場合に、上記試験実行部を起
    動する命令を実行させることを特徴とする請求項3記載
    のソフトウェア試験システム。
  7. 【請求項7】 上記プログラム記憶部は、書き換えがで
    きないメモリであることを特徴とする請求項1記載のソ
    フトウェア試験システム。
  8. 【請求項8】 試験を実行する試験実行部によって、ソ
    フトウェアを試験するソフトウェア試験方法において、 試験処理を発生させる試験処理発生命令を含むプログラ
    ムを実行することによって上記試験実行部を起動し、 試験処理発生命令の実行を制御することによって、上記
    試験実行部の起動を有効・無効にすることを特徴とする
    ソフトウェア試験方法。
  9. 【請求項9】 試験を実行する試験実行部によって、ソ
    フトウェアを試験するソフトウェア試験方法を計算機で
    実現するためのプログラムを記録した計算機で読み取り
    可能なプログラム記録媒体において、 試験処理を発生させる試験処理発生命令を含むソフトウ
    ェアを実行することによって上記試験実行部を起動し、 試験処理発生命令の実行を制御することによって、上記
    試験実行部の起動を有効・無効にすることを特徴とする
    ソフトウェア試験方法を計算機で実現するためのプログ
    ラムを記録した計算機で読み取り可能なプログラム記録
    媒体。
JP2000344656A 2000-11-13 2000-11-13 ソフトウェア試験システム及びソフトウェア試験方法及びソフトウェア試験方法を計算機で実現するためのプログラムを記録した計算機で読み取り可能なプログラム記録媒体及びソフトウェア試験方法を計算機で実現するためのプログラム Withdrawn JP2002149444A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000344656A JP2002149444A (ja) 2000-11-13 2000-11-13 ソフトウェア試験システム及びソフトウェア試験方法及びソフトウェア試験方法を計算機で実現するためのプログラムを記録した計算機で読み取り可能なプログラム記録媒体及びソフトウェア試験方法を計算機で実現するためのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000344656A JP2002149444A (ja) 2000-11-13 2000-11-13 ソフトウェア試験システム及びソフトウェア試験方法及びソフトウェア試験方法を計算機で実現するためのプログラムを記録した計算機で読み取り可能なプログラム記録媒体及びソフトウェア試験方法を計算機で実現するためのプログラム

Publications (1)

Publication Number Publication Date
JP2002149444A true JP2002149444A (ja) 2002-05-24

Family

ID=18818819

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000344656A Withdrawn JP2002149444A (ja) 2000-11-13 2000-11-13 ソフトウェア試験システム及びソフトウェア試験方法及びソフトウェア試験方法を計算機で実現するためのプログラムを記録した計算機で読み取り可能なプログラム記録媒体及びソフトウェア試験方法を計算機で実現するためのプログラム

Country Status (1)

Country Link
JP (1) JP2002149444A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007328597A (ja) * 2006-06-08 2007-12-20 Mitsubishi Electric Corp コンピュータシステム、コンピュータシステムのトレースデータ蓄積方法およびトレースデータ蓄積プログラム
US8015553B2 (en) 2006-02-17 2011-09-06 Samsung Electronics Co., Ltd. Method and apparatus for testing execution flow of program
CN102521118A (zh) * 2011-11-11 2012-06-27 福建星网视易信息系统有限公司 一种Android程序的自动测试方法
CN102637144A (zh) * 2012-03-31 2012-08-15 奇智软件(北京)有限公司 一种系统故障的处理方法和装置
CN106371990A (zh) * 2016-08-30 2017-02-01 福建天晴数码有限公司 一种交互式软件并发处理能力的测试方法及系统

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8015553B2 (en) 2006-02-17 2011-09-06 Samsung Electronics Co., Ltd. Method and apparatus for testing execution flow of program
JP2007328597A (ja) * 2006-06-08 2007-12-20 Mitsubishi Electric Corp コンピュータシステム、コンピュータシステムのトレースデータ蓄積方法およびトレースデータ蓄積プログラム
CN102521118A (zh) * 2011-11-11 2012-06-27 福建星网视易信息系统有限公司 一种Android程序的自动测试方法
CN102521118B (zh) * 2011-11-11 2014-12-10 福建星网视易信息系统有限公司 一种Android程序的自动测试方法
CN102637144A (zh) * 2012-03-31 2012-08-15 奇智软件(北京)有限公司 一种系统故障的处理方法和装置
CN102637144B (zh) * 2012-03-31 2015-05-06 北京奇虎科技有限公司 一种系统故障的处理方法和装置
CN106371990A (zh) * 2016-08-30 2017-02-01 福建天晴数码有限公司 一种交互式软件并发处理能力的测试方法及系统
CN106371990B (zh) * 2016-08-30 2018-11-23 福建天晴数码有限公司 一种交互式软件并发处理能力的测试方法及系统

Similar Documents

Publication Publication Date Title
US10394560B2 (en) Efficient recording and replaying of non-deterministic instructions in a virtual machine and CPU therefor
JP4519738B2 (ja) メモリアクセス制御装置
US20090083715A1 (en) Method and system for instruction tracing with enhanced interrupt avoidance
EP2997477A1 (en) Page table data management
JP2014507720A (ja) デバッグ例外生成の制御
CN112463230A (zh) 程序运行方法及装置、电子设备、存储介质
CN112541166A (zh) 一种方法、系统和计算机可读存储介质
KR101701515B1 (ko) 메모리 접근 정보를 추적하기 위한 장치 및 방법
JP2002149444A (ja) ソフトウェア試験システム及びソフトウェア試験方法及びソフトウェア試験方法を計算機で実現するためのプログラムを記録した計算機で読み取り可能なプログラム記録媒体及びソフトウェア試験方法を計算機で実現するためのプログラム
CN114282206A (zh) 栈溢出检测方法、装置、嵌入式系统和存储介质
KR100543152B1 (ko) 마이크로프로세서 및 마이크로프로세서의 처리 방법
KR100901225B1 (ko) 디바이스의 동작 모드들을 선택적으로 인에이블 하는 시스템
WO2007049423A1 (ja) コンピュータシステム、及びそれにおける基本プログラムの起動方法
JP2000339189A (ja) 不正なメモリアクセスを検出する方法、デバッグ装置および記録媒体
JP3674446B2 (ja) 個別アプリケーションパッチ管理装置及び個別アプリケーションパッチ管理方法
US7130950B1 (en) Providing access to memory configuration information in a computer
US11550651B2 (en) Execution circuits using discardable state
US20150052396A1 (en) State information recording apparatus, non-transitory computer readable medium, and state information recording method
Yang et al. A RISC-V On-chip Operating System Based on Rust
JP3214413B2 (ja) エミュレータ
JPH0635747A (ja) デバッグ支援装置
US20070121162A1 (en) Method, Apparatus, and Computer Program Product for Memory Paging
JP2004348635A (ja) プログラム開発方法
JPH096709A (ja) 拡張スロット付電子装置の制御方法とその装置、及び拡張媒体
JP2002091826A (ja) 情報処理装置

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20051018

A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080205