IBM OLIVER (CICS interactive test/debug)

IBM OLIVER (CICS interactive test/debug)

OLIVER (CICS interactive test/debug) was a proprietary testing and debugging toolkit for interactively testing programs designed to run on IBM's Customer Information Control System (CICS) on IBM's System/360/370/390 architecture.

It provided instruction step, conditional program breakpoint ("Pause") and storage alteration features for Assembler, COBOL and PL/I programs. High level language (HLL) users were able to see and modify variables directly at a breakpoint.

Oliver also provided fully automatic features to prevent application program errors such as Program Check, "Wild branch" (entirely software detected) , "illegal SVC" and "CICS AICA" Abends ("program loop"). It was possible to correct many errors and interactively alter the control flow of the executing application program. This permitted more errors to be detected for each compilation which, at the time, were often scheduled batch jobs with printed output, often requiring several hours "turnaround" before eventually re-loading the program (using CSMT/CEMT Newcopy) and retrying the failing transaction.

It additionally provided storage protection features to prevent rogue applications from overwriting storage ("storage violations", or buffer overflows) occupied by other applications, system tables and other unprotected kernel code.

Oliver was an Instruction Set Simulator which provided all functions through full simulation of the object code that was under total control of the OLIVER monitoring & execution engine (a form of 'type 2' hypervisor; but limited to CICS application code and EXEC interface code, not the CICS kernel or operating system or hardware) including full instruction trace if required at machine code level. Oliver provided instruction path length metrics at any point during execution, providing a means {Performance analysis} to perform program optimization, important for time sensitive on-line transactions. It was fully quasi-reentrant allowing application programs to be "paused" at different breakpoints by multiple users simultaneously and was entirely "non-invasive" to the targeted application's object code (did not modify the object code memory to provide breakpoints). This technique allowed later hardware protected CICS program's to be monitored with essentially no change to the kernal code - unlike many of its competitors - which had used invasive techniques which would no longer work for these programs because of the protection.

ee also

*Assembly language
*CICS
*Computer programming
*Core dump
*Memory debugger
*Software testing
*SIMON (Batch Interactive test/debug)

External links

* [http://www.ibm.com/cics IBM CICS official website] hardware plus software required wild branch prior art


Wikimedia Foundation. 2010.

Игры ⚽ Поможем сделать НИР

Look at other dictionaries:

  • SIMON (Batch Interactive test/debug) — was a proprietary test/debugging toolkit for interactively testing Batch programs designed to run on IBM s System 360/370/390 architecture. It operated in two modes, one of which was full Instruction Set Simulator mode and provided Instruction… …   Wikipedia

  • Debug symbol — A debug symbol is information that expresses which programming language constructs generated a specific piece of machine code in a given executable module. Sometimes the symbolic information is compiled together with the module s binary file, or… …   Wikipedia

  • CICS — For the Sudbury, Ontario radio station, see CICS FM. Customer Information Control System (CICS) is a transaction server that runs primarily on IBM mainframe systems under z/OS and z/VSE. CICS is a transaction manager designed for rapid, high… …   Wikipedia

  • Dynamic program analysis — is the analysis of computer software that is performed by executing programs built from that software system on a real or virtual processor. For dynamic program analysis to be effective, the target program must be executed with sufficient test… …   Wikipedia

  • Динамический анализ кода — (англ. Dynamic program analysis)  анализ программного обеспечения, выполняемый при помощи выполнения программ на реальном или виртуальном процессоре (анализ, выполняемый без запуска программ называется статический анализ кода). Утилиты… …   Википедия

  • Wild branch — In computer programming, a wild branch is a description of a GOTO instruction where the target address is indeterminate, random or otherwise unintended. [ [http://www.priorartdatabase.com/IPCOM/000099292/ Debug Aid for Wild Branch Conditions ] ]… …   Wikipedia

  • Breakpoint — A breakpoint, in software development, is an intentional stopping or pausing place in a program, put in place for debugging purposes. More generally, a breakpoint is a means of acquiring knowledge about a program during its execution. During the… …   Wikipedia

  • Отладчик использования памяти — (англ. memory debugger)  инструментальное программное обеспечение для обнаружения утечек памяти и переполнений буфера. Это происходит из за ошибок, связанных с выделением и освобождением динамической памяти. Программы, написанные на… …   Википедия

  • Memory debugger — A memory debugger is a programming tool for finding memory leaks and buffer overflows. These are due to bugs related to the allocation and deallocation of dynamic memory. Programs written in languages that have garbage collection, such as managed …   Wikipedia

  • CA/EZTEST — was a CICS interactive test/debug software package distributed by Computer Associates and originally called EZTEST/CICS, produced by Capex Corporation of Phoenix, Arizona with assistance from Ken Dakin from England. The product provided Source… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”