JPH03282742A - コンピュータシステム - Google Patents

コンピュータシステム

Info

Publication number
JPH03282742A
JPH03282742A JP2081275A JP8127590A JPH03282742A JP H03282742 A JPH03282742 A JP H03282742A JP 2081275 A JP2081275 A JP 2081275A JP 8127590 A JP8127590 A JP 8127590A JP H03282742 A JPH03282742 A JP H03282742A
Authority
JP
Japan
Prior art keywords
register information
arithmetic register
request
trace processing
saving
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.)
Pending
Application number
JP2081275A
Other languages
English (en)
Inventor
Miyuki Ogawa
小川 みゆき
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 JP2081275A priority Critical patent/JPH03282742A/ja
Publication of JPH03282742A publication Critical patent/JPH03282742A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、トレース処理時に演算レジスタ情報の退避を
行うコンピュータシステム関する。
[従来の技術] トレース処理を行う際に、利用者があるプログラムにブ
レークポイントを設定し、1つのブレークポイントにお
いて複数のトレース要求をするような場合がある。この
ような場合に、従来のコンピュータシステムは、例えば
、1回目のトレース要求において、あるブレークポイン
トで停止中に演算レジスタ情報を退避している演算レジ
スタ情報退避領域の一部を読みとるときに、常に現在の
情報を読みとることを可能とするため、演算レジスタ情
報退避領域の読み込み要求が受は付けられた時点で演算
レジスタ情報の退避を行い、要求の種別に適した情報を
返すようになっていた。さらに、同一状態で同一領域内
の別の演算レジスタ情報を読みとるようなトレース処理
を行う場合、2回目の演算レジスタ情報の読み込み要求
が受は付けられた時点で、再度、演算レジスタの退避を
行い要求種別に適した情報を返すというように、従来で
は、要求発生毎に演算レジスタ情報の退避を行っていた
[発明が解決しようとする課題] このように、従来のコンピュータシステムでは、利用者
がブレークポイントを設定してトレース処理を行う場合
、1つのブレークポイントにおける複数のトレース処理
要求に対しては、そのブレークポイントにおけるカレン
トな情報を提供するために各要求の発生毎に演算レジス
タ情報の退避を行っていたので、非常に多くの演算レジ
スタをもつような大容量の情報を退避する必要のあるオ
ペレーティングシステムにおいては、重複して大容量の
演算レジスタ情報の退避を行うこととなり、システムに
対する負荷が増え、性能低下の要因にもなり、非常に効
率が悪いという欠点があった。
本発明はこのような従来の欠点を改善したもので、その
目的は、利用者がブレークポイントを設定してトレース
処理を行う際、1つのブレークポイントにおける複数の
トレース処理要求に対しても、システムに対する負荷を
増加させずにトレス処理を効率良く行うことの可能なコ
ンピュータシステムを提供することにある。
[課題を解決するための手段] 本発明のコンピュータシステムは、ユーザプログラムを
実行するプログラム実行手段と、プログラム実行手段か
らのトレース要求を受けてトレース処理を行うトレース
処理機構と、最新の演算レジスタ情報の退避処理を行う
演算レジスタ情報退避手段と、前記演算レジスタ情報退
避手段により演算レジスタ情報が退避されたことを記憶
する退避情報記憶手段と、要求のあった演算レジスタ情
報を選択する演算レジスタ情報選択手段と、前記演算レ
ジスタ情報選択手段によって選択された演算レジスタ情
報の出力を行う出力手段とを有し、前記トレース処理機
構は、トレース処理を行う際、前記退避記憶手段に記憶
された内容に基づいて前記演算レジスタ情報退避手段を
起動するか否かの判断を行うようになっている。
[作 用] 本発明では、トレース要求を受けてユーザプログラムの
トレース処理を行う際、退避記憶手段に記憶された内容
に基づいて演算レジスタ情報を退避するか否かを判断す
る。この結果、退避記憶手段に最新の演算レジスタ情報
がすでに退避されているときには、演算レジスタ情報の
退避は行わない。これにより、1つのブレークポイント
における複数のトレース処理要求に対して、最初のトレ
ース要求の際のみに演算レジスタ情報の退避を行って退
避がなされたことを記憶しておき、この記憶内容に基づ
き、トレース処理を一旦抜けて再度トレースを行うまで
はトレース処理のための演算レジスタ情報の退避を行わ
ないようにすることができて、演算レジスタの退避処理
を重複して行うこともなくなり、システムへの負荷が減
少し、トレース処理を効率良く行うことができる。
[実施例] 次に、本発明について図面を参照して説明する。
第1図は本発明に係るコンピュータシステムの一実施例
のブロック図である。
本実施例のコンピュータシステムは、トレース対象とな
る実行可能なユーザプログラム1およびトレース指定を
行うユーザプログラム10を起動し実行するホストコン
ピュータ2と、出力装置9と、ホストコンピュータ2か
らの情報を出力装置9へ出力するための制御を行う出力
制御手段8とを有し、ホストコンピュータ2は、ユーザ
プログラム10を実行するプログラム実行手段3と、プ
ログラム実行手段3によりトレース処理実行要求があっ
た場合に起動されるトレース処理機構4と、利用者が演
算レジスタ情報に関するトレース要求を発行した際に前
記トレース処理機構4により起動され、演算レジスタの
退避を行う演算レジスタ情報退避手段5と、前記演算レ
ジスタ情報退避手段5により退避された演算レジスタ情
報を記憶する退避情報記憶手段6と、前記退避情報記憶
手段6により記憶されている演算レジスタ情報の中から
、利用者に要求されている情報を選択する演算レジスタ
情報選択手段7とを備えている。なお、上記出力制御手
段8は、より詳しくは、ホストコンピュータ2の前記演
算レジスタ情報選択手段7により選択された情報を出力
装置9へ出力するための制御を行うようになっている。
第2図は退避情報記憶手段6に記憶される内容を示す図
であり、記憶される内容には、演算レジスタ情報退避フ
ラグFLGと、演算レジスタ情報退避領域S■とが含ま
れている。
次に、本発明におけるトレース処理時の演算レジスフ情
報退避処理動作について説明する。
先ず、ボス1〜コンピユータ2がトレース処理指示を行
うユーザプログラムを起動すると、ユーザプログラム1
0は、プログラム実行手段3により実行される。プログ
ラム実行手段3は、ユーザプログラム10からトレース
処理実行要求を受けた場合、トレース処理機構4にユー
ザプログラム1のトレース処理を実行することを通知し
、トレース処理機構4に制御を移し、トレース処理機構
4の制御の下でユーザプログラム1を起動する。ユーザ
プログラム1は、トレース処理機構4の制御によって、
設定されているブレークポイントまで実行されて停止状
態となり、ユーザプログラム10によるトレース処理の
指示を待つ。トレース処理機構4は、ユーザプログラム
1が停止状態になったことをプログラム実行手段3に通
知する。通知を受けるとプログラム実行手段3は、ユー
ザプログラム10の処理を再開して、ユーザプログラム
10からのトレース処理要求Aを受け、ユーザプログラ
ム10を停止状態にする。トレース処理要求Aを受けて
プログラム実行手段3は、トレース処理要求が発行され
たことをトレース処理機構4に通知して制御を渡す。
ここで、トレース処理機構4の制御の流れについて、第
3図のフローチャートを参照して詳細に説明する。
トレース処理機構4に制御が渡ると、先ず、トレース処
理要求Aがどんな要求であるかという種別を判断する(
ステップ21)。この判断した結果、演算レジスタ情報
の読み込み要求の場合には、演算レジスタ情報退避要求
を発行しくステップ22)これにより、退避情報記憶手
段6に記憶されている演算レジスタ情報退避フラグFL
Gを参照して演算レジスタ情報の退避がすでに行われた
かどうかを判断する(ステップ23)。判断の結果、演
算レジスタ情報退避フラグがオフの場合には、演算レジ
スタ情報退避要求の通知を行い(ステップ26)、トレ
ース処理機構4は、演算レジスタ情報退避手段5を起動
する。これにより、演算レジスタ情報退避手段5は、退
避情報記憶手段6の演算レジスタ情報退避領域SVに演
算レジスタ情報の退避を行い、退避情報記憶手段6の演
算レジスタ退避フラグFLGをオンにして、トレース処
理機構4に制御を戻す。制御が戻るとトレース処理機構
4は、演算レジスフ情報選択手段7を起動し、演算レジ
スタ情報選択手段7は、退避情報記憶手段6の演算レジ
スタ情報退避領域SV内の要求種別に一致した情報を選
択し採取する。さらに演算レジスタ情報選択手段7は、
出力制御手段8に採取した情報の出力要求を行い、出力
制御手段8に制御を移す。制御が渡ると出力制御手段8
は、出力装置9への出力制御を行い、採取情報を出力袋
置9に出力する。
出力装置9への出力処理が終了すると、プログラム実行
手段3によりユーザプログラム10が再開され、再度ユ
ーザプログラム10からのトレース処理要求Bが発行さ
れる。トレース処理要求Bが発行されるとトレース処理
要求Aの場合と同様の制御を行って、トレース処理機構
4に制御を渡す。トレース処理機構4に制御が渡ると、
トレース処理要求Bの種別が判断される(ステップ21
)。
判断の結果、演算レジスタ情報の読み込み要求の場合、
上述したと同様に、演算レジスタ情報の退避要求を行い
(ステップ22)、この退避要求を受けて、退避情報記
憶手段6に記憶されている演算レジスタ退避フラグFL
Gが参照され、演算レジスタ情報の退避が行われている
かどうかが判断される(ステップ23)。判断の結果、
いまの場合、演算レジスタ退避フラグF L Gがオン
となっているので、演算レジスタ情報退避要求は行わず
、l・レース処理機構4は、演算レジスタ情報選択手段
7に制御を渡す。演算レジスタ情報選択手段70 に制御が渡されてから、出力装置9への出力が行われる
までは、トレース処理要求Aの時と同時の制御が行われ
る。
プログラム実行手段3により、さらにユーザプログラム
10が続行されて、トレース処理要求Cが発行されると
、上述したトレース処理要求ABの場合と同様の制御が
行われてトレース処理機構4に制御が渡る。トレース処
理機構4に制御が渡ると、要求種別が判断され(ステッ
プ21)、判断の結果、現在のブレークポイントにおい
てのトレース処理の終了要求である場合、トレース処理
終了要求を発行しくステップ24)、これにより、演算
レジスタ退避フラグFLGのクリアを含むトレース終了
処理が行われる(ステップ25)。
1つのブレークポイントにおいてのトレース処理が終了
すると、トレース処理機構4はトレース対象であるユー
ザプログラム1を再開し、次のブレークポイントまで実
行する。ユーザ処理プログラム1は次のブレークポイン
トまで実行されると、ユーザ処理プログラム10の次の
指示を待って再1 び停止状態となり、トレース処理機構4からプログラム
実行手段3に制御が渡される。プログラム実行手段3は
、ユーザプログラム1oを再開してユーザプログラム1
oがらのトレース処理要求を受けるというように処理を
続ける。
なお、非同期に割り込み等が発生し演算レジスタの退避
を行う際は、トレース処理中である場合には演算レジス
タ情報退避フラグF L Gを参照し、これがオンの時
は演算レジスタ情報の退避を行わず、オフの時に退避す
るよう制御が必要である。
このように、本実施例においては、1つのブレークポイ
ントにおける複数のトレース処理要求時、非常に多くの
演算レジスタ情報の退避を行う場合は、1回目の要求時
にのみ演算レジスタ情報の退避を行い、退避処理を行っ
たことを記憶しておくことにより、−旦トレース処理を
抜けて次のブレークポイントでトレース処理要求が発行
されるまでは、演算レジスタ情報退避領域への退避が行
われないので、トレース処理を効率良く行うことが可能
となり、システムの性能を向上させることが2 できる。
「発明の効果] 以上説明したように本発明によれば、利用者がブレーク
ポイントを設定してトレース処理を行う際、1つのブレ
ークポイントにおける複数のトレース処理(演算レジス
タ情報の@み込み等)要求に対しては、最初のトレース
処理要求の際のみに演算レジスフ情報の退避を行い、そ
の停止状態における演算レジスタ情報の退避を行ったこ
とを記憶しておき、トレース処理を一旦抜けて再度トレ
ースを行うまではトレース処理のための演算レジスタ情
報の退避を行わないようにすることができるので、演算
レジスタの退避処理を重複して行うこともなくなり、シ
ステムへの負荷が減少し、トレース処理を効率良く行う
ことが可能となり、システムの性能を向上させることが
できるという効果がある。
【図面の簡単な説明】
第1図は本発明に係るコンピュータシステムの一実施例
のブロック図、第2図は退避情報記憶子3 段に記憶される内容を示す図、第3図はトレース処理機
構の処理流れを示すフローチャー1・である。 第1図において、1・・・ユーザプログラム、2・・・
ホストコンピュータ、3・・・プログラム実行手段、4
・・・トレース処理機構、5・・・演算レジスタ情報退
避手段、6・・・退避情報記憶手段、7・・・演算レジ
スタ情報選択手段、8・・・出力制御手段、9・・・出
力装置、10・・・ユーザプログラム。

