Overview of IBM z/OS Debugger
IBM® z/OS® Debugger is the next iteration of IBM debug technology on IBM Z and consolidates the IBM Integrated Debugger and IBM Debug Tool engines into one unified technology.
IBM
z/OS Debugger is a host component
that supports various debug interfaces, like the Eclipse and Visual Studio Code IDEs. z/OS Debugger and the supported debug
interfaces are provided with the following products:
- IBM Developer for z/OS Enterprise Edition
- This product is included in IBM Application Delivery Foundation for z/OS. IBM Developer for z/OS Enterprise Edition provides all the debug features.
- IBM Developer for z/OS
- IBM Developer for z/OS is a subset of IBM Developer for z/OS Enterprise Edition. IBM Developer for z/OS, previously known as IBM Developer for z Systems or IBM Rational® Developer for z Systems®, is an Eclipse-based integrated development environment for creating and maintaining z/OS applications efficiently.
- IBM Debug for z/OS
- IBM Debug for z/OS is a subset of IBM Developer for z/OS Enterprise Edition. IBM Debug for z/OS focuses on debugging solutions for z/OS application developers. See Table 1 for the debug features supported.
- IBM Z and Cloud Modernization Stack
- IBM Z and Cloud Modernization Stack brings together component capabilities from IBM Z into an integrated platform that is optimized for Red Hat OpenShift Container Platform. With this solution, you can analyze the impact of application changes on z/OS, create and deploy APIs for z/OS applications, work on z/OS applications with cloud native tools, and standardize ID automation for z/OS. Starting from 2.0, Wazi Code is delivered in IBM Z and Cloud Modernization Stack. Wazi Code 1.x is still available in IBM Wazi Developer for Red Hat CodeReady Workspaces.
Table 1 maps out the features that differ in products.
Not all the available features are listed. To find the features available in
different remote IDEs, see Table 2.
IBM Debug for z/OS | IBM Developer for z/OS | IBM Developer for z/OS Enterprise Edition | IBM Z and Cloud Modernization Stack (Wazi Code) | |
---|---|---|---|---|
Main features | ||||
3270 interface, including z/OS Debugger Utilities | √ | √ | ||
Eclipse IDE, see Table 2 for feature details.1 | √ | √ | √ | |
IBM Z Open Debug provided with the Wazi for Dev Spaces IDE, see Table 2 for feature details.1 | √ | √ | ||
IBM Z Open Debug provided with the Wazi for VS Code IDE, see Table 2 for feature details.1 | √ | √ | ||
Code Coverage features | ||||
Compiled Language Code Coverage2 | √ | √ 3 | √ | |
Headless Code Coverage | √ | √ | √ | |
ZUnit Code Coverage4 | √ | √ | ||
z/OS Debugger Code Coverage (3270 and remote interfaces) 5 | √ | √ | ||
3270 features | ||||
z/OS Debugger full screen, batch or line mode | √ | √ | ||
IMS Isolation support | √ | √ | ||
Compiler support features | ||||
Assembler support: Create EQALANGX files | √ | √ | √ | |
Assembler support: Debugging 6 | √ | √ | √7 | √7 |
LangX COBOL support 8 | √ | √ | √ | |
Support for Automatic Binary Optimizer (ABO) | √ | √ | √ |
Notes:
- The following features are supported only in remote debug mode:
- Support for 64-bit COBOL feature of z/OS for COBOL V6.3 and later
- Support for 64-bit Enterprise PL/I for z/OS Version 5 and later
- Support for 64-bit C/C++ feature of z/OS
- Support for Open Enterprise SDK for Go 1.21 and 1.22.
- Support for Open XL C/C++ for z/OS 1.1 and later.
- Code coverage does not support Go programs.
- IBM Developer for z/OS includes z/OS Debugger remote debug and compiled code coverage Eclipse interface, but does not include z/OS Debugger Code Coverage.
- ZUnit Code Coverage is only supported in Debug Tool compatibility mode.
- z/OS Debugger Code Coverage can only be enabled in the 3270 interface. This function is deprecated and will be removed in a future release.
- Debugging assembler requires that you have EQALANGX files that have been created via ADFz Common Components or a product that ships the ADFz Common Components.
- This feature is only available with the Eclipse IDE.
- LangX COBOL refers to any of the following programs:
- A program compiled with the IBM OS/VS COBOL compiler.
- A program compiled with the IBM VS COBOL II compiler with the NOTEST compiler option.
- A program compiled with the IBM Enterprise COBOL for z/OS 3, 4, or 6 compiler with the NOTEST compiler option.
Feature | Eclipse-based debug interface | IBM Z Open Debug 1,6 |
---|---|---|
Integration with Language Editors6 |
|
|
Visual Debug | √2,6 | |
Debugging ZUnit tests | √6 | |
Debug profile management | √6 | √ |
IMS Isolation UI | √3 | |
Integration with CICS Explorer views | √ 2 | |
Integration with property groups | √2,6 | |
Integrated launch6 |
|
|
Modules | √ | |
Memory | √ | |
Program navigation | ||
Step over/Next | √ | √ |
Step into/Step in | √ | √ |
Step return/Step out | √ | √ |
Jump to location | √6 | |
Run to location/Run to cursor | √6 | √ |
Resume/Continue | √ | √ |
Terminate | √ | √ |
Animated step | √ | |
Playback | √6 | |
Breakpoints | ||
Statement breakpoints | √ | √ |
Entry breakpoints | √ | |
Source entry breakpoints | √6 | |
Event breakpoint | √6 | |
Address breakpoint | √6 | |
Watch breakpoint | √6 | |
Variables & Registers | ||
Variables | √ | √ |
Registers | √ | √5 |
Modifying variable and register values | √ | √ |
Setting variable filter | √6 | |
Changing variable representation | √ | |
Displaying in memory view | √ | |
Monitors | ||
Displaying monitor | √ | √ |
Modifying monitor value | √ | |
Changing variable representation | √ | |
Debug Console | ||
Evaluating variables and expressions | √ | |
z/OS Debugger commands | √7 |
Notes:
- IBM Z Open Debug is provided with Wazi for Dev Spaces and Wazi for VS Code.
- This feature is not available in IBM Debug for z/OS.
- This feature is only available in IBM Developer for z/OS Enterprise Edition.
- IBM Developer for z/OS does not include z/OS Debugger Code Coverage 3270 interfaces.
- Registers are available in the Variables view.
- The automonitor filters do not support programs complied with Open Enterprise SDK for Go or Open XL C/C++ for z/OS.
- Programs compiled with IBM Open Enterprise SDK for Go are not supported.