C & C++ for Coverage and
Operations
Overview
This course is designed
to give Coverage and Operations staff a detailed introduction to C
& C++ in the z/TPF Environment.
Staff are often required to work with and debug newer programs
written in C or C++ without having taken any formal programming
training in these languages.
Students will be taken through the layout of C and C++ programs,
the structure of the language, compilation units and linkage, header
files and Dump Analysis. This
course is not designed to teach programming itself, but enable staff to
understand and interpret existing programs. It is a practical 5 day course with
lectures, interspersed with exercises to consolidate the knowledge
gained.
Pre-requisites
Prior Mainframe Assembler and z/TPF knowledge
is required.
Audience
Any staff who are
required to work with exisiting programs written in C or C++ for the
z/TPF Platform..
Objectives
By the end of the course, the delegates will be able, with the
aid of course notes to:
·
Understand the layout and structure of C & C++ programs in
z/TPF.
·
Identify header files used within compilation units.
·
Understand the use of the .mak file
for building CSOs.
·
Use the .mak output and listing to
identify the source code instruction in error.
·
Use the listing to identify variables held in registers vs the stack.
·
Locate function stacks within a dump and identify variable
values within the stack.
Course Outline
Introduction
|
Objectives
Terminology
|
Program
Structure
|
Data Types, variables, enums, typedefs
Decision Making
Loops
Functions
Compilation Units
The CSO (program and Library)
C vs C++
C++ - Classes and Methods overview
|
Listings
|
Interpreting Pseudo Assembler
Optimisation and its uses
Function Prologs and Epilogs
Understanding the Stack
|
DLM
& DLL
|
Components
Build Scripts (makefile)
Understanding the output from Build Process
|
PreProcessor
|
#pragma options
Understanding Conditional Compilations
|
Header Files
|
Standard z/TPF
Header Files
DSect vs Header File
Packing structures
Pitfalls
|
Optimisation
|
Register vs Stack
Usage
Inlining
|
Assembler
|
Interfacing with
existing programs
TPF_regs structure
|
Linkages
|
Identify different
linkage types
Function and Variable descriptors
Static Storage in depth
|
Program Interfaces
|
C to C/C++
C to Assembler
Assembler to C
Parameter List
|
Dump Analysis
|
Review existing knowledge
Example Ctl3 and Ctl75
C/C++ Dump Tags
Function stacks and their layout
Identifying variable and parameter values
Heap Storage and its Layout
Program and Library Dump Analysis
|
back to top
|