Claims (1)

    【特許請求の範囲】
  1.  ユーザプログラムを実行するプログラム実行手段と、
    プログラム実行手段からのトレース要求を受けてトレー
    ス処理を行うトレース処理機構と、最新の演算レジスタ
    情報の退避処理を行う演算レジスタ情報退避手段と、前
    記演算レジスタ情報退避手段により演算レジスタ情報が
    退避されたことを記憶する退避記憶手段と、要求のあっ
    た演算レジスタ情報を選択する演算レジスタ情報選択手
    段と、前記演算レジスタ情報選択手段によって選択され
    た演算レジスタ情報の出力を行う出力手段とを有し、前
    記トレース処理機構は、トレース処理を行う際、前記退
    避記憶手段に記憶された内容に基づいて前記演算レジス
    タ情報退避手段を起動するか否かの判断を行うようにな
    っていることを特徴とするコンピュータシステム。
JP2081275A 1990-03-30 1990-03-30 コンピュータシステム Pending JPH03282742A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2081275A JPH03282742A (ja) 1990-03-30 1990-03-30 コンピュータシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2081275A JPH03282742A (ja) 1990-03-30 1990-03-30 コンピュータシステム

Publications (1)

Publication Number Publication Date
JPH03282742A true JPH03282742A (ja) 1991-12-12

