JPH07334374A - Interruption detection processor - Google Patents

Interruption detection processor

Info

Publication number
JPH07334374A
JPH07334374A JP15297194A JP15297194A JPH07334374A JP H07334374 A JPH07334374 A JP H07334374A JP 15297194 A JP15297194 A JP 15297194A JP 15297194 A JP15297194 A JP 15297194A JP H07334374 A JPH07334374 A JP H07334374A
Authority
JP
Japan
Prior art keywords
interrupt
instruction code
code
interruption
virtual
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
JP15297194A
Other languages
Japanese (ja)
Inventor
Shunichi Yasuda
俊一 安田
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co 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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP15297194A priority Critical patent/JPH07334374A/en
Publication of JPH07334374A publication Critical patent/JPH07334374A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To provide the interruption detection processor for reducing the deceleration of execution speed and the memory consumption of a real computer caused by the detection processing of interruption to a software program to be executed by an emulator. CONSTITUTION:At an interruption handier part 4 to be started from the real computer corresponding to the generation of interruption, an instruction code storage control means 43 saves an instruction code for a prescribed length from the leading address of an instruction code B following an instruction code A, where the interruption is generated, and an instruction code reloading means 44 reloads this instruction code for the prescribed length into a jump instruction code 6 to an interruption preprocessing part 5 and recovers the instruction code A in the middle of execution later. Next, the following jump instruction code 6 is executed, the processing of the interruption preprocessing part 5 is started, an instruction code write back means 51 writes back the jump instruction code 6 to this saved instruction code for the prescribed length, and an interruption detecting means 52 detects the generation of interruption at a real computer and its kind and reports that information to an interruption processing part 7.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、割り込み処理手段を備
えるソフトウェアプログラムを異なるプロセッサアーキ
テクチャの計算機で実行するエミュレータに係わり、前
記計算機で発生した割り込みを検出し前記割り込み処理
手段に割り込みを通知する割り込み検出処理装置に関す
るものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an emulator for executing a software program having an interrupt processing means on a computer having a different processor architecture, and detecting an interrupt generated by the computer and notifying the interrupt processing means of the interrupt. The present invention relates to a detection processing device.

【0002】[0002]

【従来の技術】ソフトウェアプログラムを異なるプロセ
ッサアーキテクチャの計算機で実行するために、ソフト
ウェアプログラムコード列を計算機の命令コード列に翻
訳し、計算機が翻訳された命令コード列を実行すること
によって、ソフトウェアプログラムを実行する手段とし
て、エミュレーション方式およびトランスレーション方
式が一般に知られている(以下、翻訳された命令コード
列を実行する計算機を「実計算機」と呼ぶ)。また、翻
訳前のソフトウェアプログラムは、実計算機上で実行さ
れるエミュレーション方式あるいはトランスレーション
方式によるエミュレータによって実現される仮想計算機
上で実行される。なお、トランスレーション方式は、広
義のエミュレーション方式に含める考え方もあるが、本
発明では従来技術の問題点と発明の改良点の説明上、区
別して記述する。
2. Description of the Related Art In order to execute a software program on a computer having a different processor architecture, a software program code sequence is translated into an instruction code sequence of the computer, and the computer executes the translated instruction code sequence to execute the software program. An emulation method and a translation method are generally known as means for executing (hereinafter, a computer that executes a translated instruction code string is referred to as an “actual computer”). The software program before translation is executed on a virtual computer realized by an emulator based on an emulation method or a translation method executed on a real computer. It should be noted that the translation method may be included in the emulation method in a broad sense, but in the present invention, they will be described separately for the purpose of explaining the problems of the conventional technology and the improvements of the invention.

【0003】前記仮想計算機においては、実計算機のハ
ードウェア割り込みは、仮想計算機上でのソフトウェア
プログラムの実行とは非同期で発生する。また、仮想計
算機での割り込み処理は、仮想計算機上での一つのプロ
セスで実現されるため、実計算機のハードウェア割り込
みが発生した場合は、実行中の仮想計算機上のプロセス
から、仮想計算機上の割り込み処理に確実に移行する必
要がある。そのために、仮想計算機上での命令コードの
実行に同期して割り込みの発生を検出するために、メモ
リあるいはレジスタなどを利用して割り込みが発生した
かどうかを示すフラグを用意しておき、このフラグの状
態を検査することによって割り込み発生の有無を検出す
るコードを、実計算機の翻訳されたコードに含める必要
がある。このことによって、実計算機で発生したハード
ウェア割り込みに対して、仮想計算機上で実行中のプロ
セスから、割り込み処理に確実に移行することが可能に
なる。
In the virtual machine, the hardware interrupt of the real machine occurs asynchronously with the execution of the software program on the virtual machine. Also, since interrupt processing in the virtual machine is realized by one process on the virtual machine, when a hardware interrupt of the real machine occurs, the process on the virtual machine being executed will It is necessary to shift to interrupt processing without fail. Therefore, in order to detect the occurrence of an interrupt in synchronization with the execution of an instruction code on a virtual machine, prepare a flag that indicates whether an interrupt has occurred using a memory or a register. It is necessary to include in the translated code of the real computer the code that detects the presence or absence of an interrupt by checking the state of. This makes it possible to reliably shift from a process being executed on a virtual computer to an interrupt process for a hardware interrupt generated on a real computer.

【0004】この割り込み検出方法として、次の3つの
方法が知られている。第一の方法は、エミュレーション
方式において、翻訳前のソフトウェアプログラムの命令
コード、すなわち、仮想計算機の命令コード(以下、
「仮想コード」と呼ぶ)を読み込む段階の前と、あるい
は読み込んだ仮想コードに対応した各々の仮想コードの
処理にディスパッチする段階の前に、割り込み検出処理
を組み込む方法である。図3は、エミュレーション方式
の基本動作の一例を示す。この例は、手続型言語のプロ
グラミング言語でのスタックマシンにおいて、仮想コー
ドを規定した場合に一般的に用いられる方式である。ま
ず、仮想計算機は、仮想コードの読み込みを行い(ステ
ップS1)、次に、読み込んだ仮想コードに対応した仮
想コードの処理にディスパッチし(ステップS2)、次
に、読み込んだ仮想コードの処理を実行する(ステップ
S3)。以上の処理が終了すると、再び次の仮想コード
に対して同様の処理を繰り返すことによって処理が進ん
でいく。
The following three methods are known as this interrupt detection method. In the emulation method, the first method is the instruction code of the software program before translation, that is, the instruction code of the virtual machine (hereinafter,
This is a method of incorporating an interrupt detection process before the step of reading the "virtual code") or before the step of dispatching to the processing of each virtual code corresponding to the read virtual code. FIG. 3 shows an example of the basic operation of the emulation method. This example is a system generally used when a virtual code is defined in a stack machine in a procedural programming language. First, the virtual computer reads the virtual code (step S1), then dispatches to the processing of the virtual code corresponding to the read virtual code (step S2), and then executes the processing of the read virtual code. Yes (step S3). When the above process is completed, the same process is repeated for the next virtual code to proceed the process.

