z exchange csvfetch exit-3-24-2016mar 24, 2016  · db2* dfsms dfsmsdfp dfsmsdss flashcopy* gdps*...

15
z Exchange CSVFETCH exit in z/OS V2R2 Peter Relson, [email protected] z/OS Core Technology Design IBM z Systems, Poughkeepsie NY USA Friday, March 18, 2016

Upload: others

Post on 13-Jul-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: z Exchange CSVFETCH exit-3-24-2016Mar 24, 2016  · DB2* DFSMS DFSMSdfp DFSMSdss FlashCopy* GDPS* HiperSockets HyperSwap* HyperWrite IBM* RACF* REXX RMF System z9* System z10 Tivoli*

z ExchangeCSVFETCH exit in z/OS V2R2Peter Relson, [email protected]/OS Core Technology DesignIBM z Systems, Poughkeepsie NY USA

Friday, March 18, 2016

Page 2: z Exchange CSVFETCH exit-3-24-2016Mar 24, 2016  · DB2* DFSMS DFSMSdfp DFSMSdss FlashCopy* GDPS* HiperSockets HyperSwap* HyperWrite IBM* RACF* REXX RMF System z9* System z10 Tivoli*

© 2012, 2015 IBM Corporation© 2016 IBM Corporation 2

ThefollowingaretrademarksoftheInternationalBusinessMachinesCorporationintheUnitedStatesand/orothercountries.

2

Notes:

Performance isinInternalThroughputRate(ITR)ratiobasedonmeasurementsandprojectionsusingstandardIBMbenchmarksin acontrolledenvironment.Theactualthroughputthatanyuserwillexperiencewillvarydependinguponconsiderationssuchastheamountofmultiprogrammingintheuser'sjobstream,theI/Oconfiguration,thestorageconfiguration,andtheworkloadprocessed.Therefore,noassurancecanbegiventhatanindividualuserwillachievethroughputimprovementsequivalenttotheperformanceratiosstatedhere.

IBMhardwareproductsaremanufacturedfromnewparts,ornewandserviceableusedparts.Regardless,ourwarrantytermsapply.

AllcustomerexamplescitedordescribedinthispresentationarepresentedasillustrationsofthemannerinwhichsomecustomershaveusedIBMproductsandtheresultstheymayhaveachieved.Actualenvironmentalcostsandperformancecharacteristics willvarydependingonindividualcustomerconfigurationsandconditions.

ThispublicationwasproducedintheUnitedStates.IBMmaynotoffertheproducts,servicesorfeaturesdiscussedinthisdocumentinothercountries,andtheinformationmaybesubjecttochangewithoutnotice.ConsultyourlocalIBMbusinesscontactforinformationontheproductorservicesavailableinyourarea.

Allstatementsregarding IBM'sfuturedirectionandintentaresubjecttochangeorwithdrawalwithoutnotice,andrepresentgoalsandobjectivesonly.

Informationaboutnon-IBMproductsisobtainedfromthemanufacturersofthoseproductsortheirpublishedannouncements.IBMhasnottestedthoseproductsandcannotconfirmtheperformance,compatibility,oranyotherclaimsrelatedtonon-IBMproducts.Questionsonthecapabilitiesofnon-IBMproductsshouldbeaddressedtothesuppliersofthoseproducts.

Pricessubjecttochangewithoutnotice.ContactyourIBMrepresentativeorBusinessPartnerforthemostcurrentpricinginyourgeography.

Thisinformationprovidesonlygeneraldescriptionsofthetypesandportionsofworkloadsthatareeligibleforexecutionon SpecialtyEngines(e.g,zIIPs,zAAPs,andIFLs)("SEs").IBMauthorizescustomerstouseIBMSEonlytoexecutetheprocessingofEligibleWorkloadsofspecificProgramsexpresslyauthorizedbyIBMasspecifiedinthe“AuthorizedUseTableforIBMMachines”providedatwww.ibm.com/systems/support/machine_warranties/machine_code/aut.html(“AUT”).NootherworkloadprocessingisauthorizedforexecutiononanSE.IBMoffersSEatalowerpricethanGeneralProcessors/CentralProcessorsbecausecustomersareauthorizedtouseSEsonlytoprocesscertaintypesand/oramountsofworkloadsasspecifiedbyIBMintheAUT.

