Presentation is loading. Please wait.

Presentation is loading. Please wait.

Cole Software LLC Presents An unusually powerful diagnostic facility for OS/390 and z/OS programmers www.colesoft.com.

Similar presentations


Presentation on theme: "Cole Software LLC Presents An unusually powerful diagnostic facility for OS/390 and z/OS programmers www.colesoft.com."— Presentation transcript:

1 Cole Software LLC Presents An unusually powerful diagnostic facility for OS/390 and z/OS programmers www.colesoft.com

2 What is z/XDC? z/XDC is the premier Assembler language debugging tool for Applications and Systems-level programmers. z/XDC is used by most of the world’s mainframe assembler developers and Fortune 500 companies to help them deliver quality applications that work in extremely complex environments. This short presentation will give you a brief overview of what z/XDC is, and what it can do. If you have ANY questions about z/XDC, please contact us at www.colesoft.com, or callwww.colesoft.com Bob Shimizu at (800) XDC-5150 www.colesoft.com

3 How did z/XDC come to be? Dave wrote his debugger out of frustration with TSO TEST, which he found difficult to use. z/XDC, and the XDC family of debugging tools that preceded it are the work of one man: Dave Cole. So, Dave wrote something BETTER! www.colesoft.com

4 How does z/XDC work?  z/XDC is an ESTAI or ESTAE, a huge abend-handler.  All breakpoints and traces are done by inserting a X’00’ into the execution stream.  When executed, the resulting 0C1 abend is trapped by z/XDC.  z/XDC then shows you the code.  This is simple, and eminently transportable! This is just like forcing a dump, BUT z/XDC allows you to work interactively Without wasting time or paper! www.colesoft.com

5 z/XDC’s structure allows you to debug in some unusual programming environments. Your TSO programs Your ISPF Programs Your batch jobs Your Started tasks Your SVC routines Your PC routines Your IRB routines Your CICS, DB2 and IMS routines Your System exit routines (SMF, DADSM, VTAM, RACF, JES2) Your Vendor product exit routines z/XDC can go to places that no other tool can take you. www.colesoft.com

6 And in some unusual storage locations In your TSO address space In someone else’s TSO address space In a background address space (batch or started task) In common storage In MLPA, FLPA, DLPA In the PLPA z/XDC is a POWER TOOL!

7 You can use z/XDC as a “learning tool”. Un-documented interfaces; Applications that have poor documentation; Exit code that isn’t behaving as “advertised”; Anything the user needs to learn about in the system! You can start a z/XDC session and investigate: z/XDC makes it easy to find out what is REALLY happening in “black box” programs! www.colesoft.com

8 z/XDC is a training aid Teach yourself how a program REALLY works.  Trace execution starting anywhere you like.  Use DSECT maps to SEE storage fields and their values.  Create multiple Display windows to show memory addresses.  See them change as your program modifies them.  Trace your program and see what it does “in nature”. z/XDC brings CLARITY to the debugging process. It makes solving difficult problems FUN!

9 z/XDC’s philosophy Programmers spend a lot of mental “overhead” figuring out pointer chains, hex addresses, visualizing esoteric structures, decoding object code and doing hex math in their heads. You should not have to work hard to solve a problem. We don’t make you smarter. We DO make you more effective. Let z/XDC do this grunt work. It will free your mind of mental overhead, allowing you to think strategically about the problem. www.colesoft.com

10 How do we make it easy? Point-and-shoot disassembly; Point-and-shoot memory display; The ability to LIST key system structures; The ability to FIND hex or character data; Full source-statement support; Four kinds of breakpoints; Five kinds of traces; The ability to investigate other address spaces. z/XDC gives you: z/XDC saves effort. You save time! www.colesoft.com

11 Let’s start a z/XDC session We’ll select Option ‘2’, we’ll request APF-authorization and we’ll choose to debug “XDCSYMED”. www.colesoft.com Then, we press Enter…

12 And we get z/XDC! This is the “Working window”. This is where we’ll do the bulk of our debugging work. This is a “Display window”. It allows us to watch memory, registers or system structures change as the program executes. You can have as many Display windows as you like! www.colesoft.com You can create your own screen layouts, and recall them later!

13 Looking around www.colesoft.com z/XDC saves effort by showing useful information. Whenever it can, z/XDC does conversions for you! PSW fields, described in detail Register sets Individual registers and where they point to Control registers, described in detail We’re only showing a fraction of what z/XDC can list!

14 More interesting displays www.colesoft.com Here is the Task Control Block structure for this Address Space. Here is the Request Block structure for the current Task. Now let’s go disassemble some code…

15 Disassembled code z/XDC begins a session at a branch to the start of your program. We step one instruction. www.colesoft.com And the program will stop here. See the X’90EC’? That’s a Store Multiple instruction. We’ll put the cursor there, and press Enter…

16 Voila! This is an example of z/XDC’s Point-and-shoot disassembly. z/XDC performs point-and-shoot operations on memory, displacement addresses, and registers as well. www.colesoft.com Want to see the source statements for this program? It’s a SNAP!