【0005】図4は、前述の図3の方式に割り込み検出
処理を加えた一例を示す。図4に示すように割り込み検
出処理は、次に述べる理由によりディスパッチ処理の前
に行う(ステップS0)のが一般的である。つまり、割
り込み検出処理を仮想コードの処理を行う際、すなわち
ステップS3で行った場合、仮想コードの処理が中断し
た段階で割り込み処理に制御を移すことになり、割り込
みされた元の実行状態への復帰が困難になるため、割り
込みは仮想コードの実行と実行の間で行う必要がある。
FIG. 4 shows an example in which interrupt detection processing is added to the method of FIG. 3 described above. As shown in FIG. 4, the interrupt detection process is generally performed before the dispatch process (step S0) for the following reason. That is, when the interrupt detection process is performed on the virtual code, that is, when it is performed in step S3, control is transferred to the interrupt process at the stage where the virtual code process is interrupted, and the interrupted original execution state is restored. Interrupts must be between executions of virtual code because recovery is difficult.

【0006】第二の方法は、トランスレーション方式に
おいて、仮想コードに対応した翻訳された実計算機のオ
ブジェクトコード列に割込検出処理コードを組み込むも
のである。図5は、トランスレーション方式による仮想
コード列80と仮想コード列80から翻訳されて実計算
機キャシュ81に記憶された実計算機のオブジェクトコ
ード列の対応関係の一例を示す。トランスレーション方
式は、エミュレーション方式の実行性能の不足を改善す
る場合などに、実行するソフトウエアプログラムに対し
適用され、実行性能の高速化をはたす。トランスレーシ
ョンの実行は、プロシジャコールやリターンなどのコン
トロールトランスファが発生した場合にプロシジャ単位
で行われる。また毎回の呼出しでプロシジャのトランス
レーションを行うと、トランスレーションに要する処理
時間がオーバーヘッドになり、ソフトウェアプログラム
の実用的な実行性能を得られない場合がある。このため
に、一度トランスレーションした結果をプロシジャ単位
でキャッシュしておき、再利用を図ることによってトラ
ンスレーションによるオーバーヘッドを軽減できる。つ
まりキャッシュによって、一度トランスレーションされ
た仮想計算機のプロシジャは、2度目以後の実行では実
計算機のオブジェクトコードで実現されたプロシジャと
して高速に実行できる。従って、キャッシュされたプロ
シジャの再利用の割合が高くなればなるほど、トランス
レーション方式による高速化のメリットを得ることがで
きる。
The second method is to incorporate the interrupt detection processing code into the translated object code string of the real computer corresponding to the virtual code in the translation method. FIG. 5 shows an example of the correspondence relationship between the virtual code string 80 by the translation method and the object code string of the real computer translated from the virtual code string 80 and stored in the real computer cache 81. The translation method is applied to a software program to be executed in order to improve the lack of the execution performance of the emulation method, and speeds up the execution performance. The translation is executed for each procedure when a control transfer such as a procedure call or a return occurs. Further, if the procedure is translated each time it is called, the processing time required for the translation becomes an overhead, and the practical execution performance of the software program may not be obtained. Therefore, the result of translation can be cached for each procedure and reused to reduce the overhead due to translation. In other words, by the cache, the procedure of the virtual computer once translated can be executed at high speed as the procedure realized by the object code of the real computer in the second and subsequent executions. Therefore, the higher the reuse rate of the cached procedure, the higher the speed of the translation method.

【0007】図6は、前述の図5に示された翻訳されて
実計算機の実計算機キャシュ81に記憶されたオブジェ
クトコード列に割込検出処理コード82を組み込んだ一
例を示す。図6に示すように、エミュレーション方式と
同じ手法で割り込み待ちを最小にするために、仮想コー
ドに対応する実計算機のオブジェクトコードの各々の命
令コードに割込検出処理コード82を含める必要があ
る。この方法は、割込検出処理コード82を加えること
によって、コード量が増大するとともに実行速度が大幅
に低下するため実用的でない。
FIG. 6 shows an example in which the interrupt detection processing code 82 is incorporated in the object code string translated and stored in the real computer cache 81 of the real computer shown in FIG. As shown in FIG. 6, in order to minimize the interrupt wait by the same method as the emulation method, it is necessary to include the interrupt detection processing code 82 in each instruction code of the object code of the real computer corresponding to the virtual code. This method is not practical because the code amount is increased and the execution speed is significantly reduced by adding the interrupt detection processing code 82.

【0008】第三の方法は、コントロールトランスファ
と後方へのジャンプに限定して割込検出処理コードを組
み込むものである。この方法は、実行速度の低下を最小
化することを重視する用途に利用される。ただし、仮想
コードがコントロールトランスファあるいは後方へのジ
ャンプをしばらく含まない場合には、割り込み待ちが延
びる可能性がある。しかし、実際のオブジェクトコード
には、長くとも数十命令のうちにはコントロールトラン
スファあるいは後方へのジャンプは出現するため、特に
割り込み処理の実行のタイミングがクリテカルな用途で
の利用を除いては、実用上は問題ない場合が多い。
The third method is to incorporate the interrupt detection processing code only in the control transfer and the backward jump. This method is used for applications that emphasize the minimization of reduction in execution speed. However, if the virtual code does not contain a control transfer or a backward jump for some time, the interrupt wait may be extended. However, in the actual object code, control transfer or backward jump appears in dozens of instructions at the longest, so it is practically used except when it is used for a critical purpose when the timing of interrupt processing is critical. There are often no problems with the above.

