Está en la página 1de 41

Understanding z/TPF

Transaction Processing Facility


What is it and how is it used
Jeff Van Minde, IBM Support and Solutions z/TPF
vanminde@us.ibm.com
February 25th, 2015

Source: Cartoon from http://www.brotherjones.com/doug/portfolio/people/juggler


2

z/TPF Basics

z/TPF is an Operating System

User
Application
z/TPF Operating system
System z Hardware
4

z/TPF Specifically Built for


Speed

z/TPF

Reliability

Availability

Efficiency

z/TPF Highlights
Efficient
Short Existence Time
High throughput
Quick response times
Short instruction path lengths
High availability

Messages and Transactions


Tens of Thousands of Transactions a Second
Minimum Latency, Millisecond Existence
Storage and Communication (I/O)
Allowing 365x24x7 Operation

Lightweight process model

To Create and Teardown Processes Quickly and Often

Fast Restart and Recovery

30 seconds to 2 minutes

Process Protection
Open-ended growth capacity
Ability to make updates while taking traffic
6

Memory, Storage, Communications

Each Process (ECB) is Only Aware of its Own Resources


Vertical scaling with up to 84 engines that z/TPF can address
Horizontal clustering as many as 32 multiprocessor systems accessing same database

Software, Memory Allocations, Database Organization, Database Resources

z/TPF History

Invented for Real Time Transaction Processing


Created by IBM and SABRE @ 1965
A need for a global electronic ticketing solution
Created Airline Control Program (ACP)
Created Programmed Airline Reservation System (PARS) application
Keeps Evolving Currently PUT11 with weekly updates

Other industries develop


applications for TPF

Most reservation applications


derived from this application
base

Application
1960s

Customers

PARS

1968

1979

1982

Airline
Control
Program

ACP
becomes

1989

1994

2005

2014

IBM

(ACP)

TPF

TPF 2.1
(LC support)

TPF 3.1

TPF 4.1

(TC support
and C Lang.)

(31-bit and
virtual
addressing)

z/TPF
(64-bit, SOA,
security,
open runtime/dev.)

z/TPF
(PUT11.)

What is z/TPF used for Today?

z/TPF Differences

Typical Workload Types

http://www-01.ibm.com/support/knowledgecenter/zosbasics/com.ibm.zos.zmainframe/zconc_mfworklds.htm
11

A Background on Operating Systems


Most Operating Systems (OS) were developed in the 1960s or 1970s
Todays modern OSs are based on older traditional models (red)

Windows

Android

iOS

OS X

Linux

z/OS

z/TPF

MS DOS
@1979 SCP

Linux

Darwin

FreeBSD

Minux

OS/360
@1964 IBM

ACP
@1965 IBM

UNIX variant

UNIX variant

UNIX variant

@1969

@1969

@1969

http://en.wikipedia.org/wiki/Operating_system
12

Operating Systems - Compare and Contrast

13

Category

Unix/Linux

z/OS

z/TPF

z/VM

Hardware

Multiple

z Systems

z Systems

z Systems

Created

1969 (Unics)

1964 (OS 360)

1965 (ACP)

1970 (CP-67)

Current

Linux on IBM z Systems


Suse 12, Redhat 6

z/OS 2.1

z/TPF PUT11

z/VM 6.3

Type

General Purpose

Batch/Transactional

Transactional

Virtualization

Applications

Desktop to Enterprise

WAS, CICS, IMS,


Vendor, Custom

Customized,
Open Source

Virtualized OSs, CMS

Industry

Academic, Consumer,
Midsize, Business, Fortune
500

Business,
Fortune 500

CRS, GDS, Airlines,


Financial, Rail,

Topology

Centralized, Distributed

Centralized

Centralized

Centralized, Virtualized

Languages

C, C++, Java, Scripted,


etc.

Assembler, C, C++,
COBOL, PL/1, Java,
REXX

Assembler, C, C++

REXX, Scripting

Comparing z/TPF to other Transaction OSs


Most other Transaction Processing models run on top of another operating
system and are not as efficient as a native operating system like z/TPF
Memory Based solutions
Transactional speed achieved by in-memory tables
Capturing significant changes from a memory database is problematic

