Article View: gnu.gdb.bug
Article #10054At least two flavors of gdb-based cross-debuggers
From: Robert Bedichek
Date: Wed, 20 Jun 1990 01:21
Date: Wed, 20 Jun 1990 01:21
53 lines
3246 bytes
3246 bytes
I understand that there is support for cross-debugging in the gdb from FSF. I would like to point out that there is another and distinctly different implementation of cross-debugging in gdb. Here's how it came about, in a nutshell: In late 87' I was given the task of porting cross-adb to new 88k-based Tektronix hardware. I looked at cross-adb and after a brief time abandoned it. I came up with a protocol and implemented the host part in dbx and the target part in the ROMs of what is now known as the Tektronix XD-88 workstations. Last year I moved the code that does the cross-debugging from dbx to gdb. There is also support for debugging kernels running in systems built from Motorola 188 boards. All of this is in use. I don't know much about the other (standard?) cross-debugging support, but here are some of the characteristics of the Tektronix cross-debugger: 1. Communicates with the target via a serial line with compressed and sum-checked packets. The compression on 88k code yields a 1.4x improvement. The full 8 bits of the bytes sent over the serial line are used. The serial line usually runs at 38.4 K baud. 2. The target code is small, about 8k bytes of code and 1k of data for the 88k. 3. Downloading is usually quite fast because gdb checks the checksums of the blocks in target memory against the checksums of the blocks it is about to download. If they match, the download is avoided. Most downloads are sped up because the kernel text is already in memory as the result of a previous download. 4. A number of new low-level gdb commands such as bzero, bcopy, search-memory are supported and have target-debug-monitor support to make them efficient. I made little effort to make this code portable, but in fact I don't think it is hard to port. When the cross-support code lived in dbx, I ported it to the 68k with little effort. Some folks at Buffalo are porting the Tek cross-debugger to the DG Aviion, though this is also an 88k machine. Both the gdb source and the debug monitor source code are available via anonymous ftp from june.cs.washington.edu. The debug monitor is not FSF code, but Tek has made it available as long as you leave the copyright messages intact. And maybe other restrictions apply, I'm not sure. I do not represent Tektronix. I am interested in any comment you have or bugs that you find in the aforementioned code. I give limited free advice to people working with the code. I may be available for hire if you want me to do the work. Rob
Technical Details
Message-ID:
<12312@june.cs.washington.edu>Path:
arc1-ca.pugleaf.net!gmdzi!unido!mcsun!uunet!wuarchive!cs.utexas.edu!rice!uw-beaver!uw-june!robertbShow Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: f5053,1199d443d7372968,start X-Google-Attributes: gidf5053,public X-Google-ArrivalTime: 1990-06-19 18:21:00 PST Path: arc1-ca.pugleaf.net!gmdzi!unido!mcsun!uunet!wuarchive!cs.utexas.edu!rice!uw-beaver!uw-june!robertb From: robertb@cs.washington.edu (Robert Bedichek) Newsgroups: gnu.gdb.bug Subject: At least two flavors of gdb-based cross-debuggers Message-ID: <12312@june.cs.washington.edu> Date: 20 Jun 90 01:21:00 GMT Reply-To: robertb@june.cs.washington.edu (Robert Bedichek) Organization: University of Washington, Computer Science, Seattle Lines: 53 Posted: Wed Jun 20 02:21:00 1990