*Registered trademarks ofIBMCorporationThefollowingaretrademarks orregistered trademarks ofothercompanies.

*OtherproductandservicenamesmightbetrademarksofIBMorothercompanies.

Adobe,theAdobelogo,PostScript,andthePostScriptlogoareeitherregistered trademarks ortrademarks ofAdobeSystemsIncorporatedintheUnitedStates,and/orothercountries.CellBroadbandEngineisatrademarkofSonyComputerEntertainment,Inc.intheUnitedStates,othercountries,orbothandisusedunderlicensetherefrom.Intel,Intellogo,IntelInside,IntelInsidelogo,IntelCentrino,IntelCentrinologo,Celeron,IntelXeon,IntelSpeedStep,Itanium,andPentiumaretrademarksorregistered trademarks ofIntelCorporationoritssubsidiariesintheUnitedStates andothercountries.ITInfrastructure Libraryisaregistered trademark oftheCentralComputerandTelecommunicationsAgencywhichisnowpartoftheOfficeofGovernmentCommerce.

ITILisaregisteredtrademark, andaregistered communitytrademarkoftheOfficeofGovernmentCommerce,andisregisteredintheU.S.PatentandTrademarkOffice.Java andallJavabasedtrademarksandlogosaretrademarksorregistered trademarks ofOracleand/oritsaffiliates.LinearTape-Open,LTO,theLTOLogo,Ultrium,andtheUltriumlogoaretrademarksofHP,IBMCorp.andQuantumintheU.S.and

Linuxisaregisteredtrademark ofLinusTorvaldsintheUnitedStates,othercountries,orboth.Microsoft,Windows,WindowsNT,andtheWindowslogoaretrademarksofMicrosoftCorporationintheUnitedStates,othercountries,orboth.

OpenStackisatrademark ofOpenStackLLC.TheOpenStacktrademarkpolicyisavailableontheOpenStackwebsite.TEALEAF isaregistered trademark ofTealeaf, anIBMCompany.WindowsServerandtheWindowslogoaretrademarksoftheMicrosoftgroupofcountries.

Worklightisatrademarkorregistered trademark ofWorklight,anIBMCompany.UNIXisaregisteredtrademark ofTheOpenGroupintheUnitedStatesandothercountries.

VISAisaregisteredtrademark ofVisa,Inc.

CICS*CICSExplorerDB2*DFSMSDFSMSdfpDFSMSdss

FlashCopy*GDPS*HiperSocketsHyperSwap*HyperWriteIBM*

RACF*REXXRMFSystemz9*Systemz10Tivoli*

DFSMShsmDFSMSrmmDFSORTDS8000*EasyTier*FICON*

IBMlogo*Infoprint*LanguageEnvironment*NetView*ParallelSysplex*PrintWay*

WebSphere*z10BCz10ECz13z/Architecture*

TrademarkszEnterprise*zSystemsz/OS*

Page 3: z Exchange CSVFETCH exit-3-24-2016Mar 24, 2016  · DB2* DFSMS DFSMSdfp DFSMSdss FlashCopy* GDPS* HiperSockets HyperSwap* HyperWrite IBM* RACF* REXX RMF System z9* System z10 Tivoli*

© 2012, 2015 IBM Corporation© 2016 IBM Corporation 3

CSVFETCH exitl Introducedinz/OS2.2l Fetchandunfetcheventsl Flexibilityforexitroutinetoindicateforwhicheventstogetcontrol

l Supportedbythedynamicexitfacilityl Primarilyintendedforusebymonitorproductssothattheydonothaveto“hook”theoperatingsystem.Notlimitedtothatusecase.

Page 4: z Exchange CSVFETCH exit-3-24-2016Mar 24, 2016  · DB2* DFSMS DFSMSdfp DFSMSdss FlashCopy* GDPS* HiperSockets HyperSwap* HyperWrite IBM* RACF* REXX RMF System z9* System z10 Tivoli*

