JPH01209544A - Simulated debugging system - Google Patents
Simulated debugging systemInfo
- Publication number
- JPH01209544A JPH01209544A JP63034532A JP3453288A JPH01209544A JP H01209544 A JPH01209544 A JP H01209544A JP 63034532 A JP63034532 A JP 63034532A JP 3453288 A JP3453288 A JP 3453288A JP H01209544 A JPH01209544 A JP H01209544A
- Authority
- JP
- Japan
- Prior art keywords
- program
- information
- symbol
- debugger
- simulated
- 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 11
- 238000004088 simulation Methods 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 5
Landscapes
- Debugging And Monitoring (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
Description
【発明の詳細な説明】
技術分野
本発明はシミュレートデバッグ方式に関し、特に1つの
計算機上のプログラムを他の計算機システム上でシミュ
レートしてプログラムのデバッグを行うシミュレートデ
バッグ方式に関する。DETAILED DESCRIPTION OF THE INVENTION Technical Field The present invention relates to a simulated debugging method, and more particularly to a simulated debugging method in which a program on one computer is simulated on another computer system to debug the program.
先ll量
従来、この種のシミュレートデバッグ方式は機械語ある
いはアセンブリ言語のレベルのデバッグ機能しか有して
おらず、よってブレークポイントの設定、メモリのダン
プ、トレース情報の表示等は全て機械語やアセンブリ言
語に対応した設定あるいは表示となっている。Previously, this type of simulated debugging method only had debugging functions at the machine or assembly language level, so setting breakpoints, dumping memory, displaying trace information, etc. were all performed using machine language or assembly language. The settings or display are compatible with assembly language.
上述した従来のシミュレートデバッグ方式は、機械語あ
るいはアセンブリ言語のレベルのデバッグ機能しか有し
ていないため、プログラムを高級プログラミング言語で
作成したときでも、機械語あるいはアセンブリ言語のレ
ベルでデバッグせざるを得す、常にプログラム作成者は
プログラムを動作させる対象となる計算機システムの機
械語あるいはアセンブリ言語を修得しておかなければな
らない。また、高級プログラミング言語で作成したプロ
グラムを低レベルの機械語あるいはアセンブリ言語のレ
ベルでデバッグするという点で非効率的であるという問
題がある。The conventional simulation debugging method described above only has debugging functions at the machine language or assembly language level, so even when a program is created in a high-level programming language, it is necessary to debug it at the machine language or assembly language level. However, program creators must always learn the machine language or assembly language of the computer system on which the program will run. Another problem is that it is inefficient to debug a program created in a high-level programming language at the low-level machine language or assembly language level.
l且亘亘刀
そこで、本発明はこのような従来技術の欠点を解決すべ
くなされたものであって、その目的とするところは、高
級言語レベルのデバッグ機能を実現可能なシミュレート
デバッグ方式を提供することにある。Therefore, the present invention has been made to solve these drawbacks of the conventional technology, and its purpose is to develop a simulated debugging method that can realize debugging functions at a high-level language level. It is about providing.
及JL!2JL見
本発明によれば、被デバッグ計算機システムの被デバッ
グプログラムを他の計算機システム上でコンパイルして
オブジェクトプログラムを作成し、このオブジェクトプ
ログラムを前記他の計算機システム上で動作させること
によりプログラムのデバッグを行うシミlレートデバッ
グ方式であって、前記被デバッグプログラムのシンボル
情報、ライン情報を前記オブジェクトプログラム内に含
ませておき、シミュレートデバッガによる前記オブジェ
クトプログラムの入力時に前記シンボル情報、ライン情
報を所定格納エリアに格納せしめ、前記シミュレートデ
バッガの使用指令に応答して前記格納エリアを参照しつ
つコマンド処理を行うようにしたことを特徴とするシミ
ュレートデバッグ方式が得られる。And JL! 2JL Sample According to the present invention, a debugged program of a debugged computer system is compiled on another computer system to create an object program, and the program is debugged by running this object program on the other computer system. This is a simulated rate debugging method in which symbol information and line information of the program to be debugged are included in the object program, and the symbol information and line information are stored in a predetermined amount when the object program is input by a simulating debugger. There is obtained a simulated debugging method characterized in that command processing is performed while referring to the storage area in response to an instruction to use the simulated debugger.
1直1
次に、本発明の実施例について図面を参照して説明する
。1 shift 1 Next, embodiments of the present invention will be described with reference to the drawings.
第1図は本発明の一実施例のブロック図である。FIG. 1 is a block diagram of one embodiment of the present invention.
ひとつの計算機システム1上のクロスコンパイラ2が、
高級プログラミング8玉で書かれたプログラムのソース
プログラム3をコンパイルし、オブジェクトプログラム
4を生成する。そのオブジェクトプログラム4には、ソ
ースプログラム3の中のシンボル情報、ライン情報も含
まれている。このオブジェクトプログラム4をシミュレ
ートデバッガ5が入力するとき、シンボル情報7も入力
し、シミュレートデバッガ5内のシンボル情報格納エリ
ア8に格納する。The cross compiler 2 on one computer system 1
A source program 3 of a program written using 8 high-level programming tools is compiled to generate an object program 4. The object program 4 also includes symbol information and line information in the source program 3. When the object program 4 is input to the simulation debugger 5, symbol information 7 is also input and stored in the symbol information storage area 8 within the simulation debugger 5.
そして、シミュレートデバッガ5を端末装置6を使って
ユーザが使用する場合、シミュレートデバッガ5に対し
て入力されたコマンド列中に高級プログラミング言語で
書かれたソースプログラム3の中のシンボル名、ライン
番号が指定されると、シンボル情報格納エリア8の中を
検索し、対応するアドレス値を得て処理を行う。また、
シミル−トデバッガ5が端末装置6に対して表示する情
報の中に高級ブロクラミング言語で書かれたプログラム
中のシンボル名、ライン情報も含ませる場合、アドレス
値をキーにしてシンボル情報格納エリア8の中を検索す
ることによって処理する。When the user uses the simulation debugger 5 using the terminal device 6, the symbol names and lines in the source program 3 written in a high-level programming language are included in the command string input to the simulation debugger 5. When a number is specified, the symbol information storage area 8 is searched, the corresponding address value is obtained, and processing is performed. Also,
When the information displayed by the similar debugger 5 to the terminal device 6 includes symbol names and line information in a program written in a high-level programming language, the symbol information storage area 8 is stored using the address value as a key. Process by searching inside.
第4図はシンボル情報格納エリア8内の情報を、第3図
に示す高級言語プログラムの例に従って作成した一例で
ある。情報としては、シンボルのタイプ(0:モジュー
ル名、1ニシンポル名、2ニライン番号)、シンボル名
(モジュール名、ライン番号も含む)、アドレス値、モ
ジュール名とのリング情報(モジュール名情報が格納さ
れているテーブル内のエントリ番号)がある。FIG. 4 shows an example of the information in the symbol information storage area 8 created according to the example of the high-level language program shown in FIG. The information includes symbol type (0: module name, 1 line name, 2 line number), symbol name (including module name and line number), address value, ring information with module name (module name information is stored). entry number in the table).
例えば、第4図のテーブルの4番目のエントリのシンボ
ル“A”は、第3図の2行目に宣言されているシンボル
であり、これはタイプ1(シンボル名)のシンボルであ
り、メモリ中の500番地に格納されていることになる
。そして、このシンボル名“A″はエントリ1に示され
るモジュール()IODtlLEl ”)に属している
ことが、リンク情報により判断される。For example, the symbol "A" in the fourth entry in the table in Figure 4 is the symbol declared on the second line in Figure 3, and is a symbol of type 1 (symbol name), which is stored in memory. It is stored at address 500. Then, it is determined from the link information that this symbol name "A" belongs to the module ()IODtlLEl") shown in entry 1.
本方式のシミュレートデバッガにおけるコマンド処理の
フロー図が第2図に示されている。先ず、コマンド文字
列が入力され(ステップ10)、コマンド文字列が解析
されることによりコマンドとパラメータとが分解、解析
される(ステップ11)。パラメータにシンボルが使用
されていることが認識されれば(ステップ12)、シン
ボル情報格納エリア8内のシンボル情報の検索が行われ
る(ステップ13)。この検索により、シンボル値(ア
ドレス値)を得て(ステップ14)、その後コマンド処
理を行うのである(ステップ15)。A flow diagram of command processing in the simulation debugger of this method is shown in FIG. First, a command string is input (step 10), and the command string is analyzed to decompose and analyze the command and parameters (step 11). If it is recognized that a symbol is used in the parameter (step 12), symbol information in the symbol information storage area 8 is searched (step 13). Through this search, a symbol value (address value) is obtained (step 14), and then command processing is performed (step 15).
例えば、シミュレートデバッガ5がメモリダンブコマン
ド処理を行う場合、先ずキーボード6がら入力されたコ
マンド(例えば、DUHPA )を解析し、この場合コ
マンドパラメータがA″であることから、第4図に示す
シンボル情報格納エリア8が検索される。その結果、A
11というシンボルが500番地に格納されているこ
とが認識され、500番地の内容が端末6のデイスプレ
ィ上に表示されるという処理が行われ、ダンプ処理が可
能となるのである。For example, when the simulated debugger 5 processes a memory dump command, it first analyzes a command input from the keyboard 6 (for example, DUHPA), and since the command parameter is A'' in this case, the symbol shown in FIG. Information storage area 8 is searched.As a result, A
It is recognized that the symbol 11 is stored at address 500, and the contents of address 500 are displayed on the display of terminal 6, making dump processing possible.
発明の詳細
な説明したように本発明によれば、被デバッグ計算機シ
ステムの高級プログラミング言語で書かれたプログラム
を他の計算機システム上でクロスコンパイルし、オブジ
ェクトプログラムを作成し、その時、被デバッグプログ
ラムのシンボル情報、ライン情報もオブジェクトプログ
ラム内に含ませ、それらの情報をシミュレートデバッガ
がメモリ上に格納し、参照することによって、高級プロ
グラミング言語レベルのデバッグ機能を有することが可
能となる。よってプログラム作成者は、シミュレートデ
バッガを使ったデバッグ作業において、被デバッグ計算
機システムの機械語あるいはアセンブリ言語の知識がな
くても、高級プログラミング言語レベルで、ブレークポ
イントの設定、トレース情報の表示等が可能となり、デ
バッグ効率が飛躍的に向上するという効果がある。DETAILED DESCRIPTION OF THE INVENTION According to the present invention, a program written in a high-level programming language of a computer system to be debugged is cross-compiled on another computer system to create an object program, and at that time, a program written in a high-level programming language of a computer system to be debugged is created. By including symbol information and line information in the object program, and storing and referencing this information in memory by the simulation debugger, it becomes possible to have debugging functions at the level of a high-level programming language. Therefore, when debugging using a simulation debugger, program creators can set breakpoints, display trace information, etc. at a high-level programming language level without having any knowledge of the machine language or assembly language of the computer system being debugged. This has the effect of dramatically improving debugging efficiency.
第1図は本発明の実施例のブロック図、第2図は第1図
のブロックの動作を示すフローチャート、第3図は高級
プログラミング言語によるソースプログラムの例を示す
図、第4図は第3図のソースプログラムに従って作成さ
れたシンボル情報格納エリア内の情報を示す図である。
主要部分の符号の説明
、1・・・・・・計算機システム
2・・・・・・クロスコンパイラ
3・・・・・・ソースプログラムファイル4・・・・・
・オブジェクトプログラムファイル5・・・・・・シミ
ュレートデバッガ
6・・・・・・端末装置FIG. 1 is a block diagram of an embodiment of the present invention, FIG. 2 is a flowchart showing the operation of the blocks in FIG. 1, FIG. 3 is a diagram showing an example of a source program in a high-level programming language, and FIG. FIG. 3 is a diagram showing information in a symbol information storage area created according to the source program shown in the figure. Explanation of codes of main parts, 1...Computer system 2...Cross compiler 3...Source program file 4...
・Object program file 5... Simulation debugger 6... Terminal device
Claims (1)
ムを他の計算機システム上でコンパイルしてオブジェク
トプログラムを作成し、このオブジェクトプログラムを
前記他の計算機システム上で動作させることによりプロ
グラムのデバッグを行うシミュレートデバッグ方式であ
って、前記被デバッグプログラムのシンボル情報、ライ
ン情報を前記オブジェクトプログラム内に含ませておき
、シミュレートデバッガによる前記オブジェクトプログ
ラムの入力時に前記シンボル情報、ライン情報を所定格
納エリアに格納せしめ、前記シミユレートデバッガの使
用指令に応答して前記格納エリアを参照しつつコマンド
処理を行うようにしたことを特徴とするシミュレートデ
バッグ方式。(1) Simulated debugging in which the program to be debugged of the computer system to be debugged is compiled on another computer system to create an object program, and the program is debugged by running this object program on the other computer system. The system includes symbol information and line information of the program to be debugged in the object program, and stores the symbol information and line information in a predetermined storage area when the object program is input by a simulation debugger; A simulated debugging method characterized in that command processing is performed while referring to the storage area in response to an instruction to use the simulated debugger.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63034532A JPH01209544A (en) | 1988-02-17 | 1988-02-17 | Simulated debugging system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63034532A JPH01209544A (en) | 1988-02-17 | 1988-02-17 | Simulated debugging system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH01209544A true JPH01209544A (en) | 1989-08-23 |
Family
ID=12416883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63034532A Pending JPH01209544A (en) | 1988-02-17 | 1988-02-17 | Simulated debugging system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH01209544A (en) |
-
1988
- 1988-02-17 JP JP63034532A patent/JPH01209544A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6961924B2 (en) | Displaying variable usage while debugging | |
US6964036B2 (en) | Descriptive variables while debugging | |
US6003143A (en) | Tool and method for diagnosing and correcting errors in a computer program | |
US5926638A (en) | Program debugging system for debugging a program having graphical user interface | |
EP0693193B1 (en) | Incremental linker system | |
US5852564A (en) | Method and apparatus for interactively displaying signal information during computer simulation of an electrical circuit | |
US5758160A (en) | Method and apparatus for building a software program using dependencies derived from software component interfaces | |
US6067641A (en) | Demand-based generation of symbolic information | |
US6981248B2 (en) | Conditional breakpoint encountered indication | |
JPH02272645A (en) | Method for supporting program debugging | |
US20030131342A1 (en) | Debugger with activity alert | |
Diederich et al. | Experimental prototyping in Smalltalk | |
Chandhok et al. | Programming Environments based on structure editing: The Gnome approach | |
US6983454B2 (en) | Extended “run to” function | |
CN117075874A (en) | SCADE model and C code mapping tool | |
JPH01209544A (en) | Simulated debugging system | |
JPH02275539A (en) | Debugging system | |
JPH08314752A (en) | Development supporting device for object-oriented system | |
US8117593B1 (en) | Method for highlighting selected tasks in a program code listing | |
Cox et al. | Advanced programming aids in PROGRAPH | |
JPH05108404A (en) | Debugger system | |
JP2811804B2 (en) | Variable output range specification method | |
JPH0833846B2 (en) | Function trace / step trace switching control method | |
JP2827724B2 (en) | Program debug processing method | |
KR0175469B1 (en) | How to control the visibility of fill program variables |