- IBM OLIVER (CICS interactive test/debug)
OLIVER (
CICS interactive test/debug) was a proprietary testing anddebugging toolkit for interactively testing programs designed to run onIBM 's Customer Information Control System (CICS) on IBM'sSystem/360 /370/390 architecture.It provided
instruction step , conditional programbreakpoint ("Pause") and storage alteration features for Assembler,COBOL andPL/I programs.High level language (HLL) users were able to see and modifyvariable s directly at a breakpoint.Oliver also provided fully automatic features to prevent application program errors such as Program Check, "
Wild branch " (entirelysoftware detected) , "illegal SVC" and "CICS AICA" Abends ("program loop"). It was possible to correct many errors and interactively alter thecontrol 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 violation s", orbuffer overflow s) 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 oroperating system orhardware ) including full instruction trace if required atmachine code level. Oliver providedinstruction 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.