SlideShare a Scribd company logo
1 of 31
SMP/E
• • Who is this session for?
• • What is SMP/E?
• • Why would you use it?
• • Where does it fit in?
• • An SMP/E environment.
• • Terminology
• • Process Flow
Who is this session for?
• If you are new to maintaining software on the
mainframe and want to understand what
magic is happening under the covers of
• • Hear the buzzwords, get the scoop on the
lingo, see the structures, and learn the steps
to use SMP/E to keep your mainframe
humming.
What is SMP/E?
• SMP/E is the basic tool for installing and
maintaining software in z/OS systems and
subsystems. It controls these changes at the
element level by:
• Selecting the proper levels of elements to be
installed from a large number of potential
changes
• Calling system utility programs to install the
changes
• Keeping records of the installed changes
Why would you use it?
• • The product is delivered in this format
• • Upgrade a product
• • Fix a problem with a product
• • Track an installation defined change
Where does it fit in?
• The “mainframe” platform.
• MVS” environment aka OS/390, z/OS. Not VM.
Not Linux.
• Other Independent Software Vendors (ISV)
products.
• ISPF based dialog and Batch jobs.
An SMP/E environment - zones
• Global Zone
– Waiting to be installed
• Target Zone
– Runnable copy
• Distribution Zone
– Source
– Backup
SMP/E components -
Global Structure
• CSI - Consolidated Software Inventory
– Describes Target and Distributions zones
– Processing options
– Status of work in progress
– Exception data (hold for user acknowledgement)
• Libraries (DDDEFs)
– SMPPTS
– Logs
SMP/E components -
Target Structure
• CSI - Consolidated Software Inventory
– Describes executables
• Libraries (DDDEFs)
– Run-time (Product specific)
– SMP Temporary Store (SMPMTS, SMPSTS, …)
– Logs
SMP/E components -
Distribution Structure
• CSI - Consolidated Software Inventory
– Describes modules (programs and
subroutines)
• Libraries (DDDEFs)
– Samples
– Other text members
– Logs
SMP/E - packaging parts
• Function - A product identified by a unique FMID, a logical
group of elements.
– FMID - Function Modification IDentifier is a SYSMOD id
assigned to a function.
• SYSMOD id - Identifier assigned to a SYStem MODification.
– SYSMOD - input to SMP/E that defines the action to take on
one or more elements.
• Element - a single part of a product; a unique member of a
PDS(E) or file in an HFS.
• Program Temporary Fix (PTF) - a SYSMOD that changes one or
more elements.
• USERMOD - your modification to a vendor supplied element.
SMP/E - packaging parts
• Authorized Program Analysis Report (APAR) - a temporary fix
released before a PTF is packaged.
• Replacement Modification IDentifier (RMID) - used to identify a
SYSMOD that completely replaced an element.
• Updated Modification IDentifier (UMID) - used to identify a
SYSMOD that updated the last replacement of an element.
• COnditional REQuisite (COREQ) - identifies SYSMODs that can
only be installed correctly if both go on.
• PRE REQuisite (PREREQ) - identifies SYSMOD(s) that must have
been installed previously.
• Negative PRErequisite (NPRE) - mutually exclusive PREREQ.
SMP/E - processing terms
• Receive - makes known to the GLOBAL CSI.
– Similar to unzipping a pc based program and “cab” files that
are used to install a product.
• Apply - makes known to the TARGET CSI.
– Builds and copies the elements used to run the product.
• Accept - makes known to the DISTRIBUTION CSI.
– Copies elements to the backup libraries.
• Reject - tells the GLOBAL zone to forget about it.
• Restore - Rebuilds the Target version from what has been
accepted. Similar to ctrl-z or “undo”.
SMP/E - distribution
methods
• ServerPac - a complete set of products with applied
maintenance.
• CUM tape - cumulative service release between a span of time.
• Product tape - a product at its base level.
• CBPDO - a custom built product delivery option. This tape
contains one ore more products at their base level plus all
maintenance released.
• SUF - service upgrade facility is a java web based internet
application that can retrieve APARs and PTFs ensuring all
required maintenance is also received in your Global zone.
• ICSF - Internet Product/Maintenance Retrieval.
• FTP - service from Boulder.
Process Flow
• Build environment
• Receive
• Apply
• Test
• Accept
• Other backup
Where’s your backup?
• Physical volume(s)
• Logical data set
• SMP/E distribution libraries
• SMP/E Zone(s)
– Global
– Target
– Distribution
What do I order?
• ServerPac
– System replacement
• CBPDO
– Product upgrade
• Service
– PTF and/or APAR
Where do I begin?
• Backup
• Read the doc
• Receive the files
• Backup
• Read more doc
• Apply check
• Research issues/Order more service
• Apply
• Backup
• Accept check
• Accept
• Backup
Backup
• Make sure you have a backup, outside of SMP/E
– Take a data set level backup of the global
datasets, the
target zone data sets, and the distribution zone data
sets.
– Coordinate with others who might be using these
data sets.
– Consider IPL volumes, HFS data sets, other run-
time datasets.
Read the doc
• Follow the directions as they apply to your
installation.
• Take note of any actions that need to be done.
• Coordinate with other areas.
• Develop your plan for testing and
implementing.
Receive the files
• GLOBAL processing.
– Use ZONEGROUP to exclude receiving items already
processed.
//STEP001 EXEC PGM=GIMSMP,REGION=6M
//SMPCSI DD DISP=SHR,DSN=IBMSMPE.OS210.GLOBAL.CSI
//SMPPTFIN DD
DISP=SHR,DSN=MYUSERID.MPTF4414.UNPACKED
//SMPHOLD DD DUMMY
//SMPCNTL DD *
SET BDY(GLOBAL) .
RECEIVE SOURCEID(FTPHANG) ZONEGROUP(ALLZONES).
/*
Apply check
//STEP001 EXEC PGM=GIMSMP,REGION=6M,
//SMPCSI DD DISP=SHR,DSN=IBMSMPE.OS210.GLOBAL.CSI
//SMPOUT DD SYSOUT=*
//SMPRPT DD SYSOUT=*
//SMPLIST DD SYSOUT=*
//SMPSNAP DD DUMMY
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD UNIT=SYSALLDA,SPACE=(6160,(0230,0760))
//SYSUT2 DD UNIT=SYSALLDA,SPACE=(6160,(0230,0760))
//SYSUT3 DD UNIT=SYSALLDA,SPACE=(6160,(0230,0760))
//SMPPTFIN DD DUMMY
//SMPHOLD DD DUMMY
//SMPCNTL DD *
SET BDY(MDRES1T).
APPLY CHECK GROUPEXTEND
BYPASS(HOLDSYS(ACTION,DOC,DEP,AO,DELETE))
FORFMID(HTCP320, JTCP32C, JTCP325).
/*
Research issues/ order more
service
• Review the “Causer SYSMOD Summary” report
and order/receive any missing
maintenance, identify actions to be
performed, and tailor your apply control cards
asnecessary.
•Check the File Allocation Report: know what
you are updating and make sure you have a
backup.
• Review other reports and take action as
necessary.
Apply
• Same JCL as your apply check.
• Remove “CHECK” from the control cards.
• Review all reports and make sure you know
what was updated.
– Did you notice the GLOBAL CSI is updated?
• Consider doing another backup.
• Test, Test, and test.
Accept
//STEP001 EXEC PGM=GIMSMP,REGION=6M,
//SMPCSI DD DISP=SHR,DSN=IBMSMPE.OS210.GLOBAL.CSI
//SMPOUT DD SYSOUT=*
//SMPRPT DD SYSOUT=*
//SMPLIST DD SYSOUT=*
//SMPSNAP DD DUMMY
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD UNIT=SYSALLDA,SPACE=(6160,(0230,0760))
//SYSUT2 DD UNIT=SYSALLDA,SPACE=(6160,(0230,0760))
//SYSUT3 DD UNIT=SYSALLDA,SPACE=(6160,(0230,0760))
//SMPPTFIN DD DUMMY
//SMPHOLD DD DUMMY
//SMPCNTL DD *
SET BDY(MDRES1D).
ACCEPT CHECK GROUPEXTEND
BYPASS(HOLDSYS(ACTION,DOC,DEP,AO,DELETE))
FORFMID(
SYSMOD format
++ PTF (UY50707) /* 5665-28445-HDP3320-
//UY50707 JOB 5665-50707-0,28445,MSGLEVEL=(1,1),CLASS=A */ .
++ VER (Z038)
FMID(HDP3320)
PRE (UY44382)
SUP (UY43696,AY27240,AY27237,AY24733)
/*
( DOCUMENTATION FOR THE PTF IS INSERTED HERE. )
*/.
++ HOLD(UY50707) SYS FMID(HDP3320) REASON(DELETE) DATE(90146)
COMMENT
(THIS PTF CONTAINS A ++DELETE MCS FOR THE FOLLOWING LMOD: IEBCOPY
SMP/E WILL NOT RESTORE THIS PTF.).
++DELETE IEBCOPY
SYSLIB(LINKLIB).
SYSMOD format
++ JCLIN .
//SYSGEN0 JOB 1,'SYSTEM GENERATION',
// MSGLEVEL=1,MSGCLASS=A,
// CLASS=A
//SG22 EXEC LINKS,
// PARM='NCAL,LIST,XREF',
// UNIT='3380',SER=SYSRES,N=SYSX,NAME=LINKLIB,P1=' ',
// MOD=,P2=' ',OBJ=MACLIB,CLASS=A
//AOSU0 DD DISP=SHR,VOLUME=(,RETAIN),DSNAME=SYS1.AOSU0
//SYSLIN DD *
INCLUDE AOSU0(IEBCFAMS)
INCLUDE AOSU0(IEBCMSG)
INCLUDE AOSU0(IEBCNVT)
Did I really do that?
Did you do something you wish you hadn’t?
– You did have a backup, right?
– If you accepted something you need a non-
SMP/E restore.
– If you applied something, do you want SMP/E
to RESTORE it?
– Did you receive something you don’t want -
REJECT it.
SMP/E Restore
//STEP001 EXEC PGM=GIMSMP,REGION=6M,
// PARM='PROCESS=WAIT',DYNAMNBR=120
//SMPCSI DD DISP=SHR,DSN=IBMSMPE.OS210.GLOBAL.CSI
//SMPOUT DD SYSOUT=*
//SMPRPT DD SYSOUT=*
//SMPLIST DD SYSOUT=*
//SMPSNAP DD DUMMY
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD UNIT=SYSALLDA,SPACE=(6160,(0230,0760))
//SYSUT2 DD UNIT=SYSALLDA,SPACE=(6160,(0230,0760))
//SYSUT3 DD UNIT=SYSALLDA,SPACE=(6160,(0230,0760))
//SMPPTFIN DD DUMMY
//SMPHOLD DD DUMMY
//SMPCNTL DD *
SET BDY(MDRES1T).
RESTORE CHECK
S(UZ98456).
/*
Restore gotchas!
• You will regress back to the last accepted
levelset.
• You must select every applied but not
accepted sysmod.
• No guarantee an apply can get you back to
where you started from. New HOLDDATA may
prevent some sysmods from being applied in
your current environment.
Reject
• Used mostly to cleanup the SMPMTS.
• If you have room, don’t bother.
• May have to reject a sysmod to receive it
properly.
– Damaged during download and you did not
notice it.
– On usermods, consider updating the REWORK
value instead.
Namaskara!
• Thank you for not asking too many
questions!!!!!!!!!!! 

More Related Content

What's hot

A DBA’s guide to using TSA
A DBA’s guide to using TSAA DBA’s guide to using TSA
A DBA’s guide to using TSAFrederik Engelen
 
Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...
Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...
Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...Beat Signer
 
Sql(structured query language)
Sql(structured query language)Sql(structured query language)
Sql(structured query language)Ishucs
 
Apache Spark Introduction and Resilient Distributed Dataset basics and deep dive
Apache Spark Introduction and Resilient Distributed Dataset basics and deep diveApache Spark Introduction and Resilient Distributed Dataset basics and deep dive
Apache Spark Introduction and Resilient Distributed Dataset basics and deep diveSachin Aggarwal
 
NETWORK FILE SYSTEM
NETWORK FILE SYSTEMNETWORK FILE SYSTEM
NETWORK FILE SYSTEMRoshan Kumar
 
Apache Spark overview
Apache Spark overviewApache Spark overview
Apache Spark overviewDataArt
 
100 COOL MAINFRAME TIPS
100 COOL MAINFRAME TIPS100 COOL MAINFRAME TIPS
100 COOL MAINFRAME TIPSNirmal Pati
 
Data Source API in Spark
Data Source API in SparkData Source API in Spark
Data Source API in SparkDatabricks
 
How To Connect Spark To Your Own Datasource
How To Connect Spark To Your Own DatasourceHow To Connect Spark To Your Own Datasource
How To Connect Spark To Your Own DatasourceMongoDB
 

What's hot (20)

GDPS and System Complex
GDPS and System ComplexGDPS and System Complex
GDPS and System Complex
 
A DBA’s guide to using TSA
A DBA’s guide to using TSAA DBA’s guide to using TSA
A DBA’s guide to using TSA
 
MySQL Operators
MySQL OperatorsMySQL Operators
MySQL Operators
 
Ipl process
Ipl processIpl process
Ipl process
 
Tso and ispf
Tso and ispfTso and ispf
Tso and ispf
 
Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...
Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...
Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...
 
Chapter 4 Structured Query Language
Chapter 4 Structured Query LanguageChapter 4 Structured Query Language
Chapter 4 Structured Query Language
 
Sql(structured query language)
Sql(structured query language)Sql(structured query language)
Sql(structured query language)
 
SKILLWISE-DB2 DBA
SKILLWISE-DB2 DBASKILLWISE-DB2 DBA
SKILLWISE-DB2 DBA
 
Linux commands
Linux commands Linux commands
Linux commands
 
Apache Spark Introduction and Resilient Distributed Dataset basics and deep dive
Apache Spark Introduction and Resilient Distributed Dataset basics and deep diveApache Spark Introduction and Resilient Distributed Dataset basics and deep dive
Apache Spark Introduction and Resilient Distributed Dataset basics and deep dive
 
NETWORK FILE SYSTEM
NETWORK FILE SYSTEMNETWORK FILE SYSTEM
NETWORK FILE SYSTEM
 
Apache Spark overview
Apache Spark overviewApache Spark overview
Apache Spark overview
 
Basic SQL and History
 Basic SQL and History Basic SQL and History
Basic SQL and History
 
Mysql database
Mysql databaseMysql database
Mysql database
 
100 COOL MAINFRAME TIPS
100 COOL MAINFRAME TIPS100 COOL MAINFRAME TIPS
100 COOL MAINFRAME TIPS
 
Data Source API in Spark
Data Source API in SparkData Source API in Spark
Data Source API in Spark
 
What is a DATA DICTIONARY?
What is a DATA DICTIONARY?What is a DATA DICTIONARY?
What is a DATA DICTIONARY?
 
How To Connect Spark To Your Own Datasource
How To Connect Spark To Your Own DatasourceHow To Connect Spark To Your Own Datasource
How To Connect Spark To Your Own Datasource
 
Mainframe
MainframeMainframe
Mainframe
 

Similar to Smpe

Finer Things Club - Lesser known zOSMF SW Mgmt Functions.pdf
Finer Things Club - Lesser known zOSMF SW Mgmt Functions.pdfFiner Things Club - Lesser known zOSMF SW Mgmt Functions.pdf
Finer Things Club - Lesser known zOSMF SW Mgmt Functions.pdfMarna Walle
 
A Different Way to Perform zOS Maintenance.pdf
A Different Way to Perform zOS Maintenance.pdfA Different Way to Perform zOS Maintenance.pdf
A Different Way to Perform zOS Maintenance.pdfFernandogetson
 
KoprowskiT_PASSEastMidsFEB16_2AMaDisasterJustBegan
KoprowskiT_PASSEastMidsFEB16_2AMaDisasterJustBeganKoprowskiT_PASSEastMidsFEB16_2AMaDisasterJustBegan
KoprowskiT_PASSEastMidsFEB16_2AMaDisasterJustBeganTobias Koprowski
 
Adop and maintenance task presentation 151015
Adop and maintenance task presentation 151015Adop and maintenance task presentation 151015
Adop and maintenance task presentation 151015andreas kuncoro
 
AIX Advanced Administration Knowledge Share
AIX Advanced Administration Knowledge ShareAIX Advanced Administration Knowledge Share
AIX Advanced Administration Knowledge Share.Gastón. .Bx.
 
E business suite r12.2 changes for database administrators
E business suite r12.2 changes for database administratorsE business suite r12.2 changes for database administrators
E business suite r12.2 changes for database administratorsSrinivasa Pavan Marti
 
E business suite r12.2 changes for database administrators
E business suite r12.2 changes for database administratorsE business suite r12.2 changes for database administrators
E business suite r12.2 changes for database administratorsSrinivasa Pavan Marti
 
Future of Power: IBM Power - Lars Johanneson
Future of Power: IBM Power - Lars JohannesonFuture of Power: IBM Power - Lars Johanneson
Future of Power: IBM Power - Lars JohannesonIBM Danmark
 
Anatomy of Autoconfig in Oracle E-Business Suite
Anatomy of Autoconfig in Oracle E-Business SuiteAnatomy of Autoconfig in Oracle E-Business Suite
Anatomy of Autoconfig in Oracle E-Business Suitevasuballa
 
Staged Patching Approach in Oracle E-Business Suite
Staged Patching Approach in Oracle E-Business SuiteStaged Patching Approach in Oracle E-Business Suite
Staged Patching Approach in Oracle E-Business Suitevasuballa
 
Fusion Applications Administration Overview
Fusion Applications Administration OverviewFusion Applications Administration Overview
Fusion Applications Administration OverviewVihangAstik
 
Oracle EBS Production Support - Recommendations
Oracle EBS Production Support - RecommendationsOracle EBS Production Support - Recommendations
Oracle EBS Production Support - RecommendationsVigilant Technologies
 
UGIF 12 2010 - features11.70
UGIF 12 2010 - features11.70UGIF 12 2010 - features11.70
UGIF 12 2010 - features11.70UGIF
 
Informix User Group France - 30/11/2010 - Fonctionalités IDS 11.7
Informix User Group France - 30/11/2010 - Fonctionalités IDS 11.7Informix User Group France - 30/11/2010 - Fonctionalités IDS 11.7
Informix User Group France - 30/11/2010 - Fonctionalités IDS 11.7Nicolas Desachy
 
Practical advice on deployment and management of enterprise workloads
Practical advice on deployment and management of enterprise workloadsPractical advice on deployment and management of enterprise workloads
Practical advice on deployment and management of enterprise workloadsJarek Miszczyk
 
ODTUG KSCOPE 2017 - Black Belt Techniques for FDMEE and Cloud Data Management
ODTUG KSCOPE 2017 - Black Belt Techniques for FDMEE and Cloud Data ManagementODTUG KSCOPE 2017 - Black Belt Techniques for FDMEE and Cloud Data Management
ODTUG KSCOPE 2017 - Black Belt Techniques for FDMEE and Cloud Data ManagementFrancisco Amores
 
Best practices in Deploying SUSE CaaS Platform v3
Best practices in Deploying SUSE CaaS Platform v3Best practices in Deploying SUSE CaaS Platform v3
Best practices in Deploying SUSE CaaS Platform v3Juan Herrera Utande
 
Apama, Terracotta, webMethods Upgrade: Avoiding Common Pitfalls
Apama, Terracotta, webMethods Upgrade: Avoiding Common Pitfalls Apama, Terracotta, webMethods Upgrade: Avoiding Common Pitfalls
Apama, Terracotta, webMethods Upgrade: Avoiding Common Pitfalls Software AG
 

Similar to Smpe (20)

Finer Things Club - Lesser known zOSMF SW Mgmt Functions.pdf
Finer Things Club - Lesser known zOSMF SW Mgmt Functions.pdfFiner Things Club - Lesser known zOSMF SW Mgmt Functions.pdf
Finer Things Club - Lesser known zOSMF SW Mgmt Functions.pdf
 
A Different Way to Perform zOS Maintenance.pdf
A Different Way to Perform zOS Maintenance.pdfA Different Way to Perform zOS Maintenance.pdf
A Different Way to Perform zOS Maintenance.pdf
 
KoprowskiT_PASSEastMidsFEB16_2AMaDisasterJustBegan
KoprowskiT_PASSEastMidsFEB16_2AMaDisasterJustBeganKoprowskiT_PASSEastMidsFEB16_2AMaDisasterJustBegan
KoprowskiT_PASSEastMidsFEB16_2AMaDisasterJustBegan
 
Adop and maintenance task presentation 151015
Adop and maintenance task presentation 151015Adop and maintenance task presentation 151015
Adop and maintenance task presentation 151015
 
FDMEE Custom Reports
FDMEE Custom ReportsFDMEE Custom Reports
FDMEE Custom Reports
 
AIX Advanced Administration Knowledge Share
AIX Advanced Administration Knowledge ShareAIX Advanced Administration Knowledge Share
AIX Advanced Administration Knowledge Share
 
E business suite r12.2 changes for database administrators
E business suite r12.2 changes for database administratorsE business suite r12.2 changes for database administrators
E business suite r12.2 changes for database administrators
 
E business suite r12.2 changes for database administrators
E business suite r12.2 changes for database administratorsE business suite r12.2 changes for database administrators
E business suite r12.2 changes for database administrators
 
Future of Power: IBM Power - Lars Johanneson
Future of Power: IBM Power - Lars JohannesonFuture of Power: IBM Power - Lars Johanneson
Future of Power: IBM Power - Lars Johanneson
 
Anatomy of Autoconfig in Oracle E-Business Suite
Anatomy of Autoconfig in Oracle E-Business SuiteAnatomy of Autoconfig in Oracle E-Business Suite
Anatomy of Autoconfig in Oracle E-Business Suite
 
Staged Patching Approach in Oracle E-Business Suite
Staged Patching Approach in Oracle E-Business SuiteStaged Patching Approach in Oracle E-Business Suite
Staged Patching Approach in Oracle E-Business Suite
 
Fusion Applications Administration Overview
Fusion Applications Administration OverviewFusion Applications Administration Overview
Fusion Applications Administration Overview
 
Oracle EBS Production Support - Recommendations
Oracle EBS Production Support - RecommendationsOracle EBS Production Support - Recommendations
Oracle EBS Production Support - Recommendations
 
UGIF 12 2010 - features11.70
UGIF 12 2010 - features11.70UGIF 12 2010 - features11.70
UGIF 12 2010 - features11.70
 
Informix User Group France - 30/11/2010 - Fonctionalités IDS 11.7
Informix User Group France - 30/11/2010 - Fonctionalités IDS 11.7Informix User Group France - 30/11/2010 - Fonctionalités IDS 11.7
Informix User Group France - 30/11/2010 - Fonctionalités IDS 11.7
 
Practical advice on deployment and management of enterprise workloads
Practical advice on deployment and management of enterprise workloadsPractical advice on deployment and management of enterprise workloads
Practical advice on deployment and management of enterprise workloads
 
ODTUG KSCOPE 2017 - Black Belt Techniques for FDMEE and Cloud Data Management
ODTUG KSCOPE 2017 - Black Belt Techniques for FDMEE and Cloud Data ManagementODTUG KSCOPE 2017 - Black Belt Techniques for FDMEE and Cloud Data Management
ODTUG KSCOPE 2017 - Black Belt Techniques for FDMEE and Cloud Data Management
 
01 oracle architecture
01 oracle architecture01 oracle architecture
01 oracle architecture
 
Best practices in Deploying SUSE CaaS Platform v3
Best practices in Deploying SUSE CaaS Platform v3Best practices in Deploying SUSE CaaS Platform v3
Best practices in Deploying SUSE CaaS Platform v3
 
Apama, Terracotta, webMethods Upgrade: Avoiding Common Pitfalls
Apama, Terracotta, webMethods Upgrade: Avoiding Common Pitfalls Apama, Terracotta, webMethods Upgrade: Avoiding Common Pitfalls
Apama, Terracotta, webMethods Upgrade: Avoiding Common Pitfalls
 

Smpe

  • 1. SMP/E • • Who is this session for? • • What is SMP/E? • • Why would you use it? • • Where does it fit in? • • An SMP/E environment. • • Terminology • • Process Flow
  • 2. Who is this session for? • If you are new to maintaining software on the mainframe and want to understand what magic is happening under the covers of • • Hear the buzzwords, get the scoop on the lingo, see the structures, and learn the steps to use SMP/E to keep your mainframe humming.
  • 3. What is SMP/E? • SMP/E is the basic tool for installing and maintaining software in z/OS systems and subsystems. It controls these changes at the element level by: • Selecting the proper levels of elements to be installed from a large number of potential changes • Calling system utility programs to install the changes • Keeping records of the installed changes
  • 4. Why would you use it? • • The product is delivered in this format • • Upgrade a product • • Fix a problem with a product • • Track an installation defined change
  • 5. Where does it fit in? • The “mainframe” platform. • MVS” environment aka OS/390, z/OS. Not VM. Not Linux. • Other Independent Software Vendors (ISV) products. • ISPF based dialog and Batch jobs.
  • 6. An SMP/E environment - zones • Global Zone – Waiting to be installed • Target Zone – Runnable copy • Distribution Zone – Source – Backup
  • 7. SMP/E components - Global Structure • CSI - Consolidated Software Inventory – Describes Target and Distributions zones – Processing options – Status of work in progress – Exception data (hold for user acknowledgement) • Libraries (DDDEFs) – SMPPTS – Logs
  • 8. SMP/E components - Target Structure • CSI - Consolidated Software Inventory – Describes executables • Libraries (DDDEFs) – Run-time (Product specific) – SMP Temporary Store (SMPMTS, SMPSTS, …) – Logs
  • 9. SMP/E components - Distribution Structure • CSI - Consolidated Software Inventory – Describes modules (programs and subroutines) • Libraries (DDDEFs) – Samples – Other text members – Logs
  • 10. SMP/E - packaging parts • Function - A product identified by a unique FMID, a logical group of elements. – FMID - Function Modification IDentifier is a SYSMOD id assigned to a function. • SYSMOD id - Identifier assigned to a SYStem MODification. – SYSMOD - input to SMP/E that defines the action to take on one or more elements. • Element - a single part of a product; a unique member of a PDS(E) or file in an HFS. • Program Temporary Fix (PTF) - a SYSMOD that changes one or more elements. • USERMOD - your modification to a vendor supplied element.
  • 11. SMP/E - packaging parts • Authorized Program Analysis Report (APAR) - a temporary fix released before a PTF is packaged. • Replacement Modification IDentifier (RMID) - used to identify a SYSMOD that completely replaced an element. • Updated Modification IDentifier (UMID) - used to identify a SYSMOD that updated the last replacement of an element. • COnditional REQuisite (COREQ) - identifies SYSMODs that can only be installed correctly if both go on. • PRE REQuisite (PREREQ) - identifies SYSMOD(s) that must have been installed previously. • Negative PRErequisite (NPRE) - mutually exclusive PREREQ.
  • 12. SMP/E - processing terms • Receive - makes known to the GLOBAL CSI. – Similar to unzipping a pc based program and “cab” files that are used to install a product. • Apply - makes known to the TARGET CSI. – Builds and copies the elements used to run the product. • Accept - makes known to the DISTRIBUTION CSI. – Copies elements to the backup libraries. • Reject - tells the GLOBAL zone to forget about it. • Restore - Rebuilds the Target version from what has been accepted. Similar to ctrl-z or “undo”.
  • 13. SMP/E - distribution methods • ServerPac - a complete set of products with applied maintenance. • CUM tape - cumulative service release between a span of time. • Product tape - a product at its base level. • CBPDO - a custom built product delivery option. This tape contains one ore more products at their base level plus all maintenance released. • SUF - service upgrade facility is a java web based internet application that can retrieve APARs and PTFs ensuring all required maintenance is also received in your Global zone. • ICSF - Internet Product/Maintenance Retrieval. • FTP - service from Boulder.
  • 14. Process Flow • Build environment • Receive • Apply • Test • Accept • Other backup
  • 15. Where’s your backup? • Physical volume(s) • Logical data set • SMP/E distribution libraries • SMP/E Zone(s) – Global – Target – Distribution
  • 16. What do I order? • ServerPac – System replacement • CBPDO – Product upgrade • Service – PTF and/or APAR
  • 17. Where do I begin? • Backup • Read the doc • Receive the files • Backup • Read more doc • Apply check • Research issues/Order more service • Apply • Backup • Accept check • Accept • Backup
  • 18. Backup • Make sure you have a backup, outside of SMP/E – Take a data set level backup of the global datasets, the target zone data sets, and the distribution zone data sets. – Coordinate with others who might be using these data sets. – Consider IPL volumes, HFS data sets, other run- time datasets.
  • 19. Read the doc • Follow the directions as they apply to your installation. • Take note of any actions that need to be done. • Coordinate with other areas. • Develop your plan for testing and implementing.
  • 20. Receive the files • GLOBAL processing. – Use ZONEGROUP to exclude receiving items already processed. //STEP001 EXEC PGM=GIMSMP,REGION=6M //SMPCSI DD DISP=SHR,DSN=IBMSMPE.OS210.GLOBAL.CSI //SMPPTFIN DD DISP=SHR,DSN=MYUSERID.MPTF4414.UNPACKED //SMPHOLD DD DUMMY //SMPCNTL DD * SET BDY(GLOBAL) . RECEIVE SOURCEID(FTPHANG) ZONEGROUP(ALLZONES). /*
  • 21. Apply check //STEP001 EXEC PGM=GIMSMP,REGION=6M, //SMPCSI DD DISP=SHR,DSN=IBMSMPE.OS210.GLOBAL.CSI //SMPOUT DD SYSOUT=* //SMPRPT DD SYSOUT=* //SMPLIST DD SYSOUT=* //SMPSNAP DD DUMMY //SYSPRINT DD SYSOUT=* //SYSUT1 DD UNIT=SYSALLDA,SPACE=(6160,(0230,0760)) //SYSUT2 DD UNIT=SYSALLDA,SPACE=(6160,(0230,0760)) //SYSUT3 DD UNIT=SYSALLDA,SPACE=(6160,(0230,0760)) //SMPPTFIN DD DUMMY //SMPHOLD DD DUMMY //SMPCNTL DD * SET BDY(MDRES1T). APPLY CHECK GROUPEXTEND BYPASS(HOLDSYS(ACTION,DOC,DEP,AO,DELETE)) FORFMID(HTCP320, JTCP32C, JTCP325). /*
  • 22. Research issues/ order more service • Review the “Causer SYSMOD Summary” report and order/receive any missing maintenance, identify actions to be performed, and tailor your apply control cards asnecessary. •Check the File Allocation Report: know what you are updating and make sure you have a backup. • Review other reports and take action as necessary.
  • 23. Apply • Same JCL as your apply check. • Remove “CHECK” from the control cards. • Review all reports and make sure you know what was updated. – Did you notice the GLOBAL CSI is updated? • Consider doing another backup. • Test, Test, and test.
  • 24. Accept //STEP001 EXEC PGM=GIMSMP,REGION=6M, //SMPCSI DD DISP=SHR,DSN=IBMSMPE.OS210.GLOBAL.CSI //SMPOUT DD SYSOUT=* //SMPRPT DD SYSOUT=* //SMPLIST DD SYSOUT=* //SMPSNAP DD DUMMY //SYSPRINT DD SYSOUT=* //SYSUT1 DD UNIT=SYSALLDA,SPACE=(6160,(0230,0760)) //SYSUT2 DD UNIT=SYSALLDA,SPACE=(6160,(0230,0760)) //SYSUT3 DD UNIT=SYSALLDA,SPACE=(6160,(0230,0760)) //SMPPTFIN DD DUMMY //SMPHOLD DD DUMMY //SMPCNTL DD * SET BDY(MDRES1D). ACCEPT CHECK GROUPEXTEND BYPASS(HOLDSYS(ACTION,DOC,DEP,AO,DELETE)) FORFMID(
  • 25. SYSMOD format ++ PTF (UY50707) /* 5665-28445-HDP3320- //UY50707 JOB 5665-50707-0,28445,MSGLEVEL=(1,1),CLASS=A */ . ++ VER (Z038) FMID(HDP3320) PRE (UY44382) SUP (UY43696,AY27240,AY27237,AY24733) /* ( DOCUMENTATION FOR THE PTF IS INSERTED HERE. ) */. ++ HOLD(UY50707) SYS FMID(HDP3320) REASON(DELETE) DATE(90146) COMMENT (THIS PTF CONTAINS A ++DELETE MCS FOR THE FOLLOWING LMOD: IEBCOPY SMP/E WILL NOT RESTORE THIS PTF.). ++DELETE IEBCOPY SYSLIB(LINKLIB).
  • 26. SYSMOD format ++ JCLIN . //SYSGEN0 JOB 1,'SYSTEM GENERATION', // MSGLEVEL=1,MSGCLASS=A, // CLASS=A //SG22 EXEC LINKS, // PARM='NCAL,LIST,XREF', // UNIT='3380',SER=SYSRES,N=SYSX,NAME=LINKLIB,P1=' ', // MOD=,P2=' ',OBJ=MACLIB,CLASS=A //AOSU0 DD DISP=SHR,VOLUME=(,RETAIN),DSNAME=SYS1.AOSU0 //SYSLIN DD * INCLUDE AOSU0(IEBCFAMS) INCLUDE AOSU0(IEBCMSG) INCLUDE AOSU0(IEBCNVT)
  • 27. Did I really do that? Did you do something you wish you hadn’t? – You did have a backup, right? – If you accepted something you need a non- SMP/E restore. – If you applied something, do you want SMP/E to RESTORE it? – Did you receive something you don’t want - REJECT it.
  • 28. SMP/E Restore //STEP001 EXEC PGM=GIMSMP,REGION=6M, // PARM='PROCESS=WAIT',DYNAMNBR=120 //SMPCSI DD DISP=SHR,DSN=IBMSMPE.OS210.GLOBAL.CSI //SMPOUT DD SYSOUT=* //SMPRPT DD SYSOUT=* //SMPLIST DD SYSOUT=* //SMPSNAP DD DUMMY //SYSPRINT DD SYSOUT=* //SYSUT1 DD UNIT=SYSALLDA,SPACE=(6160,(0230,0760)) //SYSUT2 DD UNIT=SYSALLDA,SPACE=(6160,(0230,0760)) //SYSUT3 DD UNIT=SYSALLDA,SPACE=(6160,(0230,0760)) //SMPPTFIN DD DUMMY //SMPHOLD DD DUMMY //SMPCNTL DD * SET BDY(MDRES1T). RESTORE CHECK S(UZ98456). /*
  • 29. Restore gotchas! • You will regress back to the last accepted levelset. • You must select every applied but not accepted sysmod. • No guarantee an apply can get you back to where you started from. New HOLDDATA may prevent some sysmods from being applied in your current environment.
  • 30. Reject • Used mostly to cleanup the SMPMTS. • If you have room, don’t bother. • May have to reject a sysmod to receive it properly. – Damaged during download and you did not notice it. – On usermods, consider updating the REWORK value instead.
  • 31. Namaskara! • Thank you for not asking too many questions!!!!!!!!!!! 