© 2012, 2015 IBM Corporation© 2016 IBM Corporation 4

Considerationsl Performancel Doaslittleaspossiblel Theexitroutinecouldadverselyaffecttheperformanceofthesystemduetofrequencyandlocallockcontention

Page 5: z Exchange CSVFETCH exit-3-24-2016Mar 24, 2016  · DB2* DFSMS DFSMSdfp DFSMSdss FlashCopy* GDPS* HiperSockets HyperSwap* HyperWrite IBM* RACF* REXX RMF System z9* System z10 Tivoli*

© 2012, 2015 IBM Corporation© 2016 IBM Corporation 5

CSVFETCH events (fetch)

Forfetchevents,theexitiscalledafterthefetchl Fetch_GetStore(X'00000001_00000000') – firstload,storageisobtained

l Fetch_JPQ(X'00000002_00000000') – secondaryload,foundonjobpackqueue

l Unix_GetStore(X'00000004_00000000') – firstload,storageisobtained

l Unix_JPQ(X'00000008_00000000') – secondaryload,foundonjobpackqueue

Page 6: z Exchange CSVFETCH exit-3-24-2016Mar 24, 2016  · DB2* DFSMS DFSMSdfp DFSMSdss FlashCopy* GDPS* HiperSockets HyperSwap* HyperWrite IBM* RACF* REXX RMF System z9* System z10 Tivoli*

© 2012, 2015 IBM Corporation© 2016 IBM Corporation 6

CSVFETCH events (fetch)

l Fetch_LPA (X'00000010_00000000') – fetchedfromLPA

l Fetch_DirLoad (X'00000020_00000000') – LoadwithAddress(AKA“directedload”)

l Unix_DirLoad (X'00000040_00000000') – UnixdirectedloadviaBPX1LDX/BPX4LDX

l Fork(X'00000080_00000000') – modulecreatedforfork

Page 7: z Exchange CSVFETCH exit-3-24-2016Mar 24, 2016  · DB2* DFSMS DFSMSdfp DFSMSdss FlashCopy* GDPS* HiperSockets HyperSwap* HyperWrite IBM* RACF* REXX RMF System z9* System z10 Tivoli*

© 2012, 2015 IBM Corporation© 2016 IBM Corporation 7

CSVFETCH events (unfetch)

Forunfetchevents,theexitiscalledbeforetheunfetchl Unfetch_FreeStore(X'00000000_00000001')l Unfetch_NoFree(X'00000000_00000002')l Unfetch_LPA(X'00000000_00000010')

Page 8: z Exchange CSVFETCH exit-3-24-2016Mar 24, 2016  · DB2* DFSMS DFSMSdfp DFSMSdss FlashCopy* GDPS* HiperSockets HyperSwap* HyperWrite IBM* RACF* REXX RMF System z9* System z10 Tivoli*

© 2012, 2015 IBM Corporation© 2016 IBM Corporation 8

Data for fetch events

l IndicationthatitisafetcheventandtheserviceIDl ModulenameorPathnamel UCBaddressplusCCHHofthefetch(whenavailable)l AddressofCDE(maybeminorwithaddressofmajor,ormajorwithaddressofXTLST)socanlocatetheextents

l DCBaddressorindicationofLNKLSTl Otheroptionsthatmighthavebeenrequestedsuchasloadwithaddress,global=yes,global=(yes,fixed)

Page 9: z Exchange CSVFETCH exit-3-24-2016Mar 24, 2016  · DB2* DFSMS DFSMSdfp DFSMSdss FlashCopy* GDPS* HiperSockets HyperSwap* HyperWrite IBM* RACF* REXX RMF System z9* System z10 Tivoli*

© 2012, 2015 IBM Corporation© 2016 IBM Corporation 9

Data for unfetch events

l IndicationthatitisanunfetcheventandtheserviceIDl ModulenameorPathnamel AddressofCDE(canbeminorwithaddressofmajor,ormajorwithaddressofXTLST,asindicatedbybitCDMIN)

l Entrypointaddress

