On Mon, 21 Jul 2003 11:13:18 -0500, 
[EMAIL PROTECTED] wrote:
>On Sat, Jul 19, 2003 at 11:38:12AM +1000, Keith Owens wrote:
>> See skdb.c in an earlier post. It works (for given values of "works")
>> and lets you use gdb on a second machine into kdb instead of kgdb.  The
>> biggest problem was reliably connecting to a kernel that had already
>> entered kdb.
>
>Hmm. I presume some good handshaking protocol would solve the connection
>problem, right?

gdb 4 did not cope with kernels that had already entered the debugger
and removed breakpoints.  gdb thought that it was in control and did
not like kdb beinbg in control.

>What are the philosophical distinctions between kdb and kgdb?  

kgdb is gdb + a small kernel stub, with all the smarts in gdb.  kgdb
always requires a second machine, with a copy of the kernel objects.

kdb is a full blown kernel debugger, gdb is an optional add on to get
source level debugging.  kdb can work in the same machine or from a
second machine.

>Alternately: why is it a better idea to add gdb to kdb instead 
>of kdb features to kgdb?

Adding gdb to kdb gives source level debugging.  kdb knows about all
the special asm code in the kernel, gdb alone cannot backtrace through
a lot of the kernel asm code.


Reply via email to