Distributed Based solutions


Transactional speed achieved by multiple servers
Syncing the database on distributed servers is inefficient

14

Less Layers in z/TPF


Other Operating Systems
z/TPF

15

User

User

Application

Application

Transaction APIs

z/TPF Operating System

Other Operating Systems

System z Hardware

Hardware

Fit for Purpose

16

What is the best platform for the workload?


How important is Reliability, Availability, Serviceability and Speed?

z/TPF and z Systems


z/TPF exclusively runs on z System

hardware
Specifically written and optimized for the z

System hardware features and functions

Infographic is a z13 Model Server


http://www-03.ibm.com/systems/z/hardware/z13.html
17

Centralized Footprint + Distributed Benefits

18

https://www.ibm.com/developerworks/community/wikis/home?lang=ru#!/wiki/Tivoli%20System%20z%20Monitoring%20and
%20Application%20Management/page/IBM%20Tivoli%20zEnterprise%20Monitoring%20--%20An%20Overviewk

z/TPF Details

z/TPF is Delivered Electronically


/ztpf
/local_mod

Software
Source code provided to customers

/base

/base

/hpo

Pre-built objects also available

/tpfdf

Customers can make modifications

Deliverables

Shipped

Control Program

Configuration Dependent

System Services
Continual APAR updates
Yearly PUT releases
Drivers, Automation, etc.

20

/opensource

/hpo

/bss

/tpfdf

Open Source
Customer Modified Shipped Source

/tpftools

/linux
/os390

z/TPF - Control Program


Also Known As: Control Program, CP, Kernal, CPS0
About 3.5 Meg in size

Memory

Memory Resident
Written in Assembler
Dispatch Control (CPU LOOP)
Channel Programs/Drivers
Efficient
Hardware Specific
Memory/Storage Management
Linkage
CSECTS linked together to make up CPS0
Built as part of System Initialization (SIP)
User Exits
21

Control Program

z/TPF - Shared Objects / Programs


Memory

Storage/Disk/DASD

Core Resident
Program Area
Any software that is not part of the CP is

a Shared Object (SO) that can be preloaded in memory or loaded when initially
called for use.

Control Program

SOs are written in:


Assembler
C/C++
SOs can be z/TPF System Software or

Application Software
22

Each Process has an Entry Control Block (ECB)


Start a Process

Input Message
Control
Program

Entry Control Block


(ECB)
End a Process

Output Message

Interacts with..

Each ECB is protected / fenced

100s ECBs active at one time

Shared Objects are reentrant

Shared
Object(s)

Interacts with..
Memory/Disk

23

CPUs evenly distribute workload

CP is interrupt driven

Shared
Object(s)

CPU(s)

Database Design
Built for Performance
Fixed and pool records are spread evenly across all modules
Ensures I/O spread evenly across all volumes
z/TPF reads from either module and writes to both modules

Example of z/TPF with 6 modules defined


Fixed Record
with 20
records
Pool type
with 24
records

24

PK0001
0 3 6 9
12 15 18
0 3 6 9
12 15 18 21

PK0003
1 4 7 10
13 16 19
1 4 7 10
13 16 19 22

PK0005
2 5 8 11
14 17
2 5 8 11
14 17 20 23

Prime
Modules

PK0002
0 3 6 9
12 15 18
0 3 6 9
12 15 18 21

PK0004
1 4 7 10
13 16 19
1 4 7 10
13 16 19 22

PK0006
2 5 8 11
14 17
2 5 8 11
14 17 20 23

Duplicate
Modules

z/TPF Databases Types


Traditional Fixed File

Globals

Flat File
Very Fast
Application must manage
database

Format 1 and Format 2


Very Fast
Memory and keypointed to file
on a time initiated basis

TPF File Systems

TPF Collection Support


(TPFCS)

POSIX Interface
Slow, Medium, Fast based on
model used

25

Database Manager
Smalltalk model
Medium

TPF Database Facility


(TPFDF)
Database Manager
Very Fast
Application abstracted from
database

Virtual File Area (VFA)


Memory cached records
Usually have a high read count
Bubble out and are written to
file when filed.

z/TPF Communications

26

