JPH05100895A - トレース方式 - Google Patents

トレース方式

Info

Publication number
JPH05100895A
JPH05100895A JP3031278A JP3127891A JPH05100895A JP H05100895 A JPH05100895 A JP H05100895A JP 3031278 A JP3031278 A JP 3031278A JP 3127891 A JP3127891 A JP 3127891A JP H05100895 A JPH05100895 A JP H05100895A
Authority
JP
Japan
Prior art keywords
instruction
trace
interrupt
saved
address
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
JP3031278A
Other languages
English (en)
Inventor
Takashi Kishibe
高志 岸部
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP3031278A priority Critical patent/JPH05100895A/ja
Publication of JPH05100895A publication Critical patent/JPH05100895A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 (修正有) 【目的】ハードウェアによるトレース機能が不要で且つ
トレース無効時はトレースに関する処理は全く不要と
し、トレース有効時にはプログラムの任意の走行ステッ
プのトレースを行う。 【構成】外部からトレース機能を有効にする指示を行う
と、トレースしたいプログラムの走行ステップのアドレ
スを格納した第一テーブル1を読み出し、そのアドレス
の命令を命令退避エリア4に退避して上位レベルに割込
みを発生する命令に書き替える。この命令が実行される
と上位レベルに割込みが発生し、第二テーブル2及び第
三テーブル3に従って各アドレス及びトレースを収集す
る条件毎に必要なデータを収集する。トレースの収集が
完了すると命令退避エリア4に退避していた命令を実行
し、割込みを発生した命令の次の命令に制御を移す。外
部の指示でトレースを収集しない場合は、退避した命令
を復元してトレースを意識しない。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、エラー発生時などにプ
ロセッサが実行しているプログラムの任意の走行ステッ
プからのトレース情報を収集するトレース方式に関す
る。複数のプログラムの走行レベル、及び実行を完了す
ると特定の上位レベルに割込みが発生するような命令を
持つプロセッサにおいては、エラー検出等に基づき外部
からトレースを有効にすると、プログラムの任意の走行
ステップで任意の条件で必要なデータを効率良く収集す
ることが望まれる。また、トレースを無効にした場合に
は、トレースを意識せずに本来の機能のみを行うことで
性能に全く影響をおよぼさないで動作可能とすることが
望まれる。
【0002】
【従来の技術】従来、プログラムによるトレース方式と
しては、予め固定の位置に固定のデータを収集するトレ
ース用のサブルーチンを組み込んでおき、トレースの有
効/無効を判定するフラグ及びそれを判定する条件命令
によってトレースを行うような方式が知られている。
【0003】一方、ハードウェアのみ、またはハードウ
ェアとソフトウェアの両方を組み合わせてトレースを行
う方式も存在する。
【0004】
【発明が解決しようとする課題】しかしながら、このよ
うな従来のトレース方式では、プログラム或いはハード
ウェアのどちらを利用するにしても、トレースを行う場
合にはトレースを収集するプログラムの走行ステップ、
及びそのとき収集するデータが固定になってしまう制約
がある。
【0005】一方、プログラムでトレースのサブルーチ
ンを組み込んでおく方式では、トレースを収集しない場
合にもトレースの有効/無効の判定処理等が必要で、何
らかのトレース処理の一部を実行しているため、その分
だけ性能が低下する。また、ハードウェアを利用する場
合は、トレース用の回路を設けなければならなので物量
の増加は避けられない。
【0006】本発明は、このような従来の問題点に鑑み
てなされたもので、ハードウェアによるトレース機能が
不要で且つトレース無効時にはトレースに関する処理を
全く必要とせず、トレース有効時には任意のプログラム
の任意の走行ステップのトレースができるトレース方式
を提供することを目的とする。
【0007】
【課題を解決するための手段】図1は本発明の原理説明
図である。まず本発明は、複数のプログラムの走行レベ
ル及び実行を完了すると特定の上位レベルに割込みが発
生する命令を持つプロセッサ10のトレース方式を対象
とする。
【0008】このようなトレース方式につき本発明にあ
っては、トレースを収集したいプログラムの走行ステッ
プのアドレスを格納した第一のテーブル1と、第一のテ
ーブル1に格納されたアドレスでトレースを収集する条
件を示した第二のテーブル2と、第二のテーブル2のト
レースを収集する条件毎に収集したいデータの種類を示
す情報を格納した第三のテーブル3と、第一のテーブル
1に指定されて命令を書き替えるアドレスの命令を予め
退避しておくための命令退避エリア4と、第一のテーブ
ル1に従って指定したトレース収集アドレスの命令を前
記命令退避エリア4に退避し、前記特定の上位レベルに
割込みが発生する命令に書き替える第一の手段5と、特
定の上位レベルへの割込みが発生したときに第二のテー
ブル2に従ってトレースを収集する条件を判定する第二
の手段6と、第一のテーブル1及び第二のテーブル2に
示された各アドレスと条件毎に第三のテーブルの内容に
従って必要なデータを収集する第三の手段7と、第一の
手段5によって命令退避エリア4に退避していた命令を
第一のテーブル1に従って復元する第四の手段8とを設
ける。
【0009】そして、外部より指示されたトレース有効
の指示に従って第一の手段5により第一のテーブル1で
指定されたアドレスの命令を命令退避エリア4に退避し
て特定の上位レベルに割込みが発生する命令に書き替
え、プロセッサ10がこの命令を実行して上位レベルへ
の割込みが発生したときに、第二の手段6によりトレー
ス収集の条件を判定し、且つ第三の手段7により各アド
レスと条件毎に必要なデータを収集し、一方、外部より
のトレース無効の指示に従って第四の手段8により命令
退避エリア4に退避していた命令に復元することを特徴
とする。
【0010】ここで第一乃至第三のテーブル1,2,3
及び命令退避エリア4をコントロールストレージ9で実
現し、更に第一乃至第四の手段5,6,7,8をコント
ロールストレージ9のファームウェア11で実現する。
【0011】
【作用】このような構成を備えた本発明のトレース方式
によれば次の作用が得られる。即ち、複数のプログラム
の走行レベル及び実行すると特定の上位レベルに割込み
を発生する命令を持つプロセッサ10を使用し、外部か
らトレース機能を有効にする指示を行うと、トレースを
収集したいプログラムの走行ステップのアドレスを格納
した第一のテーブル1を読み出し、第一のテーブル1に
格納されたアドレスの命令を命令退避エリア4に退避し
て上位レベルに割込みを発生する命令に書き替える。こ
の状態で上位レベルへの割込みを発生する命令が実行さ
れると、上位レベルに割込みが発生する。この割込みが
発生すると第二のテーブル2及び第三のテーブル3に従
って各アドレス及びトレースを収集する条件毎に必要な
データを収集する。トレースの収集が完了すると命令退
避エリア4に退避していた命令を実行し、割込みを発生
した命令の次の命令に制御を移す。
【0012】このようにプログラムの任意の位置の命令
を書き替えてトレースを収集するトレース方式により、
任意の位置で任意の条件で必要なデータを収集でき、障
害の解析が容易になる。また、外部からの指示でトレー
スを収集しない場合は、退避した命令を復元することに
より、トレースのことを全く意識しないですむため、ト
レースを収集しない場合の性能にトレース機能が影響を
与えない。
【0013】
【実施例】図2は本発明の一実施例を示した実施例構成
図であり、この実施例にあってはホストのチャネルと接
続し、回線とのデータ送受信を行う通信制御処理装置
(CCP;Communication Control Processor)におい
て、ホストのチャネルとのインタフェースを制御するフ
ァームウェア制御のチャネルアダプタ(CA;ChannelA
dapter )を例にとり、5つのプログラムの走行レベル
及び実行を完了するとレベル2に割込みを発生し、プロ
グラムの走行レベルをレベル2に変える割込み命令の持
つプロセッサを使用した場合を例にとる。
【0014】図2において、通信制御処理装置(CC
P)100は中央制御部(CC;Central Controller)
102をもち、中央制御部102はメインストレージ
(MS;Main Storage)104に格納された通信制御プ
ログラムを実行し、ホストのチャネルインタフェースを
司るチャネルアダプタ(CA;Channel Adapter )10
6と回線のインタフェースを司るコミュニケーションス
キャナ(CS;Communication Scanner )108を制御
してホストと回線の間のデータ通信を行う。
【0015】また、通信制御処理装置100は全体の運
用管理及び保守を行う目的でCCPマネージメントプロ
セッサ(CMP;CCP Management Processor )110
と、CCPマネージメントプロセッサ110がログ等を
格納する補助記憶部(HD;Hard Disk )112を持
つ。図3は、本発明のトレース方式に必要な通信制御処
理装置100を構成する機能ブロックを詳細に示す。
【0016】9はチャネルアダプタ(CA)106内に
設けたコントロールストレージであり、コントロールス
トレージ9内には、チャネルアダプタ106を制御する
ファームウェア11、本発明のトレース機能に使用する
第一、第二及び第三のテーブル1,2,3、命令を退避
する命令退避エリア4、トレースエリア12をもつ。こ
こで第一乃至第三テーブル1〜3は次の内容が格納され
る。
【0017】第一のテーブル1;トレースを収集したい
プログラムの走行ステップのアドレス 第二のテーブル2;第一のテーブル1に格納されたアド
レスでトレースを収集する条件 第三のテーブル3;第二のテーブル2のトレースを収集
する条件毎に収集したいデータの種類を示 またファームウェア11は、第一のテーブル1に従って
指定したトレース収集アドレスの命令を前記命令退避エ
リア4に退避し、前記特定の上位レベルに割込みが発生
する命令に書き替える第一の手段5と、特定の上位レベ
ルへの割込みが発生したときに第二のテーブル2に従っ
てトレースを収集する条件を判定する第二の手段6と、
第一のテーブル1及び第二のテーブル2に示された各ア
ドレスと条件毎に第三のテーブルの内容に従って必要な
データを収集する第三の手段7と、第一の手段5によっ
て命令退避エリア4に退避していた命令を第一のテーブ
ル1に従って復元する第四の手段8としての機能を実現
する。
【0018】10はプロセッサであり、複数のプログラ
ムの走行レベル及び実行すると上位に割込みが発生する
命令を持ち、コントロールストレージ9に格納されたフ
ァームウェア11を実行する。更にチャネルアタプタ1
04内には、ホストとの間のチャネルインタフェースを
制御するチャネルインタフェース制御部13、通信制御
処理装置100の他の構成ブロック、例えばCCPマネ
ージメントプロセッサ(CMP)110や中央制御部
(CC)102とインタフェースを制御するバス制御部
14、更にCCPマネージメントプロセッサ110から
セット/リセットできるトレースの有効又は無効を示す
TE−FF(TRACE ENABLE FF )15を備える。
【0019】尚、CCPマネージメントプロセッサ(C
MP)110にはプロセッサ16、メモリ17及びバス
制御部18が設けられ、また中央処理部(CC)102
にはプロセッサ20及びバス制御部22が設けられる。
次に図3のフローチャートを参照して、まずトレースを
有効又は無効にする処理を説明する。
【0020】チャネルアダプタ106のプロセッサ10
は、CCPマネージメントプロセッサ110におけるエ
ラー判定等に基づくTE−FF15のセット状態又はリ
セット状態をチェックしてトレースの有効又は無効をス
テップS1(以下「ステップ」は省略)で判定し、有効
であればS2以降の処理に進んで第一のテーブル1に格
納されたアドレスに従い、運用の命令を上位レベルに割
込みが発生する命令に書き替える。
【0021】即ち、S2で第一のテーブル1の終りの有
無をチェックした後にS3で第一のテーブル1に格納さ
れたトレースしたいアドレスを読み出す。続いてS4に
おいてS3で読出したアドレスの命令を命令退避エリア
4に退避する。そしてS5でS3で読出したアドレスの
命令を割込み命令に書き替えてトレースを有効とするた
めの処理を終える。
【0022】一方、S1でトレースの無効が判定され、
S6で命令が割込み命令に書き替えられたままであれ
ば、S7〜S9の処理により、命令退避エリア4に退避
していた命令を復元する。また割込み命令に書き替えた
命令が既に復元済みであれば、S6からそのまま処理を
終了する。図5は図4のフローチャートに従ってトレー
スを有効状態とし、割込み命令に書き替えた命令が実行
されたとき、即ちトレースを収集したいプログラムの走
行アドレスのときに発生した割込みによって行われるト
レースを収集する処理のフローチャートを示す。
【0023】図5において、S1でトレース用の割込み
を検出すると、2に進んで第二のテーブル2のデータを
読み出し、S3で割込みを発生した各プログラムの走行
アドレスによってトレースを収集する条件を判定する。
S3で例えばトレース収集の条件1が判定されると、S
4に進んで第三のテーブル3を読み出し、S5でトレー
スを収集する条件1と読出したデータに従って必要なデ
ータのみを収集する。
【0024】トレース収集が済むとS6で命令退避エリ
ア4に退避した命令を実行し、S7で下位レベルの制御
を割込みを発生した次の命令の制御を移し、一連のトレ
ース処理を終了する。一方、S3でトレース収集の条件
2が判定された場合にも、S8〜S11で条件1の場合
と同様の処理を実行する。勿論、S3で判定する条件は
必要に応じて適宜に定められる。
【0025】尚、上記の実施例は、通信制御処理装置
(CCP)のチャネルアダプタ(CA)でのトレースを
例にとるものであったが、本発明はこれに限定されず、
複数のプログラムの走行レベル及び実行を完了すると特
定の上位レベルに割込みが発生する命令を持つプロセッ
サを備えた装置であれば任意の装置に適用できる。
【0026】
【発明の効果】以上説明したように本発明によれば、ハ
ードウェアにトレース用の機能を設ける必要がなく、プ
ログラムの任意の走行ステップで自由にトレースを収集
でき、デバッグが容易になる。また、トレースを収集し
ない状態ではトレースに関係する処理は全く行われず、
トレース機能を設けても性能の低下は起きない。
【図面の簡単な説明】
【図1】本発明の原理説明図
【図2】本発明の実施例構成図
【図3】図2のチャネルアダプタで行われる本発明のト
レース機能を実現するための詳細を示したブロック図
【図4】本発明のトレース有効間たは無効の処理を示し
たフローチャート
【図5】図3でトレースを有効とした後に実行されるト
レース収集の処理を示したフローチャート
【符号の説明】
1:第一のテーブル 2:第二のテーブル 3:第三のテーブル 4:命令退避エリア 5:第一の手段 6:第二の手段 7:第三の手段 8:第四の手段 9:コントロールストレージ 10,16,20:プロセッサ 11:ファームウェア 12:トレースエリア 13:チャネルインタフェース制御部 14,1ユ,22:バス制御部 15:TE−FF 17:メモリ 100:通信制御処理装置(CCP) 102:中央処理装置(CC) 104:メンイストレージ(MS) 106:チャネルアダプタ(CA) 108:コミュニケーションスキャナ(CS) 110:CCPマネージメントプロセッサ(CMP) 112:補助記憶部(HD)

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】複数のプログラムの走行レベル及び実行を
    完了すると特定の上位レベルに割込みが発生する命令を
    持つプロセッサ(10)のトレース方式に於いて、 トレースを収集したいプログラムの走行ステップのアド
    レスを格納した第一のテーブル(1)と、 該第一のテーブル(1)に格納されたアドレスでトレー
    スを収集する条件を示した第二のテーブル(2)と、 該第二のテーブル(2)のトレースを収集する条件毎に
    収集したいデータの種類を示す情報を格納した第三のテ
    ーブル(3)と、 前記第一のテーブル(1)に指定されて命令を書き替え
    るアドレスの命令を予め退避しておくための命令退避エ
    リア(4)と、 前記第一のテーブル(1)に従って指定したトレース収
    集アドレスの命令を前記命令退避エリア(4)に退避
    し、前記特定の上位レベルに割込みが発生する命令に書
    き替える第一の手段(5)と、 前記特定の上位レベルへの割込みが発生したときに前記
    第二のテーブル(2)に従ってトレースを収集する条件
    を判定する第二の手段(6)と、 前記第一のテーブル(1)及び第二のテーブル(2)に
    示された各アドレスと条件毎に前記第三のテーブルの内
    容に従って必要なデータを収集する第三の手段(7)
    と、 前記第一の手段(5)によって前記命令退避エリア
    (4)に退避していた命令を前記第一のテーブル(1)
    に従って復元する第四の手段(8)とを設け、 外部より指示されたトレース有効の指示に従って前記第
    一の手段(5)により前記第一のテーブル(1)で指定
    されたアドレスの命令を命令退避エリア(4)に退避し
    て前記特定の上位レベルに割込みが発生する命令に書き
    替え、前記プロセッサ(10)が該命令を実行して上位
    レベルへの割込みが発生したときに、前記第二の手段
    (6)によりトレース収集の条件を判定し、且つ第三の
    手段(7)により各アドレスと条件毎に必要なデータを
    収集し、一方、外部よりのトレース無効の指示に従って
    前記第四の手段(8)により前記命令退避エリア(4)
    に退避していた命令に復元することを特徴とするトレー
    ス方式。
  2. 【請求項2】請求項1記載のトレース方式に於いて、 前記第一乃至第三のテーブル(1,2,3)及び命令退
    避エリア(4)をコントロールストレージ(9)で実現
    し、更に前記第一乃至第四の手段(5,6,7,8)を
    前記コントロールストレージ(9)のファームウェア
    (11)で実現したことを特徴とするトレース方式。
