Advanced debug architecture
Most of the debuggers work with the Java Debug Interface (JDI) which is a part of the Java Platform Debugger Architecture (JPDA).
One of the main issues of jBixbe is a specific filtering of debug events. The various views define completely new requirements concerning event filtering. Furthermore, every view needs separate flow control. That makes flow control very complex.
A prototype implementation of jBixbe using JDI showed that this interface is insufficient for this task. So the implementation of jBixbe had to go into Java Virtual Machine (JVM) and uses the native debug interface of JPDA. Since JDK 1.5 this interface is called Java Virtual Machine Tool Interface. It provides much more capabilities.
Based on the JVMTI, jBixbe has an advanced own JDI that works similar to JPDA JDI but with a few extensions tailored to meet the new requirements.