![大型機基礎(chǔ)9-川大計科_第1頁](http://file4.renrendoc.com/view3/M00/10/04/wKhkFmY4P4GAP7ocAAGKYhY984s159.jpg)
![大型機基礎(chǔ)9-川大計科_第2頁](http://file4.renrendoc.com/view3/M00/10/04/wKhkFmY4P4GAP7ocAAGKYhY984s1592.jpg)
![大型機基礎(chǔ)9-川大計科_第3頁](http://file4.renrendoc.com/view3/M00/10/04/wKhkFmY4P4GAP7ocAAGKYhY984s1593.jpg)
![大型機基礎(chǔ)9-川大計科_第4頁](http://file4.renrendoc.com/view3/M00/10/04/wKhkFmY4P4GAP7ocAAGKYhY984s1594.jpg)
![大型機基礎(chǔ)9-川大計科_第5頁](http://file4.renrendoc.com/view3/M00/10/04/wKhkFmY4P4GAP7ocAAGKYhY984s1595.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第九章作業(yè)控制語言內(nèi)容提要?基本概念?JCL語句?DD語句的關(guān)鍵字參數(shù)?特殊的DD語句?過程?實用程序z/OS與UNIX(1)z/OS與UNIX(2)系統(tǒng)初始化?大型主機的初始化過程包括硬件系統(tǒng)初始化和軟件系統(tǒng)初始化
?初始微程序載入(IML:InitialMicroprogramLoad)
?初始程序載入(IPL:InitialProgramLoad)?硬件系統(tǒng)的初始化
?硬件系統(tǒng)的初始化主要是硬件系統(tǒng)的加電、初始微程序載入的過程?軟件系統(tǒng)的初始化
?載入操作
?初始程序載入(IPL)
?內(nèi)核初始化
?主調(diào)度器和子系統(tǒng)初始化作業(yè)管理?z/OS操作系統(tǒng)通過JES子系統(tǒng)對系統(tǒng)中絕大多數(shù)的作業(yè)進(jìn)行控制和管理,包括從系統(tǒng)外部接收作業(yè)、對系統(tǒng)中的作業(yè)進(jìn)行調(diào)度、管理作業(yè)的輸出等?在z/OS系統(tǒng)中,我們將一個作業(yè)的生命期分為六個階段:
?輸入(Input) ?轉(zhuǎn)換(Conversion) ?運行(Processing) ?輸出(Output) ?打印(Print/Punch) ?清除(Purge)作業(yè)處理流程——輸入作業(yè)處理流程——轉(zhuǎn)換作業(yè)處理流程——運行作業(yè)處理流程——輸出和打印作業(yè)處理流程——清除作業(yè)處理流程——總體流程作業(yè)管理——JES2的性能與功能?從z/OS外得到作業(yè)?調(diào)度作業(yè),優(yōu)化系統(tǒng)效率?卸載作業(yè)和備份系統(tǒng)?高級打印輸出?安全管理安全管理?RACF(ResourceAccessControlFacility)是z/OS的安全子系統(tǒng)。它可以驗證一個用戶,并且保護(hù)數(shù)據(jù)不會被有意或無意地破壞、修改、泄漏或使用?RACF有四大功能:
?驗證一個用戶
?資源授權(quán)檢查
?記錄和報告
?安全管理基本概念——作業(yè)
?作業(yè)(JOB)是用戶在完成該任務(wù)時要求計算機所做工作的集合基本概念——作業(yè)與作業(yè)流?在大型主機系統(tǒng)中,當(dāng)用戶需要使用計算機完成某項批處理任務(wù)時,用戶必須準(zhǔn)備一個作業(yè)流(JobStream)?作業(yè)流中包含一個或多個作業(yè)(Job)基本概念——作業(yè)控制語言JCL?與COBOL等一般的編程語言不同,作業(yè)控制語言JCL(JobControlLanguage)是批處理作業(yè)的用戶與操作系統(tǒng)的接口?作業(yè)控制語言便是提供給用戶,為實現(xiàn)所需作業(yè)控制功能委托系統(tǒng)代為控制的一種語言?用戶通過JCL的相應(yīng)語句來與操作系統(tǒng)通訊,獲得作業(yè)所需的資源等,按自己的意圖來控制作業(yè)的執(zhí)行基本概念——作業(yè)步?一個作業(yè)中,每一段程序的執(zhí)行稱為一個作業(yè)步,一個作業(yè)可包含一個或多個作業(yè)步。一般的,作業(yè)由以下相對獨立的三步組成: ?編譯:把源程序語句(源模塊)轉(zhuǎn)換成目標(biāo)模塊 ?鏈接編輯:把目標(biāo)模塊同子程序庫中的其他程序鏈接起來得到可執(zhí)行模塊 ?執(zhí)行:運行可執(zhí)行模塊得到結(jié)果?一個作業(yè)中的各個作業(yè)步是順序執(zhí)行的,因此一個作業(yè)步的輸出可以作為下一個作業(yè)步的輸入?用戶的作業(yè)可以由一個或多個作業(yè)步構(gòu)成基本概念——單步作業(yè)與多步作業(yè)只有一個作業(yè)步的作業(yè)叫做單步作業(yè);由多個作業(yè)步構(gòu)成的作業(yè)叫做多步作業(yè)。不論單步作業(yè)還是多步作業(yè)都必須包含三個JCL基本語句(JCLStatement):?作業(yè)語句(JOB):標(biāo)識一個作業(yè)的開始,提供必要的運行參數(shù)?執(zhí)行語句(EXEC):標(biāo)識一個作業(yè)步的開始,定義本作業(yè)步所要執(zhí)行的程序或過程?數(shù)據(jù)定義語句(DD):用于描述應(yīng)用程序所需要的數(shù)據(jù)文件JCL語句——JCL語句的分類作業(yè)控制語言JCL由九種語句組成,除了前面介紹的三種外,其余六種是:/*語句:表示流內(nèi)數(shù)據(jù)結(jié)束或調(diào)用JES控制語句//*語句:注釋語句,由第4到第80列寫出注釋內(nèi)容//語句:空語句,用以標(biāo)記一個作業(yè)的結(jié)束PROC語句:流內(nèi)過程(IN-STREAMPROCEDURE)或編目過程(CATALOGEDPROCEDURE)的起始標(biāo)記PEND語句:標(biāo)志一個流內(nèi)過程的結(jié)束。Command語句:操作員用這個語句在輸入流中寫入操作命令JCL語句——單步作業(yè)實例//BACKUPJOB,’EXAMPLEJOB’//************************//*ITISAEXAMPLE!*//************************//STEP1EXECPGM=IEBGENER//STEPLIBDDDSN=SYS1.LINKLIB,DISP=SHR//SYSIN
DDDUMMY//SYSPRINTDDSYSOUT=A//SYSU1DDDSN=PR.MASTER,DISP=OLD//SYSU2DDDSN=PR.MAILY.BACKUP,DISP=(NEW,CATLG),UNIT=TAPE,// DCB=(RECFM=FB,LRECL=200,BLKSIZE=1000)//JCL的語法規(guī)則——JCL字符集?字母(共26個)ABCDEFGHIJKLMNOPQRSTUVWXYZ?數(shù)字(共10個)0123456789?特殊字符(共10個),./‘()*&+-=?通配符@$#(也可分別用X’7C’X’5B’和X’7B’表示)?EBCDIC可打印字符集JCL的語法規(guī)則—一般語句格式規(guī)范在JCL中,除/*語句外的所有語句均以第1、2列的//符號作為開始標(biāo)志,系統(tǒng)規(guī)定這些語句的長度為80列。這80列在邏輯上被劃分為五個區(qū)域,分別是:?標(biāo)識符區(qū)?名字區(qū)?操作符區(qū)?參數(shù)區(qū)?說明區(qū)一般語句格式規(guī)范——標(biāo)識符區(qū)?一般情況下,標(biāo)識符區(qū)的符號為“//”,該符號表明該條語句為JCL語句?標(biāo)識符區(qū)位于每條語句的第1、2列?在特殊情況下,標(biāo)識符區(qū)的符號將有所變化一般語句格式規(guī)范——名字區(qū)?名字區(qū)指明一個語句,便于系統(tǒng)控制塊或其他語句引用它?名字可以由1~8個字母數(shù)字或通配符組成,但第一個字符必須是字母或通配符,且必須從第3列開始?名字區(qū)后必須跟一個或多個空格,可以選擇名字表達(dá)出這個JCL語句的作用一般語句格式規(guī)范——操作符區(qū)?操作符區(qū)位于名字區(qū)之后,規(guī)定了語句的類型:JOB、EXEC、DD、PROC、PEND,或操作員命令?操作符區(qū)后必須跟一個或多個空格一般語句格式規(guī)范——參數(shù)區(qū)?參數(shù)區(qū)在操作符區(qū)之后,其中包括被逗號分隔的參數(shù)?這些參數(shù)決定該JCL語句如何被處理?參數(shù)區(qū)沒有固定的長度及列的要求一般語句格式規(guī)范——說明區(qū)?說明區(qū)位于參數(shù)區(qū)后,用于對相應(yīng)語句進(jìn)行注釋說明,它可以是任何所需的說明信息,注釋區(qū)后必須跟一個空格?需要注意的是,僅當(dāng)參數(shù)出現(xiàn)時才能書寫說明信息,不然容易與參數(shù)混淆一般語句格式規(guī)范——續(xù)行?JCL只允許在參數(shù)區(qū)和說明區(qū)有續(xù)行,當(dāng)需要續(xù)行時,在當(dāng)前行的第71列前必須將某個參數(shù)或某個子參數(shù)以及參數(shù)后的逗號寫完整,且下一行第1、2列為“//”,第3列為空格,續(xù)行的內(nèi)容只能從4~16列開始,如果從16列后開始,將被認(rèn)為是注釋語句JCL的語法規(guī)則——參數(shù)規(guī)則?在JCL中,參數(shù)區(qū)內(nèi)的參數(shù)的類型分為兩類: 位置參數(shù)(positional):與其他參數(shù)保持相對位置的參數(shù) 關(guān)鍵字參數(shù)(keyword):由一個關(guān)鍵字和等號后面的可變數(shù)據(jù)組成?如果在一個語句內(nèi)既有位置參數(shù)又有關(guān)鍵字參數(shù)時,所有的關(guān)鍵字參數(shù)必須位于位置參數(shù)之后JCL的語法規(guī)則——參數(shù)的語法1.位置參數(shù)和關(guān)鍵字參數(shù)之間必須用逗號分開,不允許有空格2.必須按規(guī)定的次序書寫參數(shù):所有的關(guān)鍵字參數(shù)必須位于位置參數(shù)之后,而所有位置參數(shù)也必須按規(guī)定排列3.當(dāng)缺省某個位置參數(shù)或某個子參數(shù)時,應(yīng)以一個逗號指明所在位置。當(dāng)缺省最后一個位置參數(shù)時,逗號可以省略4.當(dāng)沒有任何位置參數(shù)時,則不必書寫任何內(nèi)容表示5.關(guān)鍵字參數(shù)之間沒有相對位置的規(guī)定,可以按任何次序排列6.允許含有特殊字符的參數(shù)或子參數(shù),且其中的特殊字符并非起某種特定的語法功能必須用撇號“’”替代括號將這些參數(shù)和子參數(shù)括起來,而在這些參數(shù)與子參數(shù)中要用到撇號時,則需兩個連續(xù)的撇號表示有些語句中的某些參數(shù)或子參數(shù)含有一些特定的特殊字符時,將不需要用撇號括起來在JCL中用“&”來表識符號參數(shù)的開始。當(dāng)參數(shù)中含有“&”且不用來表示符號參數(shù)時,則需使用連續(xù)的兩個“&”來表示“&”。7.JCL的位置參數(shù)與關(guān)鍵字參數(shù)最多只能由兩級子參數(shù)。也就是說用于括起子參數(shù)列表的括號最多只能有兩層JCL的語法規(guī)則——JCL語句的位置1.JOB語句2.JOBLIB語句3.JOBCAT及SYSCHK語句4.任何流內(nèi)過程5.第一個EXEC語句6.任何的STEPCAT、STEPLIB,或一般的屬于這一步的DD語句7.任何更多的EXEC語句及與他們相關(guān)聯(lián)的DD語句8.任何空語句JCL的語法規(guī)則——JCL語法實例作業(yè)語句//EXPJOBJOB,’USERNAME’,MSGLEVEL=(1,1),EXAMPLE作業(yè)語句續(xù)行//MSGCLASS=Q,CLASS=A//**********************注釋語句//*ITISAEXAMPLE*//**********************執(zhí)行語句//STEP1EXECPGM=IEFBR14語句//DD1DDDSN=MJSN.TEAM01.ONE,DISP=(,CATLG),語句續(xù)行//SPACE=(TRK,(5,2)),UNIT=SYSDA
語句//DD1DDDSN=MJSN.TEAM01.TWO,DISP=(,KEEP),DD語句續(xù)行//SPACE=(TRK,(1,1)),UNIT=SYSDAJCL語句——JOB語句?JOB語句標(biāo)志一個作業(yè)的開始、分配作業(yè)名并設(shè)置相關(guān)的位置參數(shù)及關(guān)鍵字參數(shù),每個作業(yè)的第一個語句必須是JOB語句JOB語句——語法規(guī)則JOB語句的格式如下://作業(yè)名JOB位置參數(shù)[,關(guān)鍵字參數(shù)][,關(guān)鍵字參數(shù)]。。。[注釋說明]?作業(yè)名——作業(yè)名是用戶給作業(yè)指定的名字。為使操作系統(tǒng)識別作業(yè),必須選擇確定的作業(yè)名字,由于系統(tǒng)不能同時運行具有相同名字得到作業(yè),因此只能給作業(yè)一個唯一確定的名字?位置參數(shù)
?記賬信息(accountinginformation)
?程序員名(programmer’sname):程序員名用于標(biāo)識作業(yè)的所有者(owner)信息,包括特殊字符在內(nèi),其長度不得超過20個字符?關(guān)鍵字參數(shù)
?ADDRSPCBYTESCLASSMSGCLASSMSGLEVELPRTYREGIONTIMETYPRUN……JOB語句——作業(yè)名?作業(yè)名必須遵守前面所提到的JCL語法規(guī)則?除此之外,建議用戶采用“用戶標(biāo)識USERID+數(shù)字或字符”的作業(yè)名,例如用戶標(biāo)識為JACK,則作業(yè)名可用JACKA。JOB語句的位置參數(shù)——記賬信息位?記賬信息位于操作符“JOB”后,它用于提供用戶使用系統(tǒng)的合法性、機時及紙張的收費管理等?如果省略記帳信息參數(shù)不寫,則需要在“程序員名”前用一個逗號來表示;但如果兩個位置參數(shù)全部忽略不寫,則無需任何標(biāo)示JOB語句的位置參數(shù)——程序員名?程序員名用于標(biāo)識作業(yè)的所有者(owner)信息,包括特殊字符在內(nèi),其長度不得超過20個字符JOB語句關(guān)鍵字參數(shù)——ADDRSPC?指明作業(yè)所需之存儲類型,它有兩個子參數(shù):
?VIRT:表示作業(yè)請求虛擬頁式存貯
?REAL:表示作業(yè)請求實存存儲空間
?缺省值為VIRT?其格式為:ADDRSPC={VIRT}{REAL}?例://PEHJOB,BAKER,ADDRSPC=VIRT//DEBJOB,ERIC,ADDRSPC=REAL,REGION=100KJOB語句關(guān)鍵字參數(shù)——CLASS?CLASS參數(shù)規(guī)定了作業(yè)的類別,JCL中可選用的作業(yè)類別有36個,用字母A~Z及數(shù)字0~9表示?相同類別的作業(yè)處于同一輸入隊列等待執(zhí)行并具有相同的處理屬性。?作業(yè)類別的屬性定義在JES中。當(dāng)CLASS參數(shù)缺省時,JES將會根據(jù)安裝時的缺省值賦予該作業(yè)一個缺省的CLASS值JOB語句關(guān)鍵字參數(shù)——SGLEVEL?用于控制JCL作業(yè)輸出清單的內(nèi)容?格式:MSGLEVEL=([statements][,messages])MSGLEVEL——statement參數(shù)指明在JCL作業(yè)輸出清單中應(yīng)打印出的作業(yè)控制語句的類型,取值范圍為:0—2。?取值0:僅打印出作業(yè)的JOB語句;?取值1:打印出作業(yè)中包括過程語句在內(nèi)的所有JCL語句;?取值2:輸入流中的所有控制語句。MSGLEVEL——message參數(shù)指明在JCL作業(yè)輸出清單中應(yīng)打印出信息的類型,取值范圍為:0~1。?取值0:只有在作業(yè)異常終止時,打印出有關(guān)JCL、JES、操作員及SMS處理信息;?取值1:無論作業(yè)是否異常終止,都打印出有關(guān)JCL、JES、操作員及的處理信息MSGLEVEL——實例JOB語句關(guān)鍵字參數(shù)—MSGCLASS?用于為作業(yè)日志(joblog)設(shè)置輸出類別。作業(yè)日志是為程序員提供的與作業(yè)相關(guān)信息的記錄。當(dāng)該參數(shù)省略時,系統(tǒng)將會采用默認(rèn)值。?格式:
MSGCLASS=class ?class:定義作業(yè)日志的類別
?與輸入隊列相似,class是一個A~Z的字母或一個0~9的數(shù)字。MESSAGECLASS和MESSAGELEVEL的缺省值JOB語句關(guān)鍵字參數(shù)——NOTIFY?用于請求系統(tǒng)在后臺作業(yè)處理完畢時給指定用戶發(fā)送信息。如果作業(yè)完成時,該用戶未在系統(tǒng)登錄,則系統(tǒng)所發(fā)送的信息將會保留到此用戶下次登錄?格式:
NOTIFY={userid} ?userid:必須以字母或通配符開頭的1~7個字母、數(shù)字或通配符組成,其值必須是一個存在的TSO用戶標(biāo)識。?例://SIGNJOB,TLOMP,NOTIFY=TSOUSERJOB語句關(guān)鍵字參數(shù)——PRTY?用于為相應(yīng)的輸入隊列中的作業(yè)分配優(yōu)先級。系統(tǒng)根據(jù)作業(yè)優(yōu)先級的高低來選擇來選擇作業(yè)執(zhí)行,對于同一級的作業(yè)的選擇將采取“先進(jìn)先出”的原則?格式:PRTY=priority ?priority:用數(shù)字量來表示優(yōu)先級,數(shù)字越大表示優(yōu)先級越高。根據(jù)作業(yè)進(jìn)入子系統(tǒng)的類型,其取值范圍是JES2:0~15;JES3:0~14JOB語句關(guān)鍵字參數(shù)——REGION(1)用于指定作業(yè)所需的實存或虛存空間的大小,系統(tǒng)將在該作業(yè)中的每一作業(yè)步使用該值。所需空間大小必須包含以下內(nèi)容:?運行所有程序所需的空間?在運行期間,程序中宏指令GETMAIN所需的所有附加空間?任務(wù)初始化和終止時需要的自由空間JOB語句關(guān)鍵字參數(shù)——REGION(2)格式:REGION={valueK}={valueM}?valueK:以千字節(jié)(Kb)為單位指出所需空間大小,value可取1~7位的十進(jìn)制數(shù),其取值范圍為1~2096128。系統(tǒng)以每4k為一存儲單位分配空間,所以value值應(yīng)取4的倍數(shù),如REGION=68K。當(dāng)value值不是4的倍數(shù)時,系統(tǒng)會將其增至一最為接近的4的倍數(shù)的值。?valueM:以兆字節(jié)(Mb)為單位指出所需空間大小,value可取1~4位的十進(jìn)制數(shù),其取值范圍為1~2047REGION和ADDRSPC//EXJOB...,REGION=512K,//ADDRSPC=REALJOB語句關(guān)鍵字參數(shù)——TIME?用于指定作業(yè)占用處理器的最長時間并可通過一些信息得知該作業(yè)占用處理器的時間。當(dāng)作業(yè)占用處理器時間超過指定值時,系統(tǒng)將終止該作業(yè)。通常情況下,此參數(shù)不用設(shè)置。當(dāng)作業(yè)所需處理器時間長于系統(tǒng)缺省值時,或出于某種測試目的才設(shè)置此參數(shù)。?格式:TIME={([minutes][,seconds])} ={1440 } ={NOLIMIT } ={MAXIMUM}JOB語句——多個參數(shù)的例子JCL語句——EXEC語句(1)?EXEC語句標(biāo)明作業(yè)或過程中的每一作業(yè)步的開始,并告知系統(tǒng)如何執(zhí)行該作業(yè)步。包括所有在EXEC語句中調(diào)用的過程中的所有作業(yè)步在內(nèi),一個作業(yè)最多可以有255個作業(yè)步JCL語句——EXEC語句(2)?作業(yè)步名是可以省略不寫的,如需標(biāo)明作業(yè)名時,該作業(yè)名必須在該作業(yè)內(nèi)以及該作業(yè)調(diào)用的所有過程中是唯一的,它由1~8個字母或通配符開頭的字符數(shù)字構(gòu)成?EXEC語句中的位置參數(shù)有兩個:PGM和PROC。每條EXEC語句必須有且僅有一個位置參數(shù)或過程名?EXEC語句的關(guān)鍵字參數(shù)是可選的,這些參數(shù)只作用于本作業(yè)步EXEC語句——作業(yè)步名?作業(yè)步名是可以省略不寫的,如需標(biāo)明作業(yè)名時,該作業(yè)名必須在該作業(yè)內(nèi)以及該作業(yè)調(diào)用的所有過程中是唯一的,它由1~8個字母或通配符開頭的字符數(shù)字構(gòu)成EXEC語句——PGM參數(shù)(1)PGM參數(shù)用于指明所要執(zhí)行的程序名。該程序必須是一個分區(qū)數(shù)據(jù)集(PDS)的成員或用作系統(tǒng)庫(systemlibrary)、私有庫(privatelibrary)臨時庫(temporarylibrary)的擴充分區(qū)數(shù)據(jù)集(PDSE)的成員EXEC語句——PGM參數(shù)(2)?程序名的調(diào)用方法分為直接調(diào)用和間接調(diào)用?格式:PGM={program-name} {*.stepname.ddname} {*.cstepname.ddname} ?program-name:program-name(程序名)指明要執(zhí)行程序的成員名或別名。程序名由由1~8個字母或通配符開頭的字符數(shù)字構(gòu)成。 ?*.stepname.ddname:表示要執(zhí)行的程序名由本作業(yè)步前名為“stepname”的作業(yè)步內(nèi)名為“ddname”的DD語句的DSN參數(shù)決定。 ?*.cstepname.ddname:表示要執(zhí)行的程序名由本作業(yè)步前名為“stepname”的作業(yè)步里所調(diào)用過程內(nèi)名為“procstepname”的過程步中相應(yīng)名為“ddname”DD語句的DSN參數(shù)決定。 ?在上述三種程序調(diào)用方法中,第一種為直接調(diào)用,而后兩種為間接調(diào)用EXEC語句——PROC參數(shù)(1)?指明作業(yè)步所要運行的過程名EXEC語句——PROC參數(shù)(2)?格式:{PROC=procedure-name}{procedure-name} ?procedure-name:需要調(diào)用的過程名,過程名由1~8個字母或通配符開頭的字符數(shù)字構(gòu)成。所調(diào)用的過程名可以是: ?編目過程的成員名或別名 ?由PROC語句定義的流內(nèi)過程的過程名,該流內(nèi)過程必須在本作業(yè)內(nèi)且本作業(yè)步前定義?在設(shè)定該參數(shù)時,可直接寫出過程名EXEC語句——關(guān)鍵字參數(shù)?當(dāng)EXEC語句的位置參數(shù)指定程序名時,關(guān)鍵字參數(shù)的寫法同JOB語句?當(dāng)EXEC語句的位置參數(shù)指定編目或流內(nèi)過程時,EXEC語句的關(guān)鍵字參數(shù)將覆蓋所調(diào)用過程中各EXEC語句的關(guān)鍵字參數(shù)。因此如果想僅覆蓋過程中的某個EXEC語句的關(guān)鍵字參數(shù),則應(yīng)在設(shè)置關(guān)鍵字參數(shù)時,同時指出所調(diào)用過程的相關(guān)過程步的名字EXEC語句的關(guān)鍵字參數(shù)——PARM(1)?用于向本作業(yè)步執(zhí)行的程序傳遞變量信息。該程序必須有相應(yīng)的指令接收這些信息,并使用它們EXEC語句的關(guān)鍵字參數(shù)——PARM(2)?格式: PARM[.過程步名]=子參數(shù) PARM[.過程步名]=(子參數(shù),子參數(shù)) PARM[.過程步名]=(‘子參數(shù)’,子參數(shù)) PARM[.過程步名]=‘子參數(shù),子參數(shù)’?包括所有的逗號、撇號以及括號在內(nèi),所有子參數(shù)的總長度不得超過100個字符。當(dāng)某子參數(shù)中含有特殊字符或空格時,可以將該子參數(shù)用撇號括起來,在其它子參數(shù)一起用括號括起來,或?qū)⑺性趨?shù)用撇號括起來。?子參數(shù):包含傳遞給程序的變量信息EXEC語句的關(guān)鍵字參數(shù)——COND(1)?用于對先前作業(yè)步執(zhí)行的返回碼(returncode)進(jìn)行測試,以決定是否執(zhí)行本作業(yè)步?用戶可以對特定作業(yè)步的返回碼進(jìn)行測試也可以對每一執(zhí)行完畢的的返回碼都進(jìn)行測試。 ?如果測試條件不滿足,系統(tǒng)執(zhí)行本作業(yè)步 ?如果測試條件滿足系統(tǒng)則不執(zhí)行該作業(yè)步?作業(yè)中的第一個EXEC語句中的COND參數(shù)將被系統(tǒng)忽略?注意,當(dāng)測試條件滿足時,系統(tǒng)并非不正常終止該作業(yè)步,而只是跳過該作業(yè)步,該作業(yè)仍將正常執(zhí)行EXEC語句的關(guān)鍵字參數(shù)——COND(2)?格式:(1)COND[.過程步名]=(code,operator)(2)COND[.過程步名]=((code,operator[,作業(yè)步名][,過程步名]) [,(code,operator[,作業(yè)步名][,過程步名])]…[,EVEN]) [,ONLY](3)COND=EVEN COND=ONLY ?利用COND參數(shù)最多可以有8個返回碼測試,如果有EVEN或ONLY時,最多有7個測試。格式(1)只有在先前作業(yè)步?jīng)]有非正常終止時,才能進(jìn)行該測試。格式(2)、(3)測試決定于EVEN和ONLY的設(shè)置。EXEC語句的關(guān)鍵字參數(shù)——COND(3)?code:系統(tǒng)使用code(測碼)與先前作業(yè)步或某特作業(yè)步的返回碼進(jìn)行比較。Code的取值范圍為:?operator:表示code與返碼的比較類型,這些比較操作符是:GT(大于)、GE(大于等于)、EQ(等于)、NE(不等于)、LT(小于)、LE(小于等于)EXEC語句的關(guān)鍵字參數(shù)——COND參數(shù)的實例(1)?如果前面任意作業(yè)步的返回值小于或等于8,則跳過本作業(yè)步EXEC語句的關(guān)鍵字參數(shù)——COND參數(shù)的實例(2)?如果作業(yè)步EXAMPLE2的返回值小于等于8,則跳過本作業(yè)步EXEC語句的關(guān)鍵字參數(shù)——COND的EVEN和ONLY子參數(shù)?EVEN:表示無論即使先前作業(yè)步異常終止,本作業(yè)步都要執(zhí)行。當(dāng)EVEN子參數(shù)設(shè)定時: ?不測試先前任何的異常終止作業(yè)步的返回碼 ?測試那些正常完成的作業(yè)步的返回碼,如果測試條件全部不滿足的話,本作業(yè)步將執(zhí)行?ONLY:表示只有先前作業(yè)步異常終止,本作業(yè)步才執(zhí)行。當(dāng)ONLY子參數(shù)設(shè)定時: ?不測試先前任何的異常終止作業(yè)步的返回碼 ?測試那些正常完成的作業(yè)步的返回碼,如果測試條件全部不滿足的話,本作業(yè)步將執(zhí)行EXEC語句的關(guān)鍵字參數(shù)——COND的EVEN子參數(shù)的例子?即使STEP3非正常中止,STEP4仍會執(zhí)行EXEC語句的關(guān)鍵字參數(shù)——COND的ONLY子參數(shù)的例子?只有STEP4前的作業(yè)步發(fā)生異常中止時,STEP4才執(zhí)行JCL語句——DD語句?數(shù)據(jù)定義語句(DD語句)用于定義一個數(shù)據(jù)集以及該數(shù)據(jù)集所需的輸入輸出資源DD語句——格式?格式://[dd名] DD [位置參數(shù)][,關(guān)鍵字參數(shù)]…[注釋] [過程步名.dd名]//[dd名 ]DD [過程步名.dd名]DD語句——dd名?“dd名”是為DD語句定義的名字,它由1~8個字母或通配符開頭的字符數(shù)字構(gòu)成?在一個作業(yè)步內(nèi)可以有多個DD語句,但每個DD語句的dd名在本作業(yè)步中應(yīng)該是唯一確定的?“dd名”可以由系統(tǒng)定義也可以由用戶自己定義,當(dāng)用戶需要調(diào)用公用程序時,需根據(jù)公用程序的具體要求選用系統(tǒng)定義的“dd名”?用戶自定義的“dd名”不可與系統(tǒng)定義“dd名”相重復(fù)?用戶子定義“dd名”可以根據(jù)數(shù)據(jù)的用途,遵循“dd名”的規(guī)則來命名,當(dāng)為應(yīng)用程序輸入輸出結(jié)果定義數(shù)據(jù)集時,“dd名”的命名規(guī)則取決于程序所用語言的類型DD語句的位置參數(shù)——*?參數(shù)“*”用于開始一個流內(nèi)數(shù)據(jù)集。數(shù)據(jù)記錄跟在“DD”語句之后,其第一、二列不能是“//”或“/*”;該記錄可以是任何編如EDCBIC。下列符號表明流內(nèi)數(shù)據(jù)記錄的結(jié)束: ?輸入流中的“/*”。 ?表示另一個JCL語句開始的“//”。 ?當(dāng)數(shù)據(jù)記錄中需以“//”開始時,就必須使用DATA參數(shù)來代替“*”參數(shù)。?格式: //dd名DD*[,參數(shù)]…[注釋]DD語句的位置參數(shù)——DATA?用作一個流內(nèi)數(shù)據(jù)集的開始,該流內(nèi)數(shù)據(jù)集里含有以“//”開頭的語句。數(shù)據(jù)記錄緊跟在“DDDATA”語句之后;該數(shù)據(jù)記錄可以是BCD或EDCBIC編碼。數(shù)據(jù)記錄將以“/*”作為結(jié)束。?格式://dd名DDDATA[,參數(shù)]…[注釋]?例://GROUP3DDDATA,DSNAME=&&GRP3 · data ·/*DD語句的位置參數(shù)——DUMMY?DUMMY參數(shù)用于標(biāo)明: ?沒有設(shè)備或外存空間分配給該數(shù)據(jù)集。 ?對該數(shù)據(jù)集不進(jìn)行狀態(tài)處理。 ?對BSAM(BasicSequentialAccessMethod)或QSAM(QueuedSequentialAccessMethod)來說,不對該數(shù)據(jù)集作輸入輸出操作。?用戶使用DUMMY參數(shù)對程序進(jìn)行測試。當(dāng)測試完成時,如果用戶希望恢復(fù)對數(shù)據(jù)集的輸入輸出操作時,只需將DDDUMMY參數(shù)替換成完整的數(shù)據(jù)集定義DD語句?DUMMY的另一個用途是在編目或流內(nèi)過程中?格式: //dd名DDDUMMY[,參數(shù)]…DD語句的關(guān)鍵字參數(shù)(1)?DD語句的關(guān)鍵字參數(shù)及其相關(guān)內(nèi)容相對JOB語句和EXEC語句來說比較復(fù)雜?DD語句通過這些參數(shù)完成下述任務(wù): ?定義順序數(shù)據(jù)集(sequentialdataset)或分區(qū)數(shù)據(jù)集(partitioneddataset)名; ?描述數(shù)據(jù)集狀態(tài)、屬性及保留期限; ?描述設(shè)備類型、數(shù)量; ?設(shè)置數(shù)據(jù)集的記錄格式、占用空間; ?描述作業(yè)的處理方式。DD語句的關(guān)鍵字參數(shù)(2)?DD語句的關(guān)鍵字參數(shù)有很多,但總體上可分為兩大類,一類與設(shè)備相關(guān),另一類則與數(shù)據(jù)集或數(shù)據(jù)相關(guān),與設(shè)備相關(guān)的參數(shù)有UNIT、VOLUME、SPACE、LABEL等,與數(shù)據(jù)集、數(shù)據(jù)相關(guān)的參數(shù)有DSNAME、DISP、DCB、RECORG、EXPDT、RETPD、PROTECT、SYSOUT、HOLD等?在實際應(yīng)用中,這兩類參數(shù)是配合使用的,沒有一個絕對的分界線DD語句的關(guān)鍵字參數(shù)——DSNAME?DSNAME參數(shù)被用來指定一個數(shù)據(jù)集的名字?對于一個新建的數(shù)據(jù)集來說,DSNAME參數(shù)給定新數(shù)據(jù)集的名字;對于已存在的數(shù)據(jù)集來說,通過DSNAME參數(shù)來定位這個數(shù)據(jù)集。?格式:{DSNAME}=名字 {DSN}DD語句的關(guān)鍵字參數(shù)——DISP?通過DISP參數(shù)可以向系統(tǒng)描述數(shù)據(jù)集的狀態(tài),并且可以設(shè)定系統(tǒng)在作業(yè)步或作業(yè)結(jié)束如何處理相應(yīng)的數(shù)據(jù)集。你可以為作業(yè)或作業(yè)步的正常結(jié)束設(shè)定一個參數(shù)值同時為非正常結(jié)束也設(shè)定一個參數(shù)值DD語句的關(guān)鍵字參數(shù)——DISP的格式{DISP=狀態(tài)}{DISP=([狀態(tài)][,正常結(jié)束參數(shù)][,非正常結(jié)束參數(shù)])}DISP=([NEW][,DELETE][,DELETE]) [OLD][,KEEP][,KEEP] [SHR][,PASS][,CATLG] [MOD][,CATLG][,UNCATLG] [, ][,UNCATLG] [, ]?狀態(tài)子參數(shù)可以取下列值: ?NEW——表示在當(dāng)前作業(yè)步中創(chuàng)建一個新的數(shù)據(jù)集。 ?OLD——表示該數(shù)據(jù)集在當(dāng)前作業(yè)步運行之前已經(jīng)存在,并且當(dāng)前作業(yè)步將以獨占的方式使用這個數(shù)據(jù)集。 ?SHR——表示該數(shù)據(jù)集在當(dāng)前作業(yè)步運行之前已經(jīng)存在,并且當(dāng)前作業(yè)步將以共享的方式使用這個數(shù)據(jù)集,也就是說其它的作業(yè)也可以同時使用這個數(shù)據(jù)集。這個參數(shù)值也可以寫成SHARE。 ?MOD——表示下列兩種情況之一:1、數(shù)據(jù)集已經(jīng)存在,記錄將被添加到數(shù)據(jù)集的結(jié)尾,這個數(shù)據(jù)集必須是順序的。2、一個新的數(shù)據(jù)集將被創(chuàng)建。在任何一種情況下數(shù)據(jù)集都將以獨占的方式被使用。?正常結(jié)束參數(shù)可以取下列值: ?DELETE——表示在作業(yè)步正常結(jié)束后,該數(shù)據(jù)集將不再需要而被刪除,所占用的空間將會被釋放。 ?KEEP——表示在作業(yè)步正常結(jié)束后,該數(shù)據(jù)集仍將繼續(xù)保留在相應(yīng)的卷上。 ?PASS——表示該數(shù)據(jù)集將會被保留傳遞到同一作業(yè)的后續(xù)作業(yè)步中被使用。 ?CATLG——在作業(yè)步正常結(jié)束后,系統(tǒng)將對數(shù)據(jù)集進(jìn)行編目,在系統(tǒng)編目或用戶編目中設(shè)置相應(yīng)的入口指針指向該數(shù)據(jù)集。 ?UNCATLG——在作業(yè)步正常結(jié)束后,系統(tǒng)解除對數(shù)據(jù)集的編目,在系統(tǒng)編目或用戶編目中刪除相應(yīng)的入口指針和索引。?非正常結(jié)束參數(shù)可以取的值基本與正常結(jié)束參數(shù)可以取的值相同,但不能夠取PASS。DD語句的關(guān)鍵字參數(shù)——UNIT?UNIT參數(shù)用于請求物理設(shè)備,用戶通過設(shè)置設(shè)備地址或設(shè)備類或設(shè)備組名等子參數(shù)確定設(shè)通過設(shè)置設(shè)備數(shù)或P等子參數(shù)確定設(shè)備數(shù)量。?格式:{UNIT=([三位設(shè)備地址][,設(shè)備數(shù)][,DEFER])} [/三位設(shè)備地址][,P ] [/四位設(shè)備地址][, ] [設(shè)備類型] [設(shè)備組名]{UNIT=AFF=DD名}DD語句的關(guān)鍵字參數(shù)——UNIT的子參數(shù)?設(shè)備地址:通過設(shè)備地址指定設(shè)備。設(shè)備地址是在系統(tǒng)安裝時建立的,它由一個3位的十進(jìn)制數(shù)或4位十六進(jìn)制數(shù)構(gòu)成。如用戶請求的某設(shè)備其地址為340時,參數(shù)設(shè)置為UNIT=340。?設(shè)備類型:通過設(shè)備類型名稱指定設(shè)備,這個名稱通常是數(shù)字的,如通過3480、3422指定磁帶機,通過3340、3375、3380、3390指定磁盤機。如用戶請求設(shè)備是3380磁盤機時,參數(shù)設(shè)置UNIT=3380。?設(shè)備組名:通過設(shè)備組名請求一臺或一組設(shè)備。被定義在一組中的設(shè)備可以是相同的,也可以可以是不同的。如一組設(shè)備中可以包含磁盤設(shè)備也可包含磁帶設(shè)備。但通常都是將一類設(shè)備作為一個設(shè)備組,具體的設(shè)備組名在系統(tǒng)安裝時定義。設(shè)備組名由l—8個字母符號構(gòu)成,常見的有SYSDA、DASD、TAPE、CART等。DD語句的關(guān)鍵字參數(shù)——VOLUME?通過VOLUME參數(shù)可以指定所引用的數(shù)據(jù)集所在的卷或卷組,也可以用來指定新建數(shù)據(jù)集所在的卷或卷組。?在使用這個參數(shù)時,用戶可以指定一個特定的卷、一組卷、具有特定序列號的卷或另外一個數(shù)據(jù)集所使用的卷。?對于一個跨越多個卷的數(shù)據(jù)集來說,這個參數(shù)還可以用來指定首先被處理的卷。?對于一個新建的數(shù)據(jù)集來說,可以通過不指定VOLUME參數(shù)或在VOLUME參數(shù)中不指定SER和REF子參數(shù)的方法在任何一個卷或卷組上創(chuàng)建該數(shù)據(jù)集,我們稱這種方法為非特定卷DD語句的關(guān)鍵字參數(shù)——VOLUME的格式{VOLUME}=([PRIVATE][,RETAIN][,卷順序號][,卷數(shù)]){VOL } [, ][, ] [SER=序列號 ] [SER=(序列號[,序列號]...) ] [,][REF=數(shù)據(jù)集名 ] [REF=*.DD語句名 ] [REF=*.作業(yè)步名.DD語句名] [REF=*.作業(yè)步名.過程作業(yè)步名.DD語句名]DD語句的關(guān)鍵字參數(shù)——SPACE?SPACE參數(shù)用于為新建數(shù)據(jù)集分配磁盤空間,對于磁帶卷不起作用。?請求空間分配一般有兩種方法:一是告知系統(tǒng)所需空間大小,由系統(tǒng)來分配合適的空間;二是請求系統(tǒng)分配某個特定的空間,如:從某個特定磁道到另一個特定磁道。DD語句的關(guān)鍵字參數(shù)——SPACE的格式?由系統(tǒng)分配空間:SPACE=({TRK,}(初次分配數(shù)量[,再次分配數(shù)量][,目錄空間])[,RLSE][,CONTIG][,ROUND]) ({CYL,}[,][,索引][,][,MXIG] ({塊長度,} [,ALX] ({記錄長度,} [,]?請求特定的磁道:SPACE=(ABSTR,(初次分配數(shù)量,地址[,目錄空間]) [,索引]?僅請求目錄空間:SPACE=(,(,,目錄空間))DD語句的關(guān)鍵字參數(shù)——DCB?使用DCB參數(shù)可以完善數(shù)據(jù)集的數(shù)據(jù)控制塊(DCB)中的信息?格式:[DCB=(子參數(shù)[,子參數(shù)]...)]DD語句的關(guān)鍵字參數(shù)——SYSOUT?通過SYSOUT參數(shù)可以將相應(yīng)的數(shù)據(jù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 環(huán)境藝術(shù)設(shè)計與可持續(xù)發(fā)展的協(xié)同實踐
- 匯報溝通職場中的軟實力
- 未來商業(yè)發(fā)展趨勢與市場分析
- 生產(chǎn)線工藝改進(jìn)的思路與實踐案例
- 吊裝工程專項方案
- “比賽場次”(說課稿)-2024-2025學(xué)年六年級數(shù)學(xué)上冊北師大版
- 《7 栽小蔥》(說課稿)三年級下冊科學(xué)蘇教版
- Module 1 Unit 2 I'm Danny(說課稿)-2024-2025學(xué)年牛津上海版(試用本)英語二年級上冊
- Unit3 What would you like?(說課稿)-2024-2025學(xué)年人教PEP版英語五年級上冊001
- 16 宇宙的另一邊 說課稿-2023-2024學(xué)年語文三年級下冊統(tǒng)編版
- 魯濱遜漂流記荒島生活的冒險與探索人性的真實展現(xiàn)
- 安全個人承諾書范文個人承諾書范文
- 遠(yuǎn)視儲備培訓(xùn)課件
- 嶺南膏方規(guī)范
- 【可行性報告】2023年虛擬演播室制作設(shè)備相關(guān)行業(yè)可行性分析報告
- 世界老年人跌倒的預(yù)防和管理指南解讀及跌倒應(yīng)急處理-
- GB/T 7251.2-2023低壓成套開關(guān)設(shè)備和控制設(shè)備第2部分:成套電力開關(guān)和控制設(shè)備
- 四川省地圖模板含市縣圖課件
- 帶拼音生字本模板(可A4打印)
- 小學(xué)語文必備文學(xué)常識???00題匯總(含答案)
- 英語人教版高中必修三(2019新編)第一單元教案
評論
0/150
提交評論