【0009】[0009]

【発明が解決しようとする課題】前述の第一の方法、す
なわちエミュレーション方式において、仮想コードを読
み込む段階の前、あるいは読み込んだ仮想コードに対応
した各々の仮想コードの処理にディスパッチする段階の
前に、割り込み検出処理を行う方法では、割り込みが発
生していない状況においても、割り込み検出処理を実行
することによるソフトウェアプログラムの実行速度の低
下、および割り込み検出処理をメモリ上に展開すること
によるにコード量の増加を避けられない。また、前述の
第二の方法、すなわちトランスレーション方式におい
て、仮想コードに対応した翻訳された実計算機のオブジ
ェクトコード列に割込検出処理コードを組み込む方法に
おいても、前述の第一の方法と同様の問題がある。ま
た、前述の第三の方法、すなわちコントロールトランス
ファと後方へのジャンプに限定して割り込み検出処理を
組み込む方法では、割り込みが発生した時刻から割り込
み処理までの待ち時間が延びる場合がある。
In the first method described above, that is, in the emulation method, before the step of reading the virtual code or before the step of dispatching to the processing of each virtual code corresponding to the read virtual code. In the method of performing interrupt detection processing, the execution speed of the software program is reduced by executing the interrupt detection processing even when no interrupt occurs, and the code amount is reduced by expanding the interrupt detection processing on the memory. Inevitable increase. In the second method described above, that is, in the translation method, the method of incorporating the interrupt detection processing code into the translated object code string of the real computer corresponding to the virtual code is the same as the first method described above. There's a problem. Further, in the above-mentioned third method, that is, in the method of incorporating the interrupt detection processing limited to the control transfer and the backward jump, the waiting time from the time when the interrupt occurs to the interrupt processing may be extended.

【0010】本発明の目的は、エミュレータによって実
行されるソフトウェアプログラムへの割り込み検出処理
に伴う、実行速度の低下と、実計算機のメモリ消費とを
低減する割り込み検出処理装置を提供することにある。
SUMMARY OF THE INVENTION An object of the present invention is to provide an interrupt detection processing device that reduces the execution speed and the memory consumption of a real computer that accompany an interrupt detection process for a software program executed by an emulator.

【0011】[0011]

【課題を解決するための手段】上述の目的を達成するた
めに、本発明の割り込み検出処理装置は、実計算機での
割り込みの発生によって実計算機から起動される割込ハ
ンドラ部が、割り込みが発生した実計算機で実行中の命
令コードの後続の命令コードの先頭アドレスから所定長
の命令コードをジャンプ命令コードに書き替える書替手
段と、書替込手段によって書き替えられる前記所定長の
命令コードを退避するための記憶制御手段とを備え、書
替手段によって出力されたジャンプ命令コードのジャン
プ先の割込前処理部が、書替手段によって書き替えたジ
ャンプ命令コードを記憶制御手段によって退避した前記
所定長の命令コードに書き戻す書戻手段と、実計算機で
の割り込みの発生およびその種類を検出し、割り込み処
理手段に割り込みの発生およびその種類を通知する割込
検出手段とを備える。
In order to achieve the above object, in the interrupt detection processing device of the present invention, an interrupt handler unit activated from a real computer when an interrupt occurs in the real computer generates an interrupt. Rewriting means for rewriting the instruction code of a predetermined length from the start address of the instruction code subsequent to the instruction code being executed on the real computer to the jump instruction code, and the instruction code of the predetermined length rewritten by the rewriting means. Storage control means for saving, wherein the interrupt preprocessing unit of the jump destination of the jump instruction code output by the rewriting means saves the jump instruction code rewritten by the rewriting means by the storage control means. A write-back means for writing back an instruction code of a prescribed length and the occurrence and type of an interrupt in a real computer are detected and interrupted by the interrupt processing means. Comprising generating and an interrupt detection means for notifying that type.

【0012】[0012]

【作用】上記構成の本発明の割り込み検出処理装置にお
いては、割り込みの発生によって実計算機から起動され
る割込ハンドラ部において、割り込みが発生した実計算
機で実行中の命令コードの先頭アドレスから所定長の命
令コードを退避し、前記所定長の命令コードを、割込前
処理部へのジャンプ命令コードに書き替え、割込前処理
部において、ジャンプ命令コードを前記退避した所定長
の命令コードの命令コードに書き戻し、前記割り込みの
発生およびその種類を検出して割り込み処理手段に通知
する。従って、割込前処理部に割込検出手段を実現する
割込検出処理コードを組み込むことができるため、割込
前処理部以外の実計算機の命令コード列の中に割込検出
処理コードを組み込む必要はない。また、割込検出手段
を含む割込前処理部の処理は、割り込みの発生によって
起動される割込ハンドラ部の書替手段が前記所定長の命
令コードをジャンプ命令に書き替えることよって実行さ
れるため、割り込みが発生しない通常の処理では前記割
込検出手段の処理は全く実行されない。また、前記実行
中の命令コードの実行終了後に実行する前記割込前処理
部の割込検出手段によって、実計算機での割り込みの発
生と種類を検出し、割り込み処理手段に通知するので、
前記後続の命令コードが実行される前の段階で割り込み
処理手段を実行することができる。
In the interrupt detection processing device of the present invention having the above-described structure, in the interrupt handler section activated by the real computer when an interrupt occurs, a predetermined length from the start address of the instruction code being executed in the real computer where the interrupt has occurred. The instruction code of the predetermined length is rewritten to a jump instruction code to the interrupt preprocessing unit, and the jump instruction code of the instruction code of the saved predetermined length is written in the interrupt preprocessing unit. The code is written back to detect the occurrence of the interrupt and its type, and notify the interrupt processing means. Therefore, the interrupt detection processing code for realizing the interrupt detection means can be incorporated in the interrupt preprocessing unit, so that the interrupt detection processing code is incorporated in the instruction code string of the actual computer other than the interrupt preprocessing unit. No need. Further, the processing of the interrupt preprocessing unit including the interrupt detection unit is executed by the rewriting unit of the interrupt handler unit activated by the occurrence of an interrupt, rewriting the instruction code of the predetermined length into a jump instruction. Therefore, in the normal processing in which no interrupt occurs, the processing of the interrupt detecting means is not executed at all. In addition, since the interrupt detection unit of the interrupt preprocessing unit that is executed after the execution of the instruction code being executed is detected and the type of interrupt in the real computer is detected, the interrupt processing unit is notified.
The interrupt processing means can be executed before the subsequent instruction code is executed.