3215 / 3270 Console

System Network
Architecture (SNA)

TCP/IP

Connects visa OSA


Integrated Console
Controller (OSAICC)
Used for console
support for TPF
Operations Server
(TOS)
Also can be
attached via ESCON
and Controller Unit
(Vendor)

3745 Network
Control Program
Channel to Channel
(CTC)

Connectivity via
OSA Express Card
Internet Daemon
Model
TCP/IP Native Stack

z/TPF Security

Hardware Support
Cryptographic
Cards on Server
Accelerator
Mode
Central Processor
Assist for
Cryptographic
Functions
(CPACF)
TPF Operations
Server

27

Software Support
OpenSSL
Non Displayable
Memory
Internet Security

Memory Security
Key Protected
Fetch protection
Write protection
Low memory
Protection

Processes
(ECBs) protected
Virtual Addressing
with Enhanced
Dynamic Address
Translation (DAT)
ECB view address
(EVA)
System view
address (SVA)

Development Environment
Development
Environment

TPF Toolkit
IDE

Linux on z
Systems

z/VM

Debugger

MakeTPF

VPARS

Editor

BuildTPF

VTAPE

z/TPF Relies on Supporting Systems


z/TPF depends on other systems to build the z/TPF configuration, build z/TPF
software, run off-line batch jobs, connect via a primary console, and provide tools for
testing, performance and debugging

29

z/OS

Linux on z System

z/VM

Format DASD
Environment
Create System
Initialization
Environment
Run Batch oriented
tasks
Access to General
Data Sets

Used to build z/TPF


object code
HLASM
GCC Compiler
Create Loader
components
Other Utilities

Can virtualize z/
TPF as a guest
Used for testing and
production

z/TPF Configuration Options

System Configuration
Uni (Single Engine) Environment
Only one I-stream
used in Uni system

Network

z System LPAR (s)

Up to 140 I-Streams

DASD
Online Programs

Control Program
z/TPF

31

System Configuration
Tightly Coupled (Multi Engine)
Network
z System LPAR (s)

Up to 140 I-Streams

DASD
Online Programs

Control Program
z/TPF

32

System Configuration
Loosely Coupled Environment (Multi Server)
Network
zSystem
System
Z LPAR
LPAR (s)

z System LPAR (s)

Up to 140
99 I-Streams
I-Streams

Up to 140 I-Streams

DASD
Online Programs

Control Program
z/TPF

33

Online Programs

Control Program
z/TPF

z/TPF Functionality

z/TPF Functionality is Customer Driven

35

Customer
Needs

Requirement
Details

Enhancements
Added

Functionality
Created

z/TPF Middleware and System Services Layer


MQ

Web Services

Server (Turbo)
Memory Based

XML
SOAP
WS-Security
JSON
Mail Server
HTTP Server
HTTP Client
WebSphere
Operational
Decision
Management
(WDOM)
Business Events
FTP

Client

36

Transaction
Services
Commit/
Rollback
Recovery Log

Database
TPFDF
TPFCS
TPFAR
File System

Ported Open
Source
Apache
OpenLDAP
MySQL
OpenSSL
zlib

Customers Create and Support Their Applications

Specific Customer Applications


Banking

37

Credit Card
Authorization

Airline
Booking

Hotel
Booking

ATM
Authorization

Every Solution has Pros and Cons

38

z/TPF Pros

z/TPF Cons

Code Software to Exact Business


Needs

Self Supporting Application Software

Can Differentiate from the


Competition

Customization Needed

Streamlined, Efficient Functionality

Does Not Support All Function Types

Reliability, Availability, Serviceability,


and Speed

Restricted Environment

Follow z/TPF
TPFs Home Page
ibm.com/tpf
z/TPF Blog
ibm.biz/zTPF_dW
z/TPF YouTube Channel
ibm.biz/IBM_TPF_recordings
Twitter IBM_TPF
twitter.com/ibm_tpf
39

Provide feedback

Take a second and comment on the blog about the webinar.


Tell me if you liked it, disliked it, or have additional questions.
www.ibm.biz/understanding_ztpf
Scroll down, click Add a Comment, and add your feedback.
Thanks!

40

Questions?

41