JPH05233357A - Symbolic debugging method - Google Patents
Symbolic debugging methodInfo
- Publication number
- JPH05233357A JPH05233357A JP4037970A JP3797092A JPH05233357A JP H05233357 A JPH05233357 A JP H05233357A JP 4037970 A JP4037970 A JP 4037970A JP 3797092 A JP3797092 A JP 3797092A JP H05233357 A JPH05233357 A JP H05233357A
- Authority
- JP
- Japan
- Prior art keywords
- file
- load module
- symbolic
- program
- symbol
- 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
Landscapes
- Debugging And Monitoring (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、シンボリックデバッガ
によって被テストプログラムをデバッグするシンボリッ
クデバッグ方法に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a symbolic debugging method for debugging a program under test with a symbolic debugger.
【0002】[0002]
【従来の技術】従来より、シンボル情報を用いてプログ
ラムのデバッグを行うシンボリックデバッグが知られて
いる。2. Description of the Related Art Conventionally, symbolic debugging has been known in which a program is debugged using symbol information.
【0003】このシンボリックデバッグでは、ソースプ
ログラムをコンパイルしてオブジェクトプログラムを作
成する際に、デバッグオプションを指定すると、シンボ
ルとアドレスを対応付けたシンボル対照表(シンボルテ
ーブル)を作成する。作成された対照表はオブジェクト
プログラムの中に取り込まれた状態でリンカにより他の
プログラムと結合された後、シンボリックデバッグによ
りデバッグされる。こうしてデバッグ終了後のオブジェ
クトプログラムは完成プログラムとしてロードされる。In this symbolic debugging, when a debug option is specified when a source program is compiled to create an object program, a symbol comparison table (symbol table) in which symbols and addresses are associated with each other is created. The created comparison table is incorporated in the object program, linked with another program by the linker, and then debugged by the symbolic debug. In this way, the object program after completion of debugging is loaded as a completed program.
【0004】ところで、このシンボル対照表は、シンボ
リックデバッグ時のみに使用され、デバッグ終了後は不
要であるが、オブジェクト及びロードモジュールに取り
込まれているためにロードモジュールのサイズが巨大に
なってしまう。By the way, this symbol comparison table is used only at the time of symbolic debugging and is unnecessary after the completion of debugging, but the size of the load module becomes enormous because it is incorporated in the object and the load module.
【0005】そこで、従来は、シンボリックデバッガを
使用する間はデバッグオプションを指定してロードモジ
ュールを作成し、プログラムのデバッグが完了した時に
ロードモジュールのサイズをコンパクトにするためにデ
バッグオプションを外して再度コンパイルやリンクをし
ていた。Therefore, conventionally, a load module is created by designating a debug option while using a symbolic debugger, and when the program is completely debugged, the debug option is removed and the load module is made compact again to make the size of the load module compact. I was compiling and linking.
【0006】[0006]
【発明が解決しようとする課題】しかしながら、このよ
うな従来方法によれば、開発者が誤ってデバッグオプシ
ョン指定有りのままのプログラムのロードモジュールを
完成プログラムのロードモジュールとして使用すると、
不要なシンボル対照表を含む巨大なプログラムを実行さ
せることとなり、メモリ資源を多く使用したり、補助記
憶装置のアクセスに多大の時間を要する等の問題があっ
た。また、他のプログラムに影響を及ぼすという問題点
があった。However, according to such a conventional method, if the developer mistakenly uses the load module of the program with the debug option specified as the load module of the completed program,
Since a huge program including an unnecessary symbol comparison table is executed, there are problems that a large amount of memory resources are used and it takes a lot of time to access the auxiliary storage device. In addition, there is a problem that it affects other programs.
【0007】本発明は上記の事情に鑑みてなされたもの
であり、その目的は、デバッグオプションの指定の有無
に関係なく常にコンパクトなロードモジュールを作成で
き、メモリ資源の節減及びアクセス時間の短縮を可能と
したシンボリックデバッグ方法を提供することにある。The present invention has been made in view of the above circumstances, and an object thereof is to always create a compact load module regardless of whether a debug option is specified, to save memory resources and shorten access time. It is to provide a possible symbolic debugging method.
【0008】[0008]
【課題を解決するための手段】上記の目的を達成するた
めに本発明は、シンボリックデバッガを備えた計算機シ
ステムにおいて、オブジェクトモジュール中からロード
モジュールとシンボリックデバッガが必要とするシンボ
ル情報とを分別してそれぞれ別のファイルに保存し、デ
バッグ時にはシンボリックデバッガが必要とするシンボ
ル情報ファイルを使用してロードモジュールファイル内
のプログラムに対するシンボリックデバッグを実行する
ことを特徴とする。In order to achieve the above object, the present invention is a computer system equipped with a symbolic debugger, wherein a load module and symbol information required by the symbolic debugger are separated from the object modules. It is characterized in that it is saved in another file, and during debugging, the symbolic debug for the program in the load module file is executed using the symbol information file required by the symbolic debugger.
【0009】[0009]
【作用】本発明によれば、オブジェクトモジュール中か
らロードモジュールとシンボル情報(シンボル対照表)
とを分別してそれぞれ別のファイルに保存するようにし
たので、ロードモジュール中から対照表を取り除くこと
ができ、メモリ資源を大幅に削減できる。また、ファイ
ルをコンパクトに構成でき、他のプログラムに影響を与
えることもなくなる。According to the present invention, the load module and the symbol information (symbol comparison table) are selected from among the object modules.
Since and are separated and saved in separate files, the reference table can be removed from the load module, and the memory resources can be significantly reduced. In addition, the file can be configured compactly and it will not affect other programs.
【0010】[0010]
【実施例】図1は、本発明に係るシンボリックデバッグ
方法が適用された一実施例を示す構成図である。1 is a block diagram showing an embodiment to which a symbolic debugging method according to the present invention is applied.
【0011】図示するように、本実施例は、ソースプロ
グラム1をコンパイルしてオブジェクトを作成するコン
パイラ2と、コンパイラ2が作成したオブジェクトをプ
ログラムオブジェクト3とシンボル対照表4とに分割し
てそれぞれロードモジュールファイル6と対照表ファイ
ル7とにファイルするリンカ5と、ロードモジュールフ
ァイル6と対照表ファイル7とを使用してシンボリック
デバッグを行うシンボリックデバッガ8とから構成され
ている。As shown in the figure, in the present embodiment, a compiler 2 which compiles a source program 1 to create an object, an object created by the compiler 2 is divided into a program object 3 and a symbol comparison table 4 and loaded respectively. It is composed of a linker 5 that files in a module file 6 and a comparison table file 7, and a symbolic debugger 8 that performs symbolic debugging using the load module file 6 and the comparison table file 7.
【0012】次に本実施例の作用を説明する。Next, the operation of this embodiment will be described.
【0013】ソースプログラム1をコンパイラ2がコン
パイルすると、オブジェクト3やシンボル対照表4が作
成される。これをリンカ5が他のプログラムとリンクさ
せてロードモジュールを作成するときに、コンパイラ2
が作成したオブジェクトをプログラムオブジェクト3と
シンボル対照表4とに分割する。分割されたプログラム
オブジェクト3はロードモジュールファイル6に格納さ
れ、シンボル対照表4は、対照表ファイル7に格納され
る。When the compiler 2 compiles the source program 1, an object 3 and a symbol comparison table 4 are created. When the linker 5 links this with another program to create a load module, the compiler 2
The object created by is divided into a program object 3 and a symbol comparison table 4. The divided program object 3 is stored in the load module file 6, and the symbol comparison table 4 is stored in the comparison table file 7.
【0014】シンボリックデバッガ8を使用してプログ
ラムをデバッグする時にシンボリックデバッガ8は、ロ
ードモジュールファイル6と、対照表ファイル7の両方
を参照してシンボリックデバッグを実行する。When the program is debugged using the symbolic debugger 8, the symbolic debugger 8 refers to both the load module file 6 and the comparison table file 7 to execute the symbolic debugging.
【0015】このように本実施例によれば、デバッグオ
プションの指定の有無に関係なくコンパクトな実行プロ
グラムが作成できる。そのため、デバッグ完了後にデバ
ッグ完了したプログラムを再度コンパイルやリンクする
必要がない。また、完成して実行したプログラムに不具
合が発生した場合等、再度コンパイルやリンクをしなく
ても、そのままのロードモジュールを使用してシンボリ
ックデバッグが可能となる。また、ロードモジュール内
にシンボル対照表を含まないので、他のプログラムに影
響を与えることを防止できる。As described above, according to this embodiment, a compact execution program can be created regardless of whether or not the debug option is specified. Therefore, it is not necessary to recompile or link the debugged program after debugging is completed. Further, if a problem occurs in the completed and executed program, it is possible to perform symbolic debugging using the load module as it is without recompiling or linking. Also, since the symbol comparison table is not included in the load module, it is possible to prevent the influence on other programs.
【0016】[0016]
【発明の効果】以上説明したように本発明によれば、デ
バッグオプションの指定の有無に関係なく常にコンパク
トなロードモジュールを作成でき、メモリ資源の節減及
びアクセス時間の短縮が可能となる。As described above, according to the present invention, it is possible to always create a compact load module regardless of whether or not a debug option is specified, and it is possible to save memory resources and shorten access time.
【0017】またロードモジュール内にシンボル情報を
含まないので、他のプログラムに影響を与えることを防
止できる。Further, since the load module does not include the symbol information, it is possible to prevent the influence on other programs.
【図1】本発明に係るシンボリックデバッグ方法が適用
された一実施例を示す構成図である。FIG. 1 is a configuration diagram showing an embodiment to which a symbolic debugging method according to the present invention is applied.
1 ソースプログラム 2 コンパイラ 3 オブジェクト 4 シンボル対照表 5 リンカ 6 ロードモジュールファイル 7 対照表ファイル 8 シンボリックデバッガ 1 Source program 2 Compiler 3 Object 4 Symbol comparison table 5 Linker 6 Load module file 7 Comparison table file 8 Symbolic debugger
Claims (1)
ステムにおいて、 オブジェクトモジュール中からロードモジュールとシン
ボリックデバッガが必要とするシンボル情報とを分別し
てそれぞれ別のファイルに保存し、 デバッグ時にはシンボリックデバッガが必要とするシン
ボル情報ファイルを使用してロードモジュールファイル
内のプログラムに対するシンボリックデバッグを実行す
ることを特徴とするシンボリックデバッグ方法。1. In a computer system equipped with a symbolic debugger, the load module and the symbol information required by the symbolic debugger are separated from the object modules and saved in separate files, and the symbols required by the symbolic debugger are debugged. A symbolic debugging method characterized in that an information file is used to perform symbolic debugging for a program in a load module file.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4037970A JPH05233357A (en) | 1992-02-25 | 1992-02-25 | Symbolic debugging method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4037970A JPH05233357A (en) | 1992-02-25 | 1992-02-25 | Symbolic debugging method |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05233357A true JPH05233357A (en) | 1993-09-10 |
Family
ID=12512427
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4037970A Pending JPH05233357A (en) | 1992-02-25 | 1992-02-25 | Symbolic debugging method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05233357A (en) |
-
1992
- 1992-02-25 JP JP4037970A patent/JPH05233357A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6219832B1 (en) | System and method of using annotations to optimize dynamically translated code in the presence of signals | |
CN104714788B (en) | A kind of method and device that software installation packet automatically generates | |
US8448152B2 (en) | High-level language, architecture-independent probe program compiler | |
JP2007500401A (en) | Software debugging apparatus and method | |
JPH0748182B2 (en) | Program error detection method | |
JP2919302B2 (en) | CPU simulation method | |
KR0125605B1 (en) | Method and device for verifying operation of machine language program | |
JPH05233357A (en) | Symbolic debugging method | |
JPH10187461A (en) | Language processing system | |
KR100216533B1 (en) | The event history recording method for the deterministic replay of concurrent chill program | |
JPH1115695A (en) | Program test pattern automatic generating system | |
JP2926590B1 (en) | Program debugger, program debugging method and recording medium | |
JPS63205740A (en) | Program executing trace processing system | |
JPH08185341A (en) | Cpu simulator | |
KR20100031808A (en) | Method for making and debuging program using virtual platform and appparatus therof | |
CN112799942A (en) | Software source code and target code coverage rate analysis method and system based on Keil C51 | |
JPH05127945A (en) | Program execution situation analysis system | |
JPS63317839A (en) | Program debug method | |
JP2570119B2 (en) | Software simulator | |
Lehmann et al. | Algorithm partitioning and optimization for network processors. | |
JPS583042A (en) | Program execution system | |
JPS6292032A (en) | Test method for program | |
JP2001014185A (en) | Compiling and debugging method | |
JPH04324525A (en) | Program transplantation supporting device | |
JPH0855043A (en) | Debugging/analyzing method due to comparison of access state of memory |