Page 10: z Exchange CSVFETCH exit-3-24-2016Mar 24, 2016  · DB2* DFSMS DFSMSdfp DFSMSdss FlashCopy* GDPS* HiperSockets HyperSwap* HyperWrite IBM* RACF* REXX RMF System z9* System z10 Tivoli*

© 2012, 2015 IBM Corporation© 2016 IBM Corporation 10

Identifying your exit routine

UsetheCSVDYNEXmacrotoconnectanexitroutinetothedynamicexitsprocessing.Forexample:

CSVDYNEX REQUEST=ADD, XEXITNAME=THEEXIT, X MODNAME=THEMOD

...THEEXIT DC CL16'CSVFETCH'THEMOD DC CL8'FTCHXRTN'

Theexitroutinemustbereentrant

Page 11: z Exchange CSVFETCH exit-3-24-2016Mar 24, 2016  · DB2* DFSMS DFSMSdfp DFSMSdss FlashCopy* GDPS* HiperSockets HyperSwap* HyperWrite IBM* RACF* REXX RMF System z9* System z10 Tivoli*

© 2012, 2015 IBM Corporation© 2016 IBM Corporation 11

Using ServiceMask

Identifywhichevents,bycreatingaservicemask,or'ingtogethertheserviceID's.Fornon-unixnon-LPAfetchandunfetchevents,forexample:

CSVDYNEX REQUEST=ADD, XEXITNAME=THEEXIT, X MODNAME=THEMOD, XSERVICEMASK=SM

...THEEXIT DC CL16'CSVFETCH'THEMOD DC CL8'FTCHXRTN'SM DC XL8'0000000300000003'

Page 12: z Exchange CSVFETCH exit-3-24-2016Mar 24, 2016  · DB2* DFSMS DFSMSdfp DFSMSdss FlashCopy* GDPS* HiperSockets HyperSwap* HyperWrite IBM* RACF* REXX RMF System z9* System z10 Tivoli*

© 2012, 2015 IBM Corporation© 2016 IBM Corporation 12

Exit routine environment

l Key0,supervisorstate,taskmode,enabledl AMODE31or64accordingtodynamicexitsfacilityl Primary=Home=Secondaryl LOCALlockheld(donotreleaseit!)l Alldatabelow2Gl AreamappedbymacroCSVFTCHXtoidentifytheevent

l 1024-byteworkareawhichcouldbeusedformoduledynamicstorage

Page 13: z Exchange CSVFETCH exit-3-24-2016Mar 24, 2016  · DB2* DFSMS DFSMSdfp DFSMSdss FlashCopy* GDPS* HiperSockets HyperSwap* HyperWrite IBM* RACF* REXX RMF System z9* System z10 Tivoli*

© 2012, 2015 IBM Corporation© 2016 IBM Corporation 13

Exit routine registers

OnEntry:1 – address of parameter area

- Parameter area word 0: address of area mappedby CSVFTCHX

- Parameter area word 1: address of 1024-bytework area

13 – address of 144-byte F4SA-format save area

14 – return address

15 – entry point address

OnReturn:Preserve regs 2-13

Page 14: z Exchange CSVFETCH exit-3-24-2016Mar 24, 2016  · DB2* DFSMS DFSMSdfp DFSMSdss FlashCopy* GDPS* HiperSockets HyperSwap* HyperWrite IBM* RACF* REXX RMF System z9* System z10 Tivoli*

© 2012, 2015 IBM Corporation© 2016 IBM Corporation 14

Fine Points

l Loadwithaddress:Fetchevent,nounfetcheventl LPALoadwithoutdelete:nounfetcheventl Forsystem-initiatedimplicitunfetchattaskterminationtherecouldbeoneunfetcheventcoveringallloadsofamodule

l Formemorytermination,nounfetchevents

Page 15: z Exchange CSVFETCH exit-3-24-2016Mar 24, 2016  · DB2* DFSMS DFSMSdfp DFSMSdss FlashCopy* GDPS* HiperSockets HyperSwap* HyperWrite IBM* RACF* REXX RMF System z9* System z10 Tivoli*

© 2012, 2015 IBM Corporation© 2016 IBM Corporation 15

Questions?