Downloading Bdbj (version 1.2 beta)

Bdbj is a debugger for programs written in pure Java, which allows the user to step both backwards and forwards through the code. Conventional debugging concepts such as breakpoints and watches are also supported. The debugger can be used with a command line or a graphical interface. In the latter case there is support for editing and compiling the source code. The papers discuss the implementation and motivation of this project in more detail. Bdbj was designed and implemented by Jonathan Cook, University of Edinburgh.

Bdbj is a Java program linked to a modified version of the Java Virtual Machine Kaffe (version 1.0.6), which allows the debugging of programs which Kaffe 1.0.6 is capable of running.

This release has only been tested on Linux. To use the GUI, you will also require a Java Virtual Machine with Swing, ideally a recent JDK release. Alternatively, Kaffe is capable of running Swing, but if you do this you should install a separate version of Kaffe with the JIT enabled and use this to run the GUI, as the interpreter would run the GUI quite slowly.

I have not tried running it on Windows. In principle it should work: Java runs under Windows, and so does Kaffe. However, getting Kaffe to run under Windows seems far from straightforward. If you do try, then please tell me what happens.

In order to install Bdbj on your machine you will need to follow the following steps:

  1. Change the working directory to the one in which you want the directory (called kaffe-1.0.6) containing Kaffe's source code, and the directory (called kaffe) containing the compiled program and the debugger, to be put. When run normally, i.e. directly rather than by the debugger this version of Kaffe will operate in the normal way (except in the case that I have introduced bugs). However the version installed will have JIT switched off and will therefore run Java slower. So if you already have Kaffe installed we recommend that you install our version of Kaffe in a separate directory rather than on top of your existing version.
  2. Download the tar file for Kaffe version 1.0.6 (called kaffe-1.0.6.tar.gz), which can be obtained from the Kaffe homepage. If you find there is a more recent version on the homepage, it probably will not work with our debugger. Time permitting, every time a new version of Kaffe is released we will update Bdbj to match.
  3. Download the file bdbj-1.2.tar which contains all the source code, and Java class files, into the same directory as the Kaffe tar file.
  4. Download the file installbdbj-1.2 into the same directory as the other two files and make it executable. Look at it to check it will work on your UNIX platform (it has been tested on Linux and Solaris). If so execute it, if not (this would be surprising) modify it as necessary and then execute it. The script will generate files called bdbj (for the GUI) and bdbjtty (for the command line interface) which you can put somewhere on your $PATH.
  5. There are two tests that you can perform on the build. To perform the first, change into the directory kaffe-1.0.6 and run "make check". To perform the second test, download the file bdbjregress, place it in the same directory as the other downloaded files and then execute it. The first test checks that Kaffe operates correctly when not coupled with the debugger. The second test runs a few simple debugging tasks and checks that the debugger behaves correctly.

New Features

This release is being occassionally updated with bug fixes (last update 26 May 2002).

Running and using Bdbj

The help file (which can also be viewed via the Help menu in Bdbj) is also online here.

Screen-shot

Source Code

The bdbj tar file available above contains all the Java code for the debugger's user interface, within the appropriate jar files, and also those files of Kaffe which have been modified. These files can be browsed from here.

For the original licensing information regarding the modified files, please see kaffe-1.0.6.tar.