|   | 
      | 
  
  
      | 
      | 
  
 
     | 
    | 
  
  
     | 
    | 
  
  
    |   | 
      | 
  
  
    | 
         
xen-changelog
[Xen-changelog] readme for pdb 0.3
 
ChangeSet 1.1723, 2005/06/15 15:37:13+01:00, ach61@xxxxxxxxxxxxxxxxxxxxxx
        readme for pdb 0.3
 readme |   82 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 82 insertions(+)
diff -Nru a/tools/debugger/pdb/readme b/tools/debugger/pdb/readme
--- /dev/null   Wed Dec 31 16:00:00 196900
+++ b/tools/debugger/pdb/readme 2005-06-15 22:02:43 -04:00
@@ -0,0 +1,84 @@
+
+PDB 0.3 
+http://www.cl.cam.ac.uk/netos/pdb
+
+Alex Ho  
+June 2005
+
+
+This is the latest incarnation of the pervasive debugger.
+PDB is a remote stub for GDB.  Running as a user-space
+application in domain 0, it can debug any other domain.
+
+
++------+    tcp/ip    +-------+  
+| GDB  |--------------|  PDB  |
++------+              +-------+   +-------+
+                      | Dom 0 |   | Dom U |
+                      +-------+---+-------+
+                      |  Xen              |
+                      +-------------------+
+
+Installation
+
+- Install OCaml 3.08 in domain 0.
+  http://caml.inria.fr/download.en.html  is a good place to start.
+
+- Build Xen with debugger support
+  make domu_debug=y xen
+
+- (optional)
+  Build the target domains with debugging symbols.
+  make CONFIG_DEBUG_INFO=true CONFIG_FRAME_POINTER=false linux-2.6-xenU-build
+
+  You can also change linux-2.6.11-xenU/Makefile
+  CONFIG_CC_OPTIMIZE_FOR_SIZE from -O2 to -O
+
+- Build PDB
+  (cd tools/debugger/libxendebug; make install)
+  (cd tools/debugger/pdb; make)
+
+Usage
+
+- PDB does not currently support SMP.  Please boot xen with "maxcpus=1"
+
+- Run PDB
+  domain-0.xeno# ./pdb <port>
+
+- Run GDB
+  hostname% gdb <xeno.bk>/dist/install/boot/vmlinux-syms-2.6.11.11-xenU
+
+  (gdb) target remote domain-0.xeno:<port>
+
+  At this point, you'll get an error message such as:
+  Remote debugging using domain-0.xeno:5000
+  0x00000000 in ?? ()
+  warning: shared library handler failed to enable breakpoint
+  Although GDB is connected to PDB, PDB doesn't know which domain
+  you'd like to debug, so it's just feeding GDB a bunch of zeros.
+
+  (gdb) maint packet x context = domain <domid> <vcpu>
+
+  This tells PDB that we'd like to debug a particular domain & vcpu.
+  However, since we're sending the command directly to PDB, GDB doesn't 
+  know that we now have a proper target.  We can force GDB to invalidate
+  its register cache.  This is optional; the next time the program
+  stops GDB will query for the registers automatically.
+
+  (gdb) flushreg
+
+  
+  the following gdb commands should work :)
+
+  break
+  step,   stepi
+  next,   nexti
+  continue
+  print
+
+
+To Do
+
+- watchpoints
+- support for SMP
+- support for user applications
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
 |   
 
| <Prev in Thread] | 
Current Thread | 
[Next in Thread> |  
- [Xen-changelog] readme for pdb 0.3,
BitKeeper Bot <=
  
 |  
  
 | 
    | 
  
  
    |   | 
    |