【0013】[0013]

【実施例】図1は、本発明の割り込み検出処理装置の一
実施例の構成を示す。実施例として用いた仮想計算機
は、手続型のプログラミング言語をベースにスタックマ
シンとして仮想コードを規定したものである。仮想計算
機メモリ1には、翻訳前のソフトウェアプログラムコー
ド列、すなわち仮想計算機コード(以下、「仮想コー
ド」と略称する)列が記憶されている。仮想コードのデ
ータ長は可変であり、一個の仮想コードは一もしくは一
以上のアドレス領域を必要とする。実計算機メモリ2に
は、仮想コード列を実計算機のオブジェクトコードに翻
訳することによって得られる命令コード列が記憶されて
いる。一個の仮想コードは、一個もしくは一個以上の実
計算機のオブジェクトコードに翻訳される。また、一個
の命令コードは一個の仮想コードに対応づけられてい
る。従って、一個の命令コードは、一個もしくは一個以
上の実計算機のオブジェクトコードから構成される。マ
ップテーブル3は、仮想計算機メモリ1に記憶されてい
る各々の仮想コードの先頭アドレスと、この各々の仮想
コードに対応する実計算機メモリ2の各々の命令コード
の先頭アドレスを対にして記憶している。このマップテ
ーブル3は、仮想計算機メモリ1のアドレスから対応す
る実計算機メモリ2の命令コードの先頭アドレス、およ
びこの逆に、命令コードのアドレスから対応する仮想計
算機メモリ1の仮想コードの先頭アドレスを算出するた
めに用いる。
DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 1 shows the configuration of an embodiment of an interrupt detection processing device of the present invention. The virtual machine used as an example defines a virtual code as a stack machine based on a procedural programming language. The virtual computer memory 1 stores a software program code sequence before translation, that is, a virtual computer code (hereinafter abbreviated as “virtual code”) sequence. The data length of the virtual code is variable, and one virtual code requires one or more address areas. The real computer memory 2 stores an instruction code sequence obtained by translating a virtual code sequence into an object code of the real computer. One virtual code is translated into one or more object codes of a real computer. Moreover, one instruction code is associated with one virtual code. Therefore, one instruction code is composed of one or more object codes of the real computer. The map table 3 stores a pair of the start address of each virtual code stored in the virtual computer memory 1 and the start address of each instruction code of the real computer memory 2 corresponding to each virtual code. There is. This map table 3 calculates the start address of the corresponding instruction code of the real computer memory 2 from the address of the virtual computer memory 1 and, conversely, the start address of the virtual code of the corresponding virtual computer memory 1 from the address of the instruction code. Used to do.

【0014】割込ハンドラ部4は、ハードウェア割り込
みが発生した時に、実計算機のオペレーティングシステ
ムによって呼び出されるソフトウエアプログラムであ
り、割込位置特定手段42、命令コード記憶制御手段4
3および命令コード書替手段44を含み構成されてい
る。割込位置特定手段42は、実行環境記憶部21から
割り込みが発生した時点の実計算機のプログラムカウン
タの値を得て、この値からマップテーブル3を参照し
て、割り込みが発生した仮想計算機メモリ1の仮想コー
ドAと、実計算機メモリ2の命令コードAを特定し、さ
らに、命令コードAからマップテーブル3を参照して後
続の命令コードBを特定する手段である。前記プログラ
ムカウンタの値は、割り込みの発生によって割込ハンド
ラ部4に処理が移行した時点までに実行が終了したオブ
ジェクトコードの次のオブジェクトコードの実計算機メ
モリ2のアドレスを示している。命令コード記憶制御手
段43は、命令コード書替込手段44によって書き替え
られる後続の命令コードBの先頭アドレスから所定長
(後述のジャンプ命令コードの長さに等しい)の命令コ
ードを命令コード記憶部22に退避する手段である。命
令コード書替手段44は、前記命令コードBの先頭アド
レスから所定長の命令コードを割込前処理部5へのジャ
ンプ命令6に書き替える手段である。
The interrupt handler unit 4 is a software program called by the operating system of the real computer when a hardware interrupt occurs, and the interrupt position specifying unit 42 and the instruction code storage control unit 4 are provided.
3 and instruction code rewriting means 44. The interrupt position specifying means 42 obtains the value of the program counter of the real computer at the time when the interrupt occurs from the execution environment storage unit 21, refers to the map table 3 from this value, and refers to the virtual computer memory 1 at which the interrupt occurred. Of the virtual code A and the instruction code A of the real computer memory 2, and further refers to the map table 3 from the instruction code A to specify the subsequent instruction code B. The value of the program counter indicates the address of the real computer memory 2 of the object code next to the object code that has been executed by the time the processing is transferred to the interrupt handler unit 4 due to the occurrence of an interrupt. The instruction code storage control unit 43 stores an instruction code of a predetermined length (equal to the length of a jump instruction code described later) from the start address of the subsequent instruction code B rewritten by the instruction code rewriting unit 44. It is a means to evacuate to 22. The instruction code rewriting unit 44 is a unit that rewrites an instruction code of a predetermined length from the start address of the instruction code B into a jump instruction 6 to the interrupt preprocessing unit 5.

