JPH05189276A - 排他制御履歴取得方式 - Google Patents

排他制御履歴取得方式

Info

Publication number
JPH05189276A
JPH05189276A JP4004776A JP477692A JPH05189276A JP H05189276 A JPH05189276 A JP H05189276A JP 4004776 A JP4004776 A JP 4004776A JP 477692 A JP477692 A JP 477692A JP H05189276 A JPH05189276 A JP H05189276A
Authority
JP
Japan
Prior art keywords
register
history
execution
bus
memory
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
JP4004776A
Other languages
English (en)
Inventor
Takashi Sakakura
隆史 坂倉
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 JP4004776A priority Critical patent/JPH05189276A/ja
Publication of JPH05189276A publication Critical patent/JPH05189276A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【目的】 密結合型並列処理システムにおけるバスロッ
ク命令の実行履歴を、正確にかつ、並列プログラムの実
行状態に与える影響を最小限に取得する。 【構成】 CPUにバスロック命令実行履歴取得の有無
を示すレジスタを設け、該レジスタがONであったなら
ば、バスロック命令実行時に、バスロック状態のまま、
必要な履歴情報を取得し、共有メモリに格納する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、密結合型並列処理計
算機システムにおける、排他制御実行履歴取得方法に関
する。
【0002】
【従来の技術】従来、バスロックを伴うメモリ書き換え
命令を使用し、構成された、密結合型並列処理システム
において、該メモリ書き換え命令を用いて実現された排
他処理制御実行履歴を取得したいときはソフトウェアに
より行っていたが、該命令発生時にアトミックに情報取
得ができないため、履歴情報が不正となる、また、履歴
取得命令実行のためプログラムの実行状況が変化してし
まう等の問題があった。
【0003】
【発明が解決しようとする課題】従来の技術で説明した
ように、従来のソフトウェアによるバスロックを伴う特
殊命令の実行履歴取得方式では、密結合型の並列処理シ
ステムにおいては正確に履歴を取得できない。なぜなら
ば、該命令の直後に実行履歴の書き出しを行おうとして
も書き出し命令よりも先に、該手順を実行中のCPU以
外のCPUが共有バスを確保してしまう可能性があるか
らである。ソフトウェアによる履歴取得は正確な実行履
歴を取得できないばかりでなく、冗長な実行履歴取得命
令が挿入されることによってお互いに同期をとり合っ
て、複数CPU上で実行されている並列プログラムの実
行状況を変化させてしまう。
【0004】この発明は、上記のような課題を解決する
ためになされたもので、密結合型並列処理システムにお
けるデバッグ作業の効率向上や、性能チューンのための
履歴情報の取得を目的としている。
【0005】
【課題を解決するための手段】この発明は、密結合型の
並列処理システムにおいて排他制御を行うために、他C
PUのバスアクセスを禁止する、バスロックを伴うメモ
リ書き換え命令において、CPU内にバスロックを伴う
該命令の実行履歴取得を行うか否かを示すレジスタを設
け、該レジスタがONであれば、マイクロプログラムさ
れた該命令はバスロック状態にした上、メモリ内容の書
き換え等の本来の作業に加え、例えば、汎用レジスタに
ある、プログラムカウンタ等の情報や、グローバルタイ
マによるタイムスタンプ等の情報を該レジスタにソフト
ウェアにより予め格納された、メモリ上の格納先アドレ
スに格納する。逆に、該レジスタがOFFであれば、バ
スロック状態にした上、本来の作業のみを実行し、共有
バスを解放する。
【0006】このように取得されたバスロックを伴う命
令の実行履歴を、すべてのCPUについて取りだし、こ
れをタイムスタンプにより時系列上に整理するなどし
て、実行状態を解析する。
【0007】
【作用】この発明によれば、密結合型の並列処理システ
ムにおける、共有バスロックを伴う排他制御命令の実行
履歴を、正確に、また、並列処理プログラムの実行に与
える影響を最小限に取得することが可能となる。
【0008】
【実施例】本発明による実施例を図を用い説明する。図
1は本発明が適用される密結合型の並列処理システムの
システム構成図で、共有バス102に、共有メモリ10
1、番号103、104、および105で示すn個のC
PU、グローバルタイマ、そして、I/O装置107が
接続されている。共有バスに接続された全てのCPU2
00は、図2に示す構成になっており、201はメモリ
バス、202は処理ユニット、203はバスロック命令
の実行履歴取得の有無を示すレジスタである。
【0009】本発明によるCPUでは、バスロック命令
は、図3に示す手順で行われる。ただし、301にある
履歴フラグは203のレジスタを示し、該レジスタは履
歴情報格納先のメモリ上のアドレスを格納している。該
レジスタはソフトウェアによって設定され、値が0であ
れば、実行履歴取得フラグとしてOFFであることを示
す。
【0010】バスロック命令が発せられたならば、共有
バスを300でロックする、レジスタ203を参照し、
301で履歴フラグとして0であったなら、つまり、履
歴取得を行わない時は、305の本来の命令実行、例え
ば、指定アドレスのメモリ内容の書き換えを行い、30
6で共有バスを解放し、終了する。301で203が0
以外の値のメモリアドレス値であったなら、つまり、履
歴取得を行う時は、302でグローバルタイマの読み出
しを行い、303で汎用レジスタから、必要な情報を読
み出し、それぞれ、レジスタ203の示す履歴情報格納
先に格納し、305で本来の命令実行を行い、306で
共有バスを解放し終了する。
【0011】
【発明の効果】以上のように、本発明によれば、密結合
型の並列処理システムにおいて、CPU間の排他制御の
ために発行する、バスロック命令の実行履歴とき、ソフ
トウェアによる方法に比較し、正確に、しかも、並列処
理プログラムの実行状態への影響を最小限に抑えること
ができる。
【図面の簡単な説明】
【図1】この発明の一実施例に係わる密結合型並列処理
システムの構成を示すブロック図である。
【図2】図1中のCPUの構成を示す構成図である。
【図3】実施例の動作の説明をするフローチャートであ
る。
【符号の説明】
101 共有メモリ 102 共有バス 103〜105 CPU 106 グローバルタイマ 107 I/O装置 200 CPU 201 メモリバス 202 処理ユニット 203 履歴取得フラグレジスタ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 各CPU内に履歴取得の有無を示すレジ
    スタを設けることにより、バスロック命令発生時に、該
    レジスタがONならば、バスロック状態のまま実行履歴
    を書き出すことを特徴とする排他制御履歴取得方式。
