JPS63217433A - プログラム実行制御方式 - Google Patents
プログラム実行制御方式Info
- Publication number
- JPS63217433A JPS63217433A JP62051249A JP5124987A JPS63217433A JP S63217433 A JPS63217433 A JP S63217433A JP 62051249 A JP62051249 A JP 62051249A JP 5124987 A JP5124987 A JP 5124987A JP S63217433 A JPS63217433 A JP S63217433A
- Authority
- JP
- Japan
- Prior art keywords
- instruction code
- instruction
- execution
- code
- change information
- 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
Links
- 238000000034 method Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 description 16
- 230000009191 jumping Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は実行可能なプログラムの実行制御方式に関し、
特に一般のコンピュータシステムにおいてあらかじめ作
成されている実行可能なプログラムの実行時に特定の命
令コードの実行内容を別の命令コードの実行内容に変更
して実行させることのできるプログラム実行制御方式に
関する。
特に一般のコンピュータシステムにおいてあらかじめ作
成されている実行可能なプログラムの実行時に特定の命
令コードの実行内容を別の命令コードの実行内容に変更
して実行させることのできるプログラム実行制御方式に
関する。
従来、実行可能なプログラムは、たとえばC0BOLな
どのプログラミング言語で書かれたソースプログラムを
、コンパイラを介してソースプログラム上の命令と1対
1に対応するコンピュータシステム固有のハードウェア
命令コードや中間オブジェクトコードなどに変換して作
成されている。
どのプログラミング言語で書かれたソースプログラムを
、コンパイラを介してソースプログラム上の命令と1対
1に対応するコンピュータシステム固有のハードウェア
命令コードや中間オブジェクトコードなどに変換して作
成されている。
しかし、C0BOLなど多くのプログラミング言語では
、実際の運用時には実行する必要のないデバッグ機能な
どのような命令がプログラム中に記述されたり、または
コンピュータシステムが固有のデバッグ機能を有してい
る場合にはその機能とインタフェースをとるための特定
の命令がコンパイラによって特定のコードの中に挿入さ
れたりしている。このため、デバッグ中は有効な命令で
あるが、デバッグが完了すれば不要となる命令がオブジ
ェクトコード中に含まれることになっていた。
、実際の運用時には実行する必要のないデバッグ機能な
どのような命令がプログラム中に記述されたり、または
コンピュータシステムが固有のデバッグ機能を有してい
る場合にはその機能とインタフェースをとるための特定
の命令がコンパイラによって特定のコードの中に挿入さ
れたりしている。このため、デバッグ中は有効な命令で
あるが、デバッグが完了すれば不要となる命令がオブジ
ェクトコード中に含まれることになっていた。
上述した従来の実行可能なプログラムの作成方式では、
たとえばデバッグ機能を使用した場合に実際の運用時に
は不要な命令コードが実行可能なプログラムに含まれる
ことになるので、これを取り除くためには改めて別の指
示を与えてソースプログラムの再コンパイルを行わなけ
ればならないという欠点がある。
たとえばデバッグ機能を使用した場合に実際の運用時に
は不要な命令コードが実行可能なプログラムに含まれる
ことになるので、これを取り除くためには改めて別の指
示を与えてソースプログラムの再コンパイルを行わなけ
ればならないという欠点がある。
また逆に、このようにして実際の運用のために作成した
実行可能なプログラムを実際に運用したときには何か新
たな不具合が見つかってもすぐにはそのプログラムをデ
バッグ可能な状態にすることができないので、不具合の
発見されたプログラムを改めてデバッグできるように再
コンパイルしなければならないという欠点がある。
実行可能なプログラムを実際に運用したときには何か新
たな不具合が見つかってもすぐにはそのプログラムをデ
バッグ可能な状態にすることができないので、不具合の
発見されたプログラムを改めてデバッグできるように再
コンパイルしなければならないという欠点がある。
本発明の目的は、上述の点に鑑み、たとえばデバッグ用
命令を含む実行可能なプログラムの特定の命令コードを
別の命令コードとして実行させることができるようにす
ることにより、デバッグ完了時に改めて再コンパイルを
行う必要がな(、またプログラムの不具合を発見したと
きにはいつでもデバッグ可能な状態にすることができる
プログラム実行制御方式を提供することにある。
命令を含む実行可能なプログラムの特定の命令コードを
別の命令コードとして実行させることができるようにす
ることにより、デバッグ完了時に改めて再コンパイルを
行う必要がな(、またプログラムの不具合を発見したと
きにはいつでもデバッグ可能な状態にすることができる
プログラム実行制御方式を提供することにある。
本発明のプログラム実行制御方式は、実行可能なプログ
ラムの命令コードを記憶する命令コード記憶手段と、こ
の命令コード記憶手段から命令コードを読み出す命令コ
ード読出し手段と、前記実行可能なプログラム中の特定
の命令コードの実行内容を別の命令コードの実行内容に
変更させる命令実行変更情報を記憶する命令実行変更情
報記憶手段と、この命令実行変更情報記憶手段に記憶さ
れた前記命令実行変更情報を参照して前記命令コード読
出し手段によって読み出された命令コードが前記特定の
命令コードであるか否かを判定し前記特定の命令コード
であるときにはこの特定の命令コードの実行内容を前記
別の命令コードの実行内容に変更する命令実行変更手段
と、この命令実行変更手段により変更された前記別の命
令コードを含む命令コードを実行する命令コード実行手
段とを有する。
ラムの命令コードを記憶する命令コード記憶手段と、こ
の命令コード記憶手段から命令コードを読み出す命令コ
ード読出し手段と、前記実行可能なプログラム中の特定
の命令コードの実行内容を別の命令コードの実行内容に
変更させる命令実行変更情報を記憶する命令実行変更情
報記憶手段と、この命令実行変更情報記憶手段に記憶さ
れた前記命令実行変更情報を参照して前記命令コード読
出し手段によって読み出された命令コードが前記特定の
命令コードであるか否かを判定し前記特定の命令コード
であるときにはこの特定の命令コードの実行内容を前記
別の命令コードの実行内容に変更する命令実行変更手段
と、この命令実行変更手段により変更された前記別の命
令コードを含む命令コードを実行する命令コード実行手
段とを有する。
本発明のプログラム実行制御方式では、命令コード記憶
手段が実行可能なプログラムの命令コードを記憶し、命
令コード読出し手段が命令コード記憶手段から命令コー
ドを読み出し、命令実行変更情報記憶手段が実行可能な
プログラム中の特定の命令コードの実行内容を別の命令
コードの実行内容に変更させる命令実行変更情報を記t
Qシ、命令実行変更手段が命令実行変更情報記憶手段に
記憶された命令実行変更情報を参照して命令コード読出
し手段によって読み出された命令コードが特定の命令コ
ードであるか否かを判定し特定の命令コードであるとき
にはこの特定の命令コードの実行内容を別の命令コード
の実行内容に変更し、命令コード実行手段が命令実行変
更手段により変更された別の命令コードを含む命令コー
ドを実行する。
手段が実行可能なプログラムの命令コードを記憶し、命
令コード読出し手段が命令コード記憶手段から命令コー
ドを読み出し、命令実行変更情報記憶手段が実行可能な
プログラム中の特定の命令コードの実行内容を別の命令
コードの実行内容に変更させる命令実行変更情報を記t
Qシ、命令実行変更手段が命令実行変更情報記憶手段に
記憶された命令実行変更情報を参照して命令コード読出
し手段によって読み出された命令コードが特定の命令コ
ードであるか否かを判定し特定の命令コードであるとき
にはこの特定の命令コードの実行内容を別の命令コード
の実行内容に変更し、命令コード実行手段が命令実行変
更手段により変更された別の命令コードを含む命令コー
ドを実行する。
次に、本発明について図面を参照して詳細に説明する。
第1図は、本発明の一実施例のプログラム実行制御方式
を示すブロック図である。このプログラム実行制御方式
は、命令コード記憶手段1と、命令コード読出し手段2
と、命令実行変更情報入力手段3と、命令実行変更情報
記憶手段4と、命令実行変更手段5と、命令コード実行
手段6とから構成されている。
を示すブロック図である。このプログラム実行制御方式
は、命令コード記憶手段1と、命令コード読出し手段2
と、命令実行変更情報入力手段3と、命令実行変更情報
記憶手段4と、命令実行変更手段5と、命令コード実行
手段6とから構成されている。
実行可能なプログラムは、一般に命令コード記憶手段1
に記憶されており、命令コード記憶手段1は主記憶とし
て実現されている。
に記憶されており、命令コード記憶手段1は主記憶とし
て実現されている。
また、命令コード読出し手段2および命令コード実行手
段6は、通常ハードウェアあるいはインタプリタとして
実現されるが、ここでは命令コード記憶手段1に記憶さ
れる命令コードを1つずつ読み出して実行するインタプ
リタであるとする。
段6は、通常ハードウェアあるいはインタプリタとして
実現されるが、ここでは命令コード記憶手段1に記憶さ
れる命令コードを1つずつ読み出して実行するインタプ
リタであるとする。
第2図を参照すると、命令コード読出し手段2における
処理は、逐次命令コード読出しステップ21と、命令コ
ード送出ステップ22と、命令コード受取りステップ2
3とからなる。
処理は、逐次命令コード読出しステップ21と、命令コ
ード送出ステップ22と、命令コード受取りステップ2
3とからなる。
第3図を参照すると、命令実行変更情報記憶手段4には
、命令実行変更情報として変更が行われる特定の命令コ
ード41と、変更後の命令コード42とが1対1に対応
する形で複数対記憶されるようになっている。
、命令実行変更情報として変更が行われる特定の命令コ
ード41と、変更後の命令コード42とが1対1に対応
する形で複数対記憶されるようになっている。
第4図を参照すると、命令実行変更手段5における処理
は、命令コード受取りステップ51と、命令コード比較
ステップ52と、変更命令コード取出しステップ53と
、命令コード返送ステップ54とからなる。
は、命令コード受取りステップ51と、命令コード比較
ステップ52と、変更命令コード取出しステップ53と
、命令コード返送ステップ54とからなる。
次に、このように構成された本実施例のプログラム実行
制御方式の動作について説明する。
制御方式の動作について説明する。
プログラムの実行開始前に命令実行変更情報入力手段3
が起動され、命令実行変更情報記憶手段4に変更が行わ
れる特定の命令コード41と、変更後の命令コード42
とが1対1に対応した形で記憶される。
が起動され、命令実行変更情報記憶手段4に変更が行わ
れる特定の命令コード41と、変更後の命令コード42
とが1対1に対応した形で記憶される。
プログラムの実行が起動されると、命令コード読出し手
段2は、命令コード記憶手段1に記憶されている命令コ
ードを読み出しくステップ21)、命令実行変更手段5
に送出する(ステップ22)。
段2は、命令コード記憶手段1に記憶されている命令コ
ードを読み出しくステップ21)、命令実行変更手段5
に送出する(ステップ22)。
命令実行変更手段5は、命令コード読出し手段2から送
られてきた命令コードを受は取り(ステップ51)、命
令実行変更情報記憶手段4に記憶されている特定の命令
コード41と順次比較する(ステップ52)、比較の結
果、一致する特定の命令コード41がなければ、命令コ
ード読出し手段2より受は取った命令コードを命令コー
ド読出し手段2にそのまま送り返す(ステップ54)、
−敗する特定の命令コード41があったならば、その特
定の命令コード41に対応する変更後の命令コード42
を取り出しくステップ53)、命令コード続出し手段2
に送り出す(ステップ54)。
られてきた命令コードを受は取り(ステップ51)、命
令実行変更情報記憶手段4に記憶されている特定の命令
コード41と順次比較する(ステップ52)、比較の結
果、一致する特定の命令コード41がなければ、命令コ
ード読出し手段2より受は取った命令コードを命令コー
ド読出し手段2にそのまま送り返す(ステップ54)、
−敗する特定の命令コード41があったならば、その特
定の命令コード41に対応する変更後の命令コード42
を取り出しくステップ53)、命令コード続出し手段2
に送り出す(ステップ54)。
次に、命令コード読出し手段2は、命令実行変更手段5
によって処理された命令コード(無変更であれば送り出
した命令コード、変更であれば変更後の命令コード42
)を受は取り (ステップ23)、命令コード実行手段
6に送る。
によって処理された命令コード(無変更であれば送り出
した命令コード、変更であれば変更後の命令コード42
)を受は取り (ステップ23)、命令コード実行手段
6に送る。
命令コード実行手段6は、受は取った命令コードを逐次
実行する。
実行する。
たとえば、指定番地にジャンプするという機能をもつ命
令コード“01”を、何もしないで次の命令に移るとい
う機能をもつ命令コード“OO”に変更する場合を考え
る。
令コード“01”を、何もしないで次の命令に移るとい
う機能をもつ命令コード“OO”に変更する場合を考え
る。
まず、プログラムの実行起動前に命令実行変更情報入力
手段3を起動させて、命令実行変更情報記憶手段4に、
指定番地にジャンプするという機能をもつ命令コード“
01”と、その命令コードを変更して何もしないで次の
命令に移るという機能をもつ命令コード“00″とを対
にして記憶させておく。
手段3を起動させて、命令実行変更情報記憶手段4に、
指定番地にジャンプするという機能をもつ命令コード“
01”と、その命令コードを変更して何もしないで次の
命令に移るという機能をもつ命令コード“00″とを対
にして記憶させておく。
プログラムの実行が開始されると、命令実行変更手段5
は、命令コード読出し手段2から指定番地にジャンプす
るという機能をもつ特定の命令コード“01”を受は取
り(ステップ51)、命令実行変更情報記憶手段4に記
憶されている特定の命令コード“01”との一致を検出
する(ステップ52)。
は、命令コード読出し手段2から指定番地にジャンプす
るという機能をもつ特定の命令コード“01”を受は取
り(ステップ51)、命令実行変更情報記憶手段4に記
憶されている特定の命令コード“01”との一致を検出
する(ステップ52)。
このため、命令実行変更情報記憶手段4から指定番地に
ジャンプするという機能をもつ特定の命令コード“01
゛の代わりに何もしないで次の命令に移るという機能を
もつ変更された命令コード″00”を取り出しくステッ
プ53)、命令コード読出し手段2に送出する(ステッ
プ54)。
ジャンプするという機能をもつ特定の命令コード“01
゛の代わりに何もしないで次の命令に移るという機能を
もつ変更された命令コード″00”を取り出しくステッ
プ53)、命令コード読出し手段2に送出する(ステッ
プ54)。
この結果、命令コード実行手段6は、指定番地にジャン
プするという機能をもつ特定の命令コード“0ビに対し
ては何もしないで次の命令に移るという機能をもつ別の
命令コード“00″を実行することになる。
プするという機能をもつ特定の命令コード“0ビに対し
ては何もしないで次の命令に移るという機能をもつ別の
命令コード“00″を実行することになる。
逆に、命令実行変更情報記憶手段4に指定番地にジャン
プするという機能をもつ特定の命令コード“01”に対
応する何もしないで次の命令に移るという機能をもつ別
の命令コード“00”が記憶されていない場合には、指
定番地にジャンプするという機能をもつ命令コード@0
1”がそのまま送り返される(ステップ54)ので、命
令コード実行手段6は命令コード“01”を変更しない
で実行することになる。
プするという機能をもつ特定の命令コード“01”に対
応する何もしないで次の命令に移るという機能をもつ別
の命令コード“00”が記憶されていない場合には、指
定番地にジャンプするという機能をもつ命令コード@0
1”がそのまま送り返される(ステップ54)ので、命
令コード実行手段6は命令コード“01”を変更しない
で実行することになる。
いま、たとえばデバッグ用命令コード群の前に指定番地
にジャンプするという機能をもつ特定の命令コード“0
1”を入れ、ジャンプする指定番地として次に続く一連
のデバッグ用命令コード群の次の番地を設定すると、こ
の特定の命令コード“01”を変更しなければデバッグ
用命令は実行されず、別の命令コード′″00”に変更
すれば、デバッグ用命令を逐次実行することができるこ
とは明白である。
にジャンプするという機能をもつ特定の命令コード“0
1”を入れ、ジャンプする指定番地として次に続く一連
のデバッグ用命令コード群の次の番地を設定すると、こ
の特定の命令コード“01”を変更しなければデバッグ
用命令は実行されず、別の命令コード′″00”に変更
すれば、デバッグ用命令を逐次実行することができるこ
とは明白である。
なお、上記実施例においては、命令実行変更情報入力手
段3により命令実行変更情報記憶手段4に命令実行変更
情報を記憶させるようにしたが、他の手段または方法に
より命令実行変更情報記憶手段4に命令実行変更情報を
あらかじめ記憶させるようにすることも可能である。
段3により命令実行変更情報記憶手段4に命令実行変更
情報を記憶させるようにしたが、他の手段または方法に
より命令実行変更情報記憶手段4に命令実行変更情報を
あらかじめ記憶させるようにすることも可能である。
以上説明したように本発明は、命令実行変更情報記憶手
段と命令実行変更手段とを設けたことにより、実行可能
なプログラムの特定の命令コードを別の命令コードとし
て実行させることができるという効果がある。
段と命令実行変更手段とを設けたことにより、実行可能
なプログラムの特定の命令コードを別の命令コードとし
て実行させることができるという効果がある。
特に、デバッグ時にはデバッグ用命令を実行させ、実際
の運用時にはそれらの命令を実行させないようにするこ
とにより、デバッグ完了時に改めて実行可能なプログラ
ムの再コンパイルを行う必要がなく、実行可能なプログ
ラムに新たな不具合が発見されたときにはいつでもデバ
ッグ可能な状態にすることができるという効果がある。
の運用時にはそれらの命令を実行させないようにするこ
とにより、デバッグ完了時に改めて実行可能なプログラ
ムの再コンパイルを行う必要がなく、実行可能なプログ
ラムに新たな不具合が発見されたときにはいつでもデバ
ッグ可能な状態にすることができるという効果がある。
第1図は本発明の一実施例の構成を示すブロック図、
第2図は第1図中の命令コード読出し手段における処理
を示す流れ図、 第3図は第1図中の命令実行変更情報記憶手段に記憶さ
れた命令実行変更情報の一例を示す図、第4図は命令実
行変更手段における処理を示す流れ図である。 図において、 1・・・命令コード記憶手段、 2・・・命令コード続出し手段、 3・・・命令実行変更情報入力手段、 4・・・命令実行変更情報記憶手段、 5・・・命令実行変更手段、 6・・・命令コード実行手段、 41・・・特定の命令コード、 42・・・変更後の命令コードである。
を示す流れ図、 第3図は第1図中の命令実行変更情報記憶手段に記憶さ
れた命令実行変更情報の一例を示す図、第4図は命令実
行変更手段における処理を示す流れ図である。 図において、 1・・・命令コード記憶手段、 2・・・命令コード続出し手段、 3・・・命令実行変更情報入力手段、 4・・・命令実行変更情報記憶手段、 5・・・命令実行変更手段、 6・・・命令コード実行手段、 41・・・特定の命令コード、 42・・・変更後の命令コードである。
Claims (1)
- 【特許請求の範囲】 実行可能なプログラムの命令コードを記憶する命令コー
ド記憶手段と、 この命令コード記憶手段から命令コードを読み出す命令
コード読出し手段と、 前記実行可能なプログラム中の特定の命令コードの実行
内容を別の命令コードの実行内容に変更させる命令実行
変更情報を記憶する命令実行変更情報記憶手段と、 この命令実行変更情報記憶手段に記憶された前記命令実
行変更情報を参照して前記命令コード読出し手段によっ
て読み出された命令コードが前記特定の命令コードであ
るか否かを判定し前記特定の命令コードであるときには
この特定の命令コードの実行内容を前記別の命令コード
の実行内容に変更する命令実行変更手段と、 この命令実行変更手段により変更された前記別の命令コ
ードを含む命令コードを実行する命令コード実行手段と
、 を有することを特徴とするプログラム実行制御方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62051249A JPS63217433A (ja) | 1987-03-06 | 1987-03-06 | プログラム実行制御方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62051249A JPS63217433A (ja) | 1987-03-06 | 1987-03-06 | プログラム実行制御方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS63217433A true JPS63217433A (ja) | 1988-09-09 |
Family
ID=12881675
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62051249A Pending JPS63217433A (ja) | 1987-03-06 | 1987-03-06 | プログラム実行制御方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS63217433A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06332751A (ja) * | 1993-05-24 | 1994-12-02 | Nec Corp | システム動作情報収集装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS50148036A (ja) * | 1974-05-20 | 1975-11-27 |
-
1987
- 1987-03-06 JP JP62051249A patent/JPS63217433A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS50148036A (ja) * | 1974-05-20 | 1975-11-27 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06332751A (ja) * | 1993-05-24 | 1994-12-02 | Nec Corp | システム動作情報収集装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR950006616B1 (ko) | 변환된 프로그램 코드에서 소스 명령 분자를 보전하기 위한 시스템 및 방법 | |
JP2817786B2 (ja) | シミュレーション装置及びシミュレーション方法 | |
JPS6212529B2 (ja) | ||
JPS63217433A (ja) | プログラム実行制御方式 | |
JP3461185B2 (ja) | ロードモジュールへのソースコード行番号登録方法および装置 | |
JPS6042968B2 (ja) | 情報処理装置 | |
JPH09288595A (ja) | 演算処理装置 | |
JPS62254237A (ja) | インタプリタ方式の分岐命令実行方式 | |
US7627859B2 (en) | Method for configuring non-script language library files to be run as scripts | |
JPH08320813A (ja) | プログラムシミュレータ装置及びプログラムデバッグ方法 | |
JPH02110636A (ja) | タグ・アーキテクチャマシンのデバッグ装置とそのコンパイラ | |
JPH0731527B2 (ja) | プログラマブルコントロ−ラ | |
CN115639982A (zh) | 一种基于信号量的并发程序的执行演示方法和系统 | |
JPS62235652A (ja) | プログラムデバツグ方法 | |
JPS63163543A (ja) | 情報処理装置 | |
JPS63639A (ja) | プログラムデバツグ方式 | |
JPH0367340A (ja) | シミュレータ | |
JPH0695868A (ja) | ソフトウェア管理方式 | |
JPS63282525A (ja) | 実行形式プログラムファイルの修正方式 | |
JPS59154557A (ja) | プログラム暴走検出方法 | |
JPH06309175A (ja) | インタプリタのプログラム実行方式 | |
JPH02271430A (ja) | プログラム実行装置 | |
JPS62204340A (ja) | デ−タ処理装置 | |
JPH01298444A (ja) | プログラム実行制御方式 | |
JPH02242442A (ja) | プログラムデバッグ方式 |