JP3031278A 1991-02-27 1991-02-27 トレース方式 Withdrawn JPH05100895A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3031278A JPH05100895A (ja) 1991-02-27 1991-02-27 トレース方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3031278A JPH05100895A (ja) 1991-02-27 1991-02-27 トレース方式

Publications (1)

Publication Number Publication Date
JPH05100895A true JPH05100895A (ja) 1993-04-23

Family

ID=12326855

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3031278A Withdrawn JPH05100895A (ja) 1991-02-27 1991-02-27 トレース方式

Country Status (1)

Country Link
JP (1) JPH05100895A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7665066B2 (en) 2001-04-12 2010-02-16 Siemens Aktiengesellschaft Method for determining and recording system information and function in distributed parallel component based software systems

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7665066B2 (en) 2001-04-12 2010-02-16 Siemens Aktiengesellschaft Method for determining and recording system information and function in distributed parallel component based software systems

Similar Documents

Publication Publication Date Title
US5386565A (en) Method and system for controlling/monitoring computer system having plural operating systems to run thereon
JPS6363933B2 (ja)
JPH05100895A (ja) トレース方式
JP3130798B2 (ja) バス転送装置
JPS59106060A (ja) デ−タロギング方式
JPH11119992A (ja) ファームウェアのトレース制御装置
JPS6259816B2 (ja)
JPS63118964A (ja) 情報処理装置
JPS6180443A (ja) チエツクデ−タ作成格納方法
JPH08314766A (ja) 情報処理装置
JPH05143197A (ja) 演算処理装置
JPS59163653A (ja) デバツグ装置
JPS6365946B2 (ja)
JPH05313954A (ja) マルチプロセッサおよびその情報採取とメモリ操作方法
JPH06175921A (ja) 主記憶障害情報収集方式
JPS6058491B2 (ja) エラ処理方式
JPH05257831A (ja) 入出力処理装置
JPH06266630A (ja) トレース機能付き入出力制御装置
JPH02148340A (ja) 制御記憶書込み制御方式
JPS6030976B2 (ja) 先行制御方式の情報処理装置
JPH0773076A (ja) トレース情報採取方式
JPH06149630A (ja) 障害情報取得装置
JPH11328012A (ja) 信号処理装置
JPS6174047A (ja) チヤネルリセツト処理方式
JPH01279337A (ja) エラーロギング制御方式

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19980514