How the Dynamic Debug facility can help you get maximum performance without hooks
In the following situations, you can compile or create a program without hooks. Then, you can use
the Dynamic Debug facility to insert hooks at runtime
whenever you set a breakpoint or enter the STEP
command:
- Assembler, disassembly, and LangX COBOL programs do not contain hooks.
- Enterprise COBOL for z/OS® Version 5 always generates programs without hooks.
- If you use Enterprise COBOL for z/OS, Version 4, you can
compile your programs without hooks by using the
TEST(NOHOOK)
compiler option. - If you use one of the
following compilers, you can compile your programs without hooks by using the
TEST(NONE)
compiler option:- Enterprise COBOL for z/OS and OS/390®, Version 3
- COBOL for OS/390 & VM, Version 2 Release 2
- COBOL for OS/390 & VM, Version 2 Release 1, with APAR PQ40298
- If you use the Enterprise PL/I for z/OS, Version 3.4 or later, compiler, you can compile your
programs without hooks by using the
TEST(NOHOOK)
compiler option.
The Dynamic Debug facility can also help improve the performance of z/OS Debugger while debugging programs compiled with any of the following compilers:
- any COBOL compiler supported by z/OS Debugger
- any PL/I compiler supported by z/OS Debugger
- any C/C++ compiler supported by z/OS Debugger
When you compile with one the following compilers and have the compiler insert hooks, you can enhance the program's performance while you debug it by using the Dynamic Debug facility:
- any COBOL compiler supported by z/OS Debugger
- any PL/I compiler supported by z/OS Debugger
- any C/C++ compiler supported by z/OS Debugger
When you start z/OS Debugger, the
Dynamic Debug facility is activated unless you change
the default by using the DYNDEBUG EQAOPTS
command. If the DYNDEBUG
EQAOPTS
command was used to change the default to DYNDEBUG OFF
, you can
activate it by using the SET DYNDEBUG ON
z/OS Debugger command. Note that the
SET DYNDEBUG ON
z/OS Debugger command must be issued before you
enter the STEP
or GO
command. If the Dynamic Debug facility is not active,
z/OS Debugger uses the hooks inserted by the
compiler, instead of the hooks inserted by the Dynamic Debug facility.