Family

ID=13741820

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2081275A Pending JPH03282742A (ja) 1990-03-30 1990-03-30 コンピュータシステム

Country Status (1)

Country Link
JP (1) JPH03282742A (ja)

Similar Documents

Publication Publication Date Title
US6553487B1 (en) Device and method for performing high-speed low overhead context switch
JPH0916409A (ja) マイクロコンピュータ
JPH03282742A (ja) コンピュータシステム
JPH10326205A (ja) システムコール発行方法
JPH0668725B2 (ja) データ処理システムにおける割込条件に応答する装置及び非同期割込条件に応答する方法
JPH11184828A (ja) マルチプロセッサシステムのテスト方式
JPS62125437A (ja) 付加プロセツサの制御方法
JPH07200350A (ja) ソフトウェアデバッガ
JPS5829051A (ja) 演算処理装置
JP2002196938A (ja) 例外処理フロー用の装置及びその処理実行方法
JP2564290B2 (ja) 命令再開処理方法および装置
JP3022398B2 (ja) 仮想計算機方式
JPH04364563A (ja) ダウンロード制御方法
JP2768878B2 (ja) データ処理装置、命令実行の同期方法、例外発生時の命令アドレス待避方法及び例外発生時の命令処理無効化方法
JPH0962539A (ja) 命令トレース制御方式
JPH0816431A (ja) 利用者プログラムのデバッグ処理システム
JPH03126134A (ja) Cpuのタスク切替方式
JPH05313916A (ja) 電子計算機における割込み処理方法及び電子計算機
JPH02113336A (ja) 非同期例外捕獲方式
JPH11272516A (ja) ダンプ出力制御方式
JPH01200440A (ja) プログラムデバツグ方法
JPS62276634A (ja) 仮想計算機システム
JPH0772874B2 (ja) 割込み受取り装置
JPH09245006A (ja) 密結合マルチプロセッサシステムにおけるジョブの実行装置および実行方法
JPH0658659B2 (ja) プロセッサ間の割込み制御方法