JP4004776A 1992-01-14 1992-01-14 排他制御履歴取得方式 Pending JPH05189276A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4004776A JPH05189276A (ja) 1992-01-14 1992-01-14 排他制御履歴取得方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4004776A JPH05189276A (ja) 1992-01-14 1992-01-14 排他制御履歴取得方式

Publications (1)

Publication Number Publication Date
JPH05189276A true JPH05189276A (ja) 1993-07-30

Family

ID=11593238

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4004776A Pending JPH05189276A (ja) 1992-01-14 1992-01-14 排他制御履歴取得方式

Country Status (1)

Country Link
JP (1) JPH05189276A (ja)

Similar Documents

Publication Publication Date Title
US6799236B1 (en) Methods and apparatus for executing code while avoiding interference
US7131115B2 (en) Unwinding instrumented program code
US6886081B2 (en) Method and tool for determining ownership of a multiple owner lock in multithreading environments
US8028132B2 (en) Collision handling apparatus and method
IL100991A (en) Method for translating a first program code to a second program code
EP1125199B1 (en) Method of debugging a program thread
JPH0810437B2 (ja) 仮想計算機システムのゲスト実行制御方式
JPH10214203A (ja) 情報処理装置
JP2671160B2 (ja) 例外処理方式
JP2562838B2 (ja) プロセッサ及びストアバッファ制御方法
JPH01125633A (ja) マルチプロセッサシステムのデバッグ法
JPS61141047A (ja) 障害情報の退避方式
JPH0283749A (ja) マイクロプロセッサの内部割込み制御方式
JP3130798B2 (ja) バス転送装置
JPH08286950A (ja) 情報処理装置及びトレース情報格納方法
JPH08320813A (ja) プログラムシミュレータ装置及びプログラムデバッグ方法
JPS5834856B2 (ja) キオクセイギヨソウチ
JPH04365133A (ja) プレロード命令実行装置及びプログラム修正装置
JPH03225533A (ja) コピーオンライト逆実行チェックポイント方式
JPS60214046A (ja) 異常終了処理制御方式
JPS6231434A (ja) 命令アドレス制御方式
JPH04134535A (ja) マルチタスクプログラムの例外情報採取機構
JPS62204338A (ja) Lisp言語処理システム
JPS59167760A (ja) 情報処理装置
JPS613251A (ja) 処理装置のプログラムデバツグ機構