【0015】割込前処理部5は、割込処理部7での処理
に移行するために必要な前処理を行うもので、命令コー
ド書戻手段51、割込検出手段52および割込処理起動
手段53を含み構成されている。命令コード書戻手段5
1は、ジャンプ命令6を命令コード記憶部22に退避さ
れている上記所定長の命令コードに書き替え、実計算機
メモリ2の命令コードBを割り込み発生前の状態に戻す
手段である。実計算機での割り込みの発生によって、実
計算機では割り込みレジスタに発生したハードウェア割
り込みの種類を示すフラグをセットする。割込検出手段
52は、前記割り込みレジスタを参照し、仮想計算機メ
モリ1の割込フラグレジスタ11に前記割り込みの種類
に対応するフラグをセットすることによって、仮想計算
機の割り込み処理手段に割り込みの発生と種類を通知す
る。
The interrupt preprocessing unit 5 performs preprocessing required for shifting to the processing in the interrupt processing unit 7, and includes an instruction code write-back unit 51, an interrupt detection unit 52 and an interrupt process activation. It is configured to include the means 53. Instruction code writing back means 5
Reference numeral 1 is a means for rewriting the jump instruction 6 to the instruction code of the above-mentioned predetermined length saved in the instruction code storage unit 22 and returning the instruction code B of the real computer memory 2 to the state before the interruption. When an interrupt occurs in the real computer, the real computer sets a flag indicating the type of hardware interrupt that has occurred in the interrupt register. The interrupt detection means 52 refers to the interrupt register and sets a flag corresponding to the type of the interrupt in the interrupt flag register 11 of the virtual machine memory 1 to notify the interrupt processing means of the virtual machine that an interrupt has occurred. Notify the type.

【0016】割込処理起動手段53は、仮想計算機のス
ケジューラによってスケジューリングを実行し、発生し
た割り込みの仮想計算機での実行順位を決め、さらに前
記スケジューリングの実行によって、次に実行する割込
処理の先頭の仮想コードアドレス、すなわち仮想コード
列71の仮想コードCのアドレスを決定する。通常は、
割り込み処理が最高のプライオリティで実行される。ま
た、割込処理起動手段53は、前記スケジューリングに
よって決定された、次に実行するプロシジャの実行に必
要な各パラメータと属性などのデータを準備する。次に
実行する仮想コードに対応する実計算機のオブジェクト
コードが実計算機のキャッシュに無い場合は、新たにト
ランスレートして前記キャッシュに記憶する。また、割
込処理起動手段53は、前記仮想コードCのアドレスか
らマップテーブル3を参照して次に実行する先頭の命令
コードのアドレス、すなわち割込処理命令コード列73
の命令コードCのアドレスを決定する。
The interrupt process starting means 53 executes scheduling by the scheduler of the virtual machine, determines the order of execution of the generated interrupt in the virtual machine, and further executes the scheduling to start the next interrupt process. Of the virtual code C, that is, the address of the virtual code C of the virtual code string 71 is determined. Normally,
Interrupt processing is executed with the highest priority. Further, the interrupt process starting means 53 prepares data such as parameters and attributes which are determined by the scheduling and are necessary for executing the procedure to be executed next. When the object code of the real computer corresponding to the virtual code to be executed next is not in the cache of the real computer, it is newly translated and stored in the cache. Further, the interrupt processing activation means 53 refers to the map table 3 from the address of the virtual code C, the address of the first instruction code to be executed next, that is, the interrupt processing instruction code string 73.
The address of the instruction code C is determined.

【0017】ジャンプ命令6は、割り込みが発生した実
計算機メモリ2で実行中の命令コードの後続の上記所定
長(ジャンプ命令6の長さに等しい)の命令コードを、
割込ハンドラ部4の命令コード書替手段44によって、
割込前処理部5へのジャンプ命令コードに書き替えた結
果得られる命令コードである。
The jump instruction 6 is an instruction code of a predetermined length (equal to the length of the jump instruction 6) following the instruction code being executed in the real computer memory 2 in which the interrupt has occurred.
By the instruction code rewriting means 44 of the interrupt handler unit 4,
It is an instruction code obtained as a result of rewriting to the jump instruction code to the interrupt preprocessing unit 5.

【0018】割込処理部7は、割込処理仮想コード列7
1、割込処理マップテーブル72、および割込処理命令
コード列73を含み構成されている割り込み処理部であ
る。割込処理部7は、割り込み処理に伴う実際のハード
ウェア等のリソース操作の処理を行い、この割り込み処
理もトランスレーションにより実計算機のオブジェクト
コードに変換され実行される。割込処理仮想コード列7
1は、割り込みの種類毎に用意された仮想計算機のプロ
シジャの仮想コード列の一部であり、仮想コードCは、
割り込み要求のあった割り込み処理の先頭の仮想コード
である。割込処理マップテーブル72は、割込処理仮想
コード列71と割込処理命令コード列73のマップテー
ブルである。割込処理命令コード列73は、割込処理仮
想コード列71に対応した実計算機メモリ2上の命令コ
ード列である。
The interrupt processing unit 7 is a virtual code string 7 for interrupt processing.
1, an interrupt processing map table 72, and an interrupt processing instruction code string 73. The interrupt processing unit 7 performs processing of actual resource operations such as hardware associated with interrupt processing, and this interrupt processing is also converted into object code of a real computer by translation and executed. Interrupt processing virtual code string 7
1 is a part of the virtual code sequence of the procedure of the virtual computer prepared for each type of interrupt, and the virtual code C is
It is the virtual code at the beginning of the interrupt process for which an interrupt request was made. The interrupt process map table 72 is a map table of the interrupt process virtual code sequence 71 and the interrupt process instruction code sequence 73. The interrupt processing instruction code string 73 is an instruction code string on the real computer memory 2 corresponding to the interrupt processing virtual code string 71.

【0019】割込フラグレジスタ11は、仮想計算機で
実計算機で発生した割り込みの種類に対応した処理を行
うために、実計算機で発生した割り込みの種類を割込検
出手段52によって仮想計算機の割り込み処理手段に通
知するためのレジスタである。実行環境記憶部21は、
割り込みの発生によって実計算機上での処理が割り込み
処理に移行し、再び実計算機上の元の処理に復帰する際
に必要なプログラム実行環境データを退避する記憶部で
ある。割り込み発生時のプログラムカウンタの値も実行
環境記憶部21の記憶データに含まれる。命令コード記
憶部22は、命令書替手段44によって書き替えられる
命令コードを退避するための記憶部である。
The interrupt flag register 11 determines the type of interrupt generated by the real computer by the interrupt detection means 52 in order to perform the processing corresponding to the type of interrupt generated by the real computer in the virtual computer. This is a register for notifying the means. The execution environment storage unit 21 is
This is a storage unit that saves the program execution environment data required when the process on the real computer shifts to the interrupt process due to the occurrence of the interrupt and returns to the original process on the real computer again. The value of the program counter when the interrupt occurs is also included in the storage data of the execution environment storage unit 21. The instruction code storage unit 22 is a storage unit for saving the instruction code rewritten by the instruction rewriting unit 44.

【0020】次に、上述のように構成された図1の割り
込み検出処理装置の実施例の動作について図2を参照し
て説明する。実計算機メモリ2に記憶されている命令コ
ードAを実行中に(ステップS11)、実計算機のI/
O等からのハードウェア割り込みの発生によって、割込
ハンドラ部4に制御が移る(ステップS12)。
Next, the operation of the embodiment of the interrupt detection processing device of FIG. 1 configured as described above will be described with reference to FIG. While the instruction code A stored in the real computer memory 2 is being executed (step S11), the I / I of the real computer is
Control is transferred to the interrupt handler unit 4 when a hardware interrupt is generated from O or the like (step S12).

【0021】次に、割込ハンドラ部4は、以後の処理の
割り込みを禁止にする。次に、割込ハンドラ部4の割込
位置特定手段42は、実行環境記憶部21から割り込ま
れた時点での実計算機のプログラムカウンタの値aを得
て(ステップS13)、前記値aからマップテーブル3
を検索して、値aが命令コードAの先頭アドレスと命令
コードBの先頭アドレスの間の値であることから、実計
算機メモリ2の命令コードAの実行中に割り込みが発生
したことを知る(ステップS14)。ここでの検索は、
マップテーブル3に含まれる実計算機メモリ2のアドレ
スをアドレス順に検索するか、あるいは二分検索等によ
って行う。
Next, the interrupt handler unit 4 disables interruption of subsequent processing. Next, the interruption position specifying means 42 of the interruption handler unit 4 obtains the value a of the program counter of the real computer at the time of interruption from the execution environment storage unit 21 (step S13), and maps from the value a. Table 3
And the value a is a value between the start address of the instruction code A and the start address of the instruction code B, it is known that an interrupt occurs during execution of the instruction code A in the real computer memory 2 ( Step S14). The search here is
The address of the real computer memory 2 included in the map table 3 is searched in the order of address, or by binary search or the like.

【0022】次に、割込位置特定手段42は、マップテ
ーブル3を検索して前記命令コードAに対応する仮想計
算機メモリ1の仮想コードAを特定する。仮想コードA
の命令の種類がジャンプあるいはコントロールトランス
ファの場合は、次の命令が実行されない可能性があるた
めに、今回の割り込みはキャンセルする。つまり命令の
書き替えは行わず命令コードAにリターンする。この操
作により一度割り込みを逃すことになるが、タイマー割
り込みが数十分の一秒ごとに入るために、タイマー割り
込みが入った時点で、一度逃した割り込み処理を行うこ
とができる。実施例の仮想計算機では、割り込みのタイ
ミングは各仮想コードの実行ごととなっており、割り込
みの種別を判別するために、レジスタを用意して、レジ
スタの各ビットをどの割り込みが発生したかを示すフラ
グとして使う。従って、割り込みを逃した場合にでも、
次回の割り込み処理時に逃した割り込みも処理されるこ
ととなり、タイマー割り込みが上記のように必ず入るた
めに、割り込み処理待ちは発生するが通常は問題がな
い。さらに、割込位置特定手段42は、マップテーブル
3に記憶されている前記仮想コードAのアドレスの後の
アドレスは、仮想コードBであることから、次に実行す
る仮想コードBを特定し、さらに、前記仮想コードBの
アドレスからマップテーブル3を参照して、仮想コード
Bに対応する実計算機メモリ2に記憶されている命令コ
ードBの先頭アドレスを特定する(ステップS15)。
Next, the interrupt position specifying means 42 searches the map table 3 and specifies the virtual code A of the virtual computer memory 1 corresponding to the instruction code A. Virtual code A
If the type of instruction is jump or control transfer, the next instruction may not be executed, so this interrupt is canceled. That is, the instruction is not rewritten and the operation returns to the instruction code A. This operation causes an interrupt to be missed once, but since the timer interrupt enters every several tenths of a second, the interrupt process once missed can be performed when the timer interrupt is entered. In the virtual machine of the embodiment, the interrupt timing is set for each execution of each virtual code, a register is prepared in order to determine the interrupt type, and each bit of the register indicates which interrupt has occurred. Use as a flag. Therefore, even if you miss the interrupt,
The interrupt missed at the next interrupt process will also be processed, and the timer interrupt always enters as described above, so an interrupt process wait occurs, but there is usually no problem. Further, the interrupt position specifying means 42 specifies the virtual code B to be executed next, because the address after the address of the virtual code A stored in the map table 3 is the virtual code B, and further, Then, the start address of the instruction code B stored in the real computer memory 2 corresponding to the virtual code B is specified by referring to the map table 3 from the address of the virtual code B (step S15).

【0023】次に、命令コード記憶制御手段43は、ス
テップS15で特定した命令コードBの先頭アドレスか
ら、割込前処理部5へのジャンプ命令6の長さに等しい
命令コード、すなわち命令コードBの先頭のオブジェク
トコードを含む領域、を実計算機メモリ2の命令コード
記憶部22に退避する(ステップS16)。
Next, the instruction code storage control means 43 has an instruction code equal to the length of the jump instruction 6 from the start address of the instruction code B specified in step S15 to the interrupt preprocessor 5, that is, the instruction code B. The area including the object code at the head of the is stored in the instruction code storage unit 22 of the real computer memory 2 (step S16).

【0024】次に,命令コード書替手段44は、前記命
令コードBの先頭アドレスの内容を割込前処理部5への
ジャンプ命令6に書き替える(ステップS17)。以上
の割込ハンドラ部4での処理が終了した後、実行途中の
命令コードAに復帰する(ステップS18)。実計算機
のプロセッサがインストラクションキャッシュを備えて
いる場合には、命令の書き替えを行っているのでインス
トラクションキャッシュのフラッシュ等の処理が必要と
なる。
Next, the instruction code rewriting means 44 rewrites the contents of the start address of the instruction code B into the jump instruction 6 to the interrupt preprocessing section 5 (step S17). After the above processing in the interrupt handler unit 4 is completed, the instruction code A that is being executed is returned (step S18). When the processor of the real computer has an instruction cache, the instruction cache is rewritten, so that processing such as flushing of the instruction cache is required.