17 Source statement support If you assemble your program with ADATA, then z/XDC can use it when displaying your code. This is much better than looking at pure object code, isn’t it? Now, let’s create a breakpoint… www.colesoft.com

18 Point-and-shoot breakpoints Type an “A” or a “T” next to any line of code, press Enter and you set a breakpoint! Then, type “GO” and the program stops there. Now we’re stopped at this point.

19 Breakpoints and Traces Permanent breakpoints Transient breakpoints Hooks Deferred breakpoints and hooks Single-step traces Trace to next branch statement Trace to successful branch Trace to unsuccessful branch Loop traces z/XDC’s breakpoints and traces support conditional statements. You can associate other z/XDC commands with any breakpoint or trace. You get power and flexibility! www.colesoft.com

20 Create a debugging session in another address space. In the next few slides, we’re going to “reach into” another address space and start a debugging session there. Here are the steps: www.colesoft.com  We’ll use Foreign Address Space Mode to “go” to another address space.  We’ll set a HOOK there.  We’ll use Cross Domain Facility to connect to the new debugging session. This is WAY COOL!

21 Foreign Address Space Mode We issue “SET ASID BOB2”, And we’re looking into BOB2’s Address Space! We issue “LIST TASKS”, put an “L” next to the WTOR task and press Enter. This action will issue LIST RBS for that task… www.colesoft.com

22 Looking at BOB2’s code We put an “F” next to the Request Block and disassemble the code that it points to. We TAKE CONTROL of that program by putting a “K” next to a line of code. This sets a HOOK. We’re going to HIJACK this program! www.colesoft.com

23 The HOOK is created z/XDC has just put it’s HOOK SVC into the code stream. When the HOOK is executed, z/XDC will create a debugging session at this place in the code (WTOR+CC). Now, lets get out of FASM… www.colesoft.com

24 We end our FASM session We issue “SET ASID HOME” to leave BOB2’s address space. We’re done with this debugging session.

25 Connecting to BOB2’s Debugging Session We enter Option “3” on the z/XDC Startup Panel. This will allow us to connect To the code we HOOKed in BOB2’s Address Space. www.colesoft.com

26 And here is our z/XDC session! You are now ready to debug this batch job!

27 z/XDC lets you debug any program – at any time! We’ve demonstrated how to start a debugging session on the fly whenever you like!  We used Foreign Address Space Mode to set a HOOK in another Address Space.  We then connected our terminal to that debugging session In that other address space.  We can now debug that other address space interactively. You can use this mechanism to take control of any address space whenever you need to debug it. www.colesoft.com

28 On security z/XDC allows the programmer to do some very powerful things. However, a careless or malicious user could use our product to harm a running system. That is why system security calls (SAF calls) are made throughout the product so that your security people can absolutely control access to the product, and the product’s access to the system. z/XDC will interface with all the major security products so that rules can be written to enforce installation security standards. Some people may need access to the full range of z/XDC’s capabilities. Others may not. You decide! You have absolute control of z/XDC’s capabilities. www.colesoft.com

29 Let’s Review  z/XDC can be used on very simple, or extremely complex applications.  z/XDC does the “grunt” work so that you can think about the problem strategically.  z/XDC can help you understand undocumented programs.  z/XDC handles APF-authorized code, SVCs and PC routines.  z/XDC works on started tasks, batch programs – nearly anything in Assembler!  z/XDC makes new AND experienced programmers MUCH MORE EFFECTIVE. Your organization will deliver quality code more quickly. That was a whirlwind tour! We’ve shown you only 5% of what z/XDC can do for you. Very briefly: www.colesoft.com

30 How is z/XDC priced?  A 60-day trial of z/XDC is FREE.  Your first on-site training class is FREE.  z/XDC is priced by the concurrent user session.  We offer annual leases based on the number of concurrent user sessions desired (subject to some minimums).  Maintenance and Support is included in the lease cost. www.colesoft.com This is usage-based pricing.

31 Additional business benefits  You may upgrade the processor – NO UPGRADE FEEs.  You may transfer the product – NO TRANSFER FEEs.  You can split your user sessions site-wide – just like a site license.  You may add user sessions whenever you like.  Your people will have access to the world’s most powerful debugging tool! Our pricing policy is very open-handed! What’s not to like?

32 And what is Cole Software?  We do only one thing: Diagnostic tools for mainframe programmers.  We support most of the world’s mainframe assembler developers and a great many Fortune 500 companies.  We emphasize methodical design and excellent customer support.  We enjoy wide market penetration and the fanatical loyalty of some very experienced programmers. We’d like you to join our user community. For more information please visit www.colesoft.comwww.colesoft.com or call Bob Shimizu at (800) XDC-5150 www.colesoft.com

33 Now, go get some REAL work done! www.colesoft.com (800) XDC-5150


Download ppt "Cole Software LLC Presents An unusually powerful diagnostic facility for OS/390 and z/OS programmers www.colesoft.com."

Similar presentations


Ads by Google