【0025】次に、実計算機は、実行途中の命令コード
Aの残りを実行し、後続の命令コードBの実行に移る。
後続の命令コードBは命令コード書替手段44によって
ジャンプ命令6に書き替えられているため、割込前処理
部5にジャンプする(ステップS19)。次に、割込前
処理部5の命令コード書戻手段51は、ジャンプ命令6
を命令コード記憶制御手段43によって命令コード記憶
部22に退避した命令コードに書き戻し、命令コードB
を割り込み発生前の状態に戻す(ステップS20)。次
に、割込検出手段52は、実計算機で発生したハードウ
ェア割り込みの種類を仮想計算機メモリ1の割込フラグ
レジスタ11にセットし、仮想計算機に割り込みの発生
を通知する(ステップS21)。
Next, the real computer executes the rest of the instruction code A which is being executed, and shifts to the execution of the subsequent instruction code B.
Since the subsequent instruction code B has been rewritten to the jump instruction 6 by the instruction code rewriting means 44, the instruction code B jumps to the interrupt preprocessor 5 (step S19). Next, the instruction code write-back means 51 of the interrupt pre-processing unit 5 makes the jump instruction 6
Is written back to the instruction code saved in the instruction code storage unit 22 by the instruction code storage control means 43, and the instruction code B
To the state before the interruption occurred (step S20). Next, the interrupt detecting means 52 sets the type of the hardware interrupt generated in the real computer in the interrupt flag register 11 of the virtual computer memory 1 and notifies the virtual computer of the occurrence of the interrupt (step S21).

【0026】次に、割込処理起動手段53は、仮想計算
機のスケジューラによってスケジューリングを実行し、
発生した割り込みの仮想計算機での実行順位を決め(ス
テップS22)、前記スケジューリングの実行によっ
て、次に実行する割込処理の先頭の仮想コードアドレ
ス、すなわち仮想コード列71の仮想コードCのアドレ
スを決定し(ステップS23)、前記仮想コードCのア
ドレスからマップテーブル3を参照して、次に実行する
割込処理の先頭の命令コードのアドレス、すなわち割込
処理の命令コード列73の命令コードCのアドレスを決
定する(ステップS24)。次に、割込処理起動手段5
3は、割込処理部7の処理に移行するため、命令コード
Cのアドレスにジャンプする(ステップS25)。
Next, the interrupt process starting means 53 executes scheduling by the scheduler of the virtual machine,
The execution order of the generated interrupts in the virtual computer is determined (step S22), and by executing the scheduling, the top virtual code address of the interrupt process to be executed next, that is, the address of the virtual code C of the virtual code string 71 is determined. (Step S23), referring to the map table 3 from the address of the virtual code C, the address of the first instruction code of the interrupt process to be executed next, that is, the instruction code C of the instruction code sequence 73 of the interrupt process The address is determined (step S24). Next, interrupt processing starting means 5
Since No. 3 shifts to the processing of the interrupt processing unit 7, it jumps to the address of the instruction code C (step S25).

【0027】これ以降は割込処理部7が実行を行い、割
込処理部7が処理を終了すると、通常は再びスケジュー
ラが動作し(ステップS26)、割り込まれた実計算機
メモリ2の命令コードBが実行される(ステップS2
7)。以上のように処理が実行される。なお、上記実施
例では、ジャンプ命令6に等しい長さの命令コードを退
避し書き戻しているが、退避し書き戻す領域にジャンプ
命令6に書き替えれる領域を含んでいれば、ジャンプ命
令6の長さより長い領域であってもよい。
After that, the interrupt processing unit 7 executes and when the interrupt processing unit 7 finishes the process, the scheduler normally operates again (step S26), and the instruction code B of the interrupted real computer memory 2 is executed. Is executed (step S2
7). The processing is executed as described above. Although the instruction code having the same length as the jump instruction 6 is saved and written back in the above embodiment, if the area that can be rewritten by the jump instruction 6 is included in the saved and written back area, It may be a region longer than the length.

【0028】[0028]

【発明の効果】本発明の割り込み検出処理装置によれ
ば、割り込みの発生によって実計算機から起動される割
込ハンドラ部に、割り込みが発生した実計算機で実行中
の命令コードの後続の命令コードを割込前処理部へのジ
ャンプ命令コードに書き替え、ジャンプ先の割込前処理
部で割り込み検出処理を行うことにより、割り込みが発
生した時にのみ割り込み検出処理を行うので、割り込み
が発生しない通常の処理では割り込み検出処理に伴う実
行速度の低下がない。また、割り込み検出手段を実現す
る割り込み検出処理コードは、前記割込前処理部にのみ
組み込めばよいので、割り込み検出処理に伴う実計算機
のオブジェクトコード量の増加はほとんどない。また、
前記後続の命令コードが実行される前の段階で割り込み
処理手段の処理を実行するので、割り込み処理の待ち時
間が延びることはない。
According to the interrupt detection processing apparatus of the present invention, an interrupt handler unit activated by a real computer when an interrupt occurs generates an instruction code subsequent to the instruction code being executed in the real computer in which the interrupt occurred. By rewriting the jump instruction code to the interrupt preprocessor and performing interrupt detection processing in the interrupt preprocessor of the jump destination, interrupt detection processing is performed only when an interrupt occurs, so interrupts are not generated normally. In processing, there is no reduction in execution speed due to interrupt detection processing. Further, since the interrupt detection processing code for realizing the interrupt detection means may be incorporated only in the interrupt preprocessing section, the object code amount of the real computer hardly increases due to the interrupt detection processing. Also,
Since the processing of the interrupt processing unit is executed before the subsequent instruction code is executed, the waiting time of the interrupt processing will not be extended.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の割り込み検出処理装置の一実施例の構
成を示すブロック図である。
FIG. 1 is a block diagram showing the configuration of an embodiment of an interrupt detection processing device of the present invention.

【図2】図1の実施例の全体の動作を示す流れ図であ
る。
FIG. 2 is a flowchart showing the overall operation of the embodiment shown in FIG.

【図3】従来のエミュレーション方式の動作を示す流れ
図である。
FIG. 3 is a flowchart showing an operation of a conventional emulation method.

【図4】図3のエミュレーション方式に割り込み検出処
理を組み入れた従来の方法の動作を示す流れ図である。
FIG. 4 is a flowchart showing the operation of a conventional method in which an interrupt detection process is incorporated in the emulation method of FIG.

【図5】従来のトランスレーション方式でのトランスレ
ーションの例を示す説明図である。
FIG. 5 is an explanatory diagram showing an example of translation in a conventional translation method.

【図6】図5トランスレーション方式のトランスレーシ
ョンの例に割り込み検出処理を組み入れた従来の方法を
示す図である。
FIG. 6 is a diagram showing a conventional method in which an interrupt detection process is incorporated into an example of translation of the translation system shown in FIG. 5;

【符号の説明】[Explanation of symbols]

1 仮想計算機メモリ 2 実計算機メモリ 3 マップテーブル 4 割込ハンドラ部 5 割込前処理部 6 ジャンプ命令 7 割込処理部 11 割込フラグレジスタ 21 実行環境記憶部 22 命令コード記憶部 42 割込位置特定手段 43 命令コード記憶制御手段 44 命令コード書替手段 51 命令コード書戻手段 52 割込検出手段 53 割込処理起動手段 71 割込処理仮想コード列 72 割込処理マップテーブル 73 割込処理命令コード列 80 仮想コード列 81 実計算機キャッシュ 82 トランスレーションでの割込検出処理コード 1 virtual machine memory 2 real machine memory 3 map table 4 interrupt handler section 5 interrupt preprocessing section 6 jump instruction 7 interrupt processing section 11 interrupt flag register 21 execution environment storage section 22 instruction code storage section 42 interrupt position specification Means 43 Instruction code storage control means 44 Instruction code rewriting means 51 Instruction code write back means 52 Interrupt detection means 53 Interrupt processing activation means 71 Interrupt virtual code string 72 Interrupt processing map table 73 Interrupt processing instruction code string 80 Virtual Code Sequence 81 Real Computer Cache 82 Translation Interrupt Detection Processing Code

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 割り込み処理手段を備えるソフトウェア
プログラムを異なるプロセッサアーキテクチャの計算機
で実行するために、前記ソフトウェアプログラムコード
列を前記計算機の命令コード列に翻訳し、前記計算機が
前記命令コード列を実行することによって前記割り込み
処理を備えるソフトウェアプログラムを実行するエミュ
レータにおいて、 前記計算機での割り込みの発生によって前記計算機から
起動される割込ハンドラ部が、前記割り込みが発生した
前記計算機で実行中の命令コードの後続の命令コードの
先頭アドレスから所定長の命令コードをジャンプ命令コ
ードに書き替える書替手段と、前記書替手段によって書
き替えられる前記所定長の命令コードを退避するための
記憶制御手段とを備え、 前記書替手段から出力されるジャンプ命令コードのジャ
ンプ先の割込前処理部が、前記書替手段によって書き替
えた前記ジャンプ命令コードを前記記憶制御手段によっ
て退避した前記所定長の命令コードに書き戻す書戻手段
と、前記計算機での割り込みの発生およびその種類を検
出し、前記割り込み処理手段に対して前記割り込みの発
生およびその種類を通知する割込検出手段とを備えるこ
とを特徴とする割り込み検出処理装置。
1. In order to execute a software program having an interrupt processing means on a computer having a different processor architecture, the software program code string is translated into an instruction code string of the computer, and the computer executes the instruction code string. In the emulator for executing the software program having the interrupt processing, the interrupt handler unit activated by the computer when the interrupt occurs in the computer is a successor to the instruction code being executed in the computer where the interrupt occurs. Rewriting means for rewriting a predetermined length instruction code from the start address of the instruction code to a jump instruction code, and storage control means for saving the predetermined length instruction code rewritten by the rewriting means, The output from the rewriting means A write-back means for rewriting the jump instruction code rewritten by the rewriting means to the instruction code of the predetermined length saved by the storage control means, An interrupt detection processing device for detecting the occurrence of an interrupt and its type, and notifying the interrupt processing means of the occurrence of the interrupt and its type.
JP15297194A 1994-06-10 1994-06-10 Interruption detection processor Pending JPH07334374A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15297194A JPH07334374A (en) 1994-06-10 1994-06-10 Interruption detection processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15297194A JPH07334374A (en) 1994-06-10 1994-06-10 Interruption detection processor

Publications (1)

Publication Number Publication Date
JPH07334374A true JPH07334374A (en) 1995-12-22

Family

ID=15552151

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15297194A Pending JPH07334374A (en) 1994-06-10 1994-06-10 Interruption detection processor

Country Status (1)

Country Link
JP (1) JPH07334374A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7716537B2 (en) 2008-04-16 2010-05-11 Kabushiki Kaisha Toshiba Information processing apparatus and error correction method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7716537B2 (en) 2008-04-16 2010-05-11 Kabushiki Kaisha Toshiba Information processing apparatus and error correction method

Similar Documents

Publication Publication Date Title
US6634023B1 (en) Compile method, exception handling method and computer
JP2858140B2 (en) Pipeline processor device and method
US6209085B1 (en) Method and apparatus for performing process switching in multiprocessor computer systems
JPH06168146A (en) Virtual machine system
JP3439033B2 (en) Interrupt control device and processor
CN111133418A (en) Allowing non-aborted transactions after an exception mask update instruction
US6125443A (en) Interrupt processing system and method for information processing system of pipeline control type
JPH07334374A (en) Interruption detection processor
JPH0895798A (en) Data processor
US8732721B2 (en) Method for reducing trap overhead when executing a guest in a virtual machine
JP2009230479A (en) Microprocessor
JP3766772B2 (en) Information processing apparatus, exception recovery processing method, and recording medium
JP2715988B2 (en) Program simulator device and program debugging method
CN116841614B (en) Sequential vector scheduling method under disordered access mechanism
JP2000076095A (en) Device and method for tracing program and storage medium storing program therefor
JPH0133856B2 (en)
JPH03269628A (en) Exception processing system
KR100538282B1 (en) Method for debugging realtime parallel program using check point
JP3029355B2 (en) Single-step instruction execution method
JP3102381B2 (en) Task debugging device, task debugging method, and recording medium therefor
JPS62125437A (en) Control method for additional processor
JPH06295252A (en) Computer
JP2853458B2 (en) Instruction string switching method and arithmetic processor using the same
JPH0764820A (en) Debugging processor
JP2002007119A (en) Exception processing system and method for the same and processor