Programy podpory pro OS/360 a nástupce - Support programs for OS/360 and successors

Tento článek pojednává o podpůrných programech, které jsou součástí nebo jsou k dispozici pro OS/360 a nástupce . IBM kategorizuje některé z těchto programů jako pomocné a jiné jako servisní pomůcky; hranice nejsou vždy konzistentní nebo zřejmé. Mnoho, ale ne všechny tyto programy odpovídají typům v obslužném softwaru .

Následující seznamy popisují programy spojené s OS/360 a následníky . Nejsou zahrnuty žádné nástroje DOS , TPF nebo VM .

Historie/Společný JCL

Mnoho z těchto programů bylo navrženo uživateli IBM prostřednictvím skupiny SHARE a poté upraveno nebo rozšířeno IBM z verzí původně napsaných uživatelem.

Tyto programy jsou obvykle vyvolávány pomocí JCL ( Job Control Language ). Pro své datové sady obvykle používají běžné identifikátory JCL DD (v operačních systémech OS, nyní z/OS ):

DDNAME Obvyklá funkce
SYSIN vstupní soubor pro 'příkazy' pro obslužný program. Pokud je požadována výchozí akce, je často nastavena na DUMMY
SYSUT1 vložte soubor
SYSUT2 výstupní soubor
SYSUT3 pracovní (rozlitý) soubor pro vstup (SYSUT1) (často se nepoužívá)
SYSUT4 pracovní (rozlitý) soubor pro výstup (SYSUT2) (často se nepoužívá)
SYSPRINT výstupní soubor pro tištěný výstup z obslužného programu
SYSOUT výstupní soubor pro zprávy z obslužného programu
SYSUDUMP výstupní soubor pro „dump“ systému, pokud program selže

Nástroje datové sady

IDCAMS

IDCAMS ("Služby přístupových metod") generuje a upravuje datové sady VSAM ( Virtual Storage Access Method ) a Non-VSAM. IDCAMS byl představen společně s VSAM v OS/VS ; odkaz „Metoda přístupu“ pochází z počátečního myšlení OS/VS „VSAM nahrazuje všechny ostatní metody přístupu“. IDCAMS má pravděpodobně nejvíce funkcí ze všech obslužných programů, které vykonávají mnoho funkcí, pro soubory VSAM i jiné než VSAM.

Následující příklad ukazuje použití IDCAMS ke kopírování datové sady na disk. Datová sada obsahuje 80bajtové záznamy a systém zvolí pro výstup velikost bloku:

//XXXXXXXW JOB  XXXXXXX,AAAA,CLASS=G,MSGCLASS=1,NOTIFY=&SYSUID
//STEP001  EXEC PGM=IDCAMS
//SYSIN    DD *
   REPRO INFILE(FILE01) OUTFILE(FILE02) 
/*
//FILE01   DD DSN=PROD.FILE1.INPUT,disp=shr   .....
//FILE02   DD DSN=PROD.FILE2.OUTPUT,
//            DISP=(NEW,CATLG,DELETE),
//            UNIT=DASD,
//            SPACE=(TRK,(100,10),RLSE),   
//            DCB=(RECFM=FB,BLKSIZE=0,LRECL=80)
//SYSPRINT DD SYSOUT=* 
//SYSOUT   DD SYSOUT=* 
//SYSUDUMP DD SYSOUT=*

//*

Ve výše uvedeném příkladu řídicí karty SYSIN pocházejí ze souboru in-stream, ale místo toho můžete ukázat na libovolný sekvenční soubor nebo člena PDS obsahující řídicí karty nebo dočasnou sadu dat, pokud si přejete. Příklad použití souborů SYSIN by byl něco takového:

//SYSIN    DD DSN=PROD.MYFILE.REPRO,DISP=SHR

nebo toto:

//SYSIN    DD DSN=PROD.MYLIB.CNTLLIB(REPRO),
//            DISP=SHR

IEBCOMPR

IEBCOMPR porovnává záznamy v sekvenčních nebo dělených sadách dat .

Nástroj IEBCOMPR slouží k porovnání dvou sekvenčních nebo rozdělených datových sad . Porovnání této sady dat se provádí na úrovni logického záznamu. Proto se IEBCOMPR běžně používá k ověření správnosti záložní kopie datové sady (přesná shoda s originálem).

Během zpracování IEBCOMPR porovnává každý záznam z každé sady dat, jeden po druhém. Pokud jsou záznamy nerovné, IEBCOMPR uvádí v SYSOUT následující informace:

  • Dotyčná čísla záznamů a bloků.
  • Názvy příkazů DD, ve kterých došlo k nekonzistenci.
  • Nerovné záznamy.

Při porovnávání sekvenčních datových sad považuje IEBCOMPR datové sady za rovnocenné, pokud jsou splněny následující podmínky:

  • Datové sady obsahují stejný počet záznamů.
  • Odpovídající záznamy a klíče jsou totožné.

V případě dělených datových sad považuje IEBCOMPR datové sady za stejné, pokud jsou splněny následující podmínky:

  • Položky v adresáři pro dvě dělené sady dat se shodují - to znamená, že názvy jsou stejné a počet položek je stejný.
  • Odpovídající členové obsahují stejný počet záznamů.
  • Odpovídající záznamy a klíče jsou totožné.

Pokud během zpracování dojde k deseti nerovným porovnáním, IECOMPR skončí s příslušnou zprávou.

//XXXXXXXW JOB   XXXXXXX,AAAA.A.A,CLASS=G,MSGCLASS=1,NOTIFY=XXXXX
//STEP01   EXEC PGM=IEBCOMPR,ACCT=PJ00000000
//     INCLUDE  MEMBER=@BATCHS
//*SYSIN    DD DUMMY
//SYSIN DD *
   COMPARE TYPORG=PO
/*
//SYSUT1   DD DSN=XXXXXXX.OLDFILE,UNIT=DASD,DISP=SHR
//SYSUT2   DD DSN=XXXXXXX.NEWFILE,UNIT=DASD,DISP=SHR
//SYSUT#   DD

Poznámka: IEBCOMPR není příliš flexibilní ani uživatelsky přívětivý srovnávací program. Nemůže omezit srovnání pouze na určité sloupce, nemůže ignorovat rozdíly v mezerách, neříká vám, kde v záznamu se rozdíl vyskytuje, a zastaví se po 10 rozdílech. Na druhou stranu je rychlý a je přítomen na všech sálových počítačích IBM. Je to tedy velmi užitečné, když se očekává přesná shoda, jako je například srovnání zaváděcích modulů, které nebyly odblokovány, nebo kontrola, že kopie fungovala správně. Pro porovnávání programů nebo sestav se místo toho často používá porovnávací program ISPF SuperC (ISRSUPC).

IEBCOPY

IEBCOPY kopíruje, komprimuje a slučuje dělené datové sady . Může také vybrat nebo vyloučit zadané členy během operace kopírování a přejmenovat nebo nahradit členy.

Některé z úkolů, které může IEBCOPY provádět, zahrnují následující:

  • Vytvoření uvolnění rozdělené sady dat (PDS) do datové sady PS pro zálohování nebo přenos.
  • Kopírování PDS na místě k získání nevyužitého místa z odstraněných členů; také nazýván komprimací PDS.
  • Kopírování vybraných členů do jiného PDS.
  • Přejmenování vybraných členů PDS.
  • Sloučení více dělených datových sad do jednoho PDS.
  • Změna, kopírování a reblokování zaváděcích modulů.
  • Členové, kteří jsou již přítomni v jiném PDS, nebudou nahrazeni, pokud není zadána možnost R.

Pro nástroj IEBCOPY jsou pro kopii požadované příkazy řízení úloh následující:

//stepname EXEC PGM=IEBCOPY 
//SYSPRINT DD SYSOUT=class
//MYDD1    DD DSN=xxxx.ppp.psps,DISP=SHR
//MYDD2    DD DSN=xxxx.ppp.pssp,DISP=SHR
//SYSIN    DD *
    COPY INDD=MYDD1,OUTDD=MYDD2                    
       SELECT MEMBER=(MEM1,MEM2,MEM3)/ EXCLUDE MEMBER=(SF,DF,SA)

Příkazy MYDD1 a MYDD2 DD jsou názvy zvolené uživatelem pro rozdělené vstupní a výstupní datové sady; Výchozí hodnoty jsou SYSUT1 a SYSUT2. Pro tyto dva příkazy DD můžete použít jakýkoli platný DDNAME. Tyto názvy DDNAME jsou specifikovány v příkazech obslužného programu, aby sdělily IEBCOPY název vstupních a výstupních datových sad. Ke komprimaci PDS potřebujete pouze jeden příkaz DD.

IEBDG

IEBDG ('Data Generator') vytváří testovací datové sady skládající se ze vzorovaných dat. Řídicí příkazy definují pole záznamů, které mají být vytvořeny, včetně polohy, délky, formátu a inicializace, která má být provedena. IEBDG může použít existující datovou sadu jako vstupní a měnit pole, jak je uvedeno v ovládacích příkazech, například nahrazení pole názvu náhodným abecedním textem. Obsah každého pole se může pro každý záznam měnit, například otáčením znaků v alfanumerickém poli doleva nebo doprava pro každý následující záznam.

Příklad:

//XXXXXXXW JOB  XXXXXXX,AAAA,CLASS=G,MSGCLASS=1,NOTIFY=&SYSUID
//**********************************************************************
//* CREATION OF A DATASET To BE USED LATER ON
//**********************************************************************    
//CRSTEP EXEC PGM=IEFBR14                                   
//DDCREA   DD DSN=&SYSUID..MVSUT.SEQOUT,DISP=(NEW,CATLG)
//**********************************************************************
//* CREATION OF THE TESTDATA
//**********************************************************************              
//STEP1  EXEC PGM=IEBDG                                                 
//SYSPRINT DD SYSOUT=*                                                  
//SEQOUT   DD DSN=&SYSUID..MVSUT.SEQOUT,DISP=OLD                      
//SYSIN    DD DATA                                                      
      DSD OUTPUT=(SEQOUT)                                               
      FD  NAME=FIELD1,LENGTH=30,STARTLOC=1,FORMAT=AL,ACTION=TL          
      FD  NAME=FIELD2,LENGTH=30,STARTLOC=31,FORMAT=AL,ACTION=TR         
      FD  NAME=FIELD3,LENGTH=10,STARTLOC=71,PICTURE=10,                X
                  P'1234567890',INDEX=1                                 
      CREATE QUANTITY=500,NAME=(FIELD1,FIELD2,FIELD3),FILL=X'FF'        
      END                                                               
/* 
//**********************************************************************
//* PRINTING THE TEST DATA TO SYSOUT
//**********************************************************************    
//STEP2  EXEC PGM=IEBGENER                                       
//SYSPRINT DD SYSOUT=*                                           
//SYSUT1   DD DSN=*.STEP1.SEQOUT,DISP=SHR                        
//SYSIN    DD DUMMY                                              
//SYSUT2   DD SYSOUT=* 
//**********************************************************************
//* DELETE THE CREATED DATASET, EVEN IF PREVIOUS STEPS ABENDED
//**********************************************************************                                           
//DLSTEP EXEC PGM=IEFBR14,COND=EVEN                              
//DDDEL    DD DSN=&SYSUID..MVSUT.SEQOUT,DISP=(OLD,DELETE,DELETE)
//

IEBEDIT

IEBEDIT selektivně kopíruje části JCL.

Příklad programu IEBEDIT:

//IEBEDITJ JOB ACCT,'',CLASS=P,MSGCLASS=T,MSGLEVEL=(1,1),NOTIFY=&SYSUID
//STEP0001 EXEC PGM=IEBEDIT
//SYSPRINT DD SYSOUT=*
//SYSUT1   DD DSN=xxxxx.yyyyy.zzzzz,DISP=SHR
//SYSUT2   DD SYSOUT=(*,INTRDR)
//SYSIN    DD *
    EDIT TYPE=INCLUDE,STEPNAME=(STEP10,STEP5,STEP15)
/*
//

V tomto příkladu by datová sada xxxxx.yyyyy.zzzzz měla obsahovat úlohy (které by měly zahrnovat kroky s názvem STEP5, STEP10 a STEP15). Tato rutina IEBEDIT zkopíruje vybrané kroky úlohy do výstupního souboru SYSUT2 (v tomto případě interní čtečky).

Syntaxe příkazu EDIT je:

[label] EDIT [START=jobname] 
[,TYPE={POSITION|INCLUDE|EXCLUDE}] 
[,STEPNAME=(namelist)] 
[,NOPRINT]

START=jobnameurčuje název vstupní úlohy, na kterou se vztahuje příkaz EDIT. Každý příkaz EDIT se musí vztahovat na samostatnou zakázku. Pokud je zadán START bez TYPE a STEPNAME, bude do výstupu zahrnut příkaz JOB a všechny kroky úlohy pro zadanou úlohu.

Výchozí: Pokud je vynechán START a je poskytnut pouze jeden příkaz EDIT, je zpracována první úloha zjištěná ve sadě vstupních dat. Pokud je START vynechán z příkazu EDIT jiného než z prvního příkazu, zpracování pokračuje dalším příkazem JOB nalezeným ve vstupní sadě dat.

TYPE={POSITION|INCLUDE|EXCLUDE}určuje obsah sady výstupních dat. Tyto hodnoty lze kódovat:

POSITIONurčuje, že výstup má sestávat z příkazu JOB, kroku úlohy uvedeného v parametru STEPNAME a všech kroků, které po kroku úlohy následují. Všechny kroky úlohy předcházející zadanému kroku jsou z operace vynechány. POSITION je výchozí.

INCLUDE určuje, že sada výstupních dat má obsahovat příkaz JOB a všechny kroky úlohy zadané v parametru STEPNAME.

EXCLUDE určuje, že sada výstupních dat má obsahovat příkaz JOB a všechny kroky úlohy patřící k úloze s výjimkou kroků uvedených v parametru STEPNAME.

STEPNAME=(namelist) určuje názvy kroků úlohy, které chcete zpracovat.

namelistmůže to být název jednoho kroku úlohy, seznam názvů kroků oddělený čárkami nebo sekvenční rozsah kroků oddělený spojovníkem (například STEPA-STEPE). V jednom seznamu jmen lze použít jakoukoli jejich kombinaci. Pokud je zadán více než jeden název kroku, musí být celý seznam jmen uzavřen v závorkách.

Když je kódován pomocí TYPE = POSITION, STEPNAME určuje první krok úlohy, který má být umístěn do sady výstupních dat. Kroky úlohy předcházející tomuto kroku nejsou zkopírovány do sady výstupních dat.

Při kódování TYPE = INCLUDE nebo TYPE = EXCLUDE STEPNAME určuje názvy kroků úlohy, které mají být zahrnuty do operace nebo z ní vyloučeny. Například STEPNAME = (STEPA, STEPF-STEPL, STEPZ) označuje, že kroky operace STEPA, STEPF až STEPL a STEPZ mají být zahrnuty do operace nebo z ní vyloučeny.

Pokud je parametr STEPNAME vynechán, zkopíruje se celá vstupní úloha, jejíž název je uveden v příkazu EDIT. Pokud není zadán název úlohy, bude zpracována první nalezená úloha.

NOPRINT určuje, že datová sada zpráv nemá obsahovat výpis výstupní datové sady.

Výchozí: Výsledný výstup je uveden v sadě dat zprávy.

Další informace naleznete zde: [1]

IEBGENER

IEBGENER kopíruje záznamy ze sekvenční datové sady nebo vytváří rozdělenou datovou sadu.

Některé z úkolů, které může IEBGENER provádět, zahrnují následující:

  • Vytvoření zálohy sekvenční datové sady nebo člena PDS .
  • Změna velikosti fyzického bloku nebo délky logického záznamu sekvenční datové sady.
  • Vytvoření upravené sady dat.
  • Tisk sekvenční sady dat nebo člena PDS.
  • Vytvoření dělené výstupní datové sady ze sady sekvenčních vstupních dat.

Příklad programu IEBGENER ke kopírování jedné datové sady do druhé:

//IEBGENER JOB  ACCT,'DATA COPY',MSGCLASS=J,CLASS=A
//STEP010  EXEC PGM=IEBGENER                       
//SYSUT1   DD DSN=xxxxx.yyyyy.zzzzz,DISP=SHR 
//SYSUT2   DD DSN=aaaaa.bbbbb.ccccc,DISP=(,CATLG),
//            UNIT=SYSDA,SPACE=(TRK,(5,5),RLSE),
//            DCB=(RECFM=FB,LRECL=1440)
//SYSPRINT DD SYSOUT=*                             
//SYSIN    DD DUMMY

U úloh přímého kopírování je program pro třídění často dokáže rychleji než IEBGENER. Mnoho obchodů sálových počítačů proto využívá možnost, která tyto úkoly automaticky směruje do programu řazení ICEGENER namísto IEBGENER.

Na některých systémech je možné posílat e-maily z dávkové úlohy tím, že nařídí výstupu do „ SMTPexterní spisovatel . V takových systémech je tato technika následující:

//IEBGENER JOB  ACCT,'DATA COPY',MSGCLASS=J,CLASS=A
//NORMRC   EXEC PGM=IEBGENER
//SYSPRINT DD SYSOUT=*
//SYSUT1   DD *,LRECL=80
HELO <SYSTEMID>
MAIL FROM:<USERID@SYSTEMID>
RCPT TO:<USERID@SYSTEMID>
DATA
From: <USERID@SYSTEMID>
To: <USERID@SYSTEMID>
Subject: Test Mail

TEST MAIL FROM MAINFRAME
.
QUIT
/*
//SYSUT2   DD SYSOUT=(B,SMTP),LRECL=80
//SYSIN    DD DUMMY

Při odesílání e -mailu z sálového počítače je také možné připojit soubory.

IEBIMAGE

IEBIMAGE zpracovává několik typů definic ( obrázků AKA ) pro laserový tiskový subsystém IBM 3800 a tiskárnu IBM 4248. Běžná použití jsou pro vyrovnávací paměti pro ovládání formulářů ( FCB ), tabulky uspořádání znaků, definice znaků a obrázky formulářů, které mají být vytištěny na výstupu spolu s textem, pro vytištění loga společnosti na stránku nebo pouze pro tisk 'šedé lišty' stránky (střídající se šedé a bílé vodorovné pozadí, aby odpovídalo předchozímu zelenému papíru ). Díky tomuto nástroji bylo možné ukládat mnoho různých formulářů nebo log jako obrázků a v případě potřeby je tisknout, a to vše za použití stejného standardního prázdného papíru, čímž se eliminuje potřeba skladovat mnoho předtištěných formulářů a nutnost provozovatelů zastavit tiskárnu a měnit papír .

IEBISAM

IEBISAM uvolňuje, načítá, kopíruje a tiskne datové sady ISAM .

Extrahováno z příručky IBM SC26-7414-08 z/OS DFSMSdfp Utilities: Program IEBISAM již není distribuován. Počínaje z/OS V1R7 již datové sady ISAM nelze zpracovávat (vytvářet, otevírat, kopírovat ani ukládat). Datové sady ISAM, které jsou stále používány, je třeba převést na datové sady sekvence klíčů VSAM.

Před verzí z/OS V1R7 jste mohli použít služby přístupových metod k přidělení datové sady sekvenované podle klíče VSAM a zkopírovat do ní datovou sadu ISAM.

IEBPTPCH

IEBPTPCH („PrinT a PunCH“) tiskne nebo děruje záznamy ze sekvenční nebo rozdělené datové sady.

Některé z úkolů, které může IEBPTPCH provádět, zahrnují následující:

  • Tisk nebo děrování celé sady dat , sekvenční nebo dělené (PDS).
  • Tisk nebo děrování vybraných členů PDS.
  • Tisk nebo děrování vybraných záznamů ze sekvenční nebo dělené sady dat.
  • Tisk nebo děrování adresáře PDS.
  • Tisk nebo děrování upravené verze sekvenční sady dat nebo PDS.
  • Zkontrolujte prázdnou datovou sadu
//IEBPTPCH JOB
//         EXEC PGM=IEBPTPCH
//SYSIN    DD *
 PRINT     MAXFLDS=2
 TITLE     ITEM=('Name',22),
           ITEM=('GPA',50)
 TITLE     ITEM=(' ',1)
 RECORD    FIELD=(25,1,,22),
           FIELD=(4,51,,50)
/*
//SYSPRINT DD SYSOUT=*
//SYSUT1   DD *
Person 1                 307 C Meshel Hall        3.89
Second person            123 Williamson Hall      2.48
3rd person               321 Maag Library         1.52
/*
//SYSUT2   DD SYSOUT=*
//

Kontrola prázdného souboru dat: Pokud je soubor dat, který má být zkontrolován, prázdný, pak RC = 4 else 0.

//IEBPTPCH JOB
//         EXEC PGM=IEBPTPCH
//SYSUT1   DD DSN=<filename>,DISP=SHR
//SYSUT2   DD DUMMY,
//         DCB=(BLKSIZE=<block size>,RECFM=FA)        
//SYSIN    DD *
 PRINT TYPORG=PS 
/*
//SYSPRINT DD SYSOUT=*
//

IEBTCRIN

Čtěte záznamy ze čtečky páskových kazet 2495.

IEBUPDAT

Změní záznamy v sekvenční datové sadě nebo v členě dělené datové sady, nahrazené IEBUPDTE, ale nejsou s ní kompatibilní.

IEBUPDTE

IEBUPDTE („UPDaTE“) zahrnuje změny sekvenčních nebo rozdělených datových sad. patchObslužný program UNIX je podobný program, ale používá různé značky vstupního formátu ( např . „./ INSERT ...“ v MVS se stane „@@ ...“ v Unix Patch).

Někteří programátoři to vyslovují jako „IEB up-ditty“.

Nástroj IEBUPDTE slouží k údržbě zdrojových knihoven. Některé z funkcí, které může IEBUPDTE provádět, zahrnují následující:

  • Vytváření a aktualizace knihoven
  • Úprava sekvenčních datových sad nebo členů PDS
  • Změna organizace datové sady z postupné na dělenou nebo z dělené na sekvenční.

IEBUPDTE se běžně používá k distribuci zdrojových knihoven z pásky do DASD .

IEBUPDTE používá stejné příkazy řízení úloh, jaké vyžaduje většina nástrojů IEB. Jediné výjimky jsou následující:

  • IEBUPDTE přijímá parametr PARM kódovaný v příkazu EXEC, NOVÝ nebo MOD. NOVINKA znamená, že příkazy obslužného programu a vstupní data jsou obsaženy v příkazu SYSIN DD, takže není potřeba žádný příkaz SYSUT1 DD. MOD označuje, že příkaz SYSIN DD obsahuje pouze příkazy obslužného programu, bez vstupních dat. Proto je k definování sady vstupních dat vyžadován příkaz SYSUT1 DD.
  • IEBUPDTE čte sadu vstupních dat buď z příkazu SYSUT1 DD, nebo z příkazu SYSIN DD.

Kontrola úlohy používaná IEUPDTE je následující:

//stepname EXEC PGM=IEUPDTE,PARM=NEW 
//SYSPRINT DD SYSOUT=class
//SYSUT1   DD ...
//SYSUT2   DD ...
//SYSIN    DD ...

Nástroje plánovače

IEFBR14

IEFBR14 je fiktivní program, obvykle vložený do JCL, když jedinou požadovanou akcí je přidělení nebo vymazání datových sad.

Příklad kroku IEFBR14 :

//IEFBR14  JOB  ACCT,'DELETE DATASET'
//STEP01   EXEC PGM=IEFBR14
//DELDD    DD DSN=xxxxx.yyyyy.zzzzz,
//            DISP=(MOD,DELETE,DELETE),UNIT=DASD

Sekvence volání pro OS/360 obsahovala zpáteční adresu v registru 14. Větev do registru 14 by tedy okamžitě opustila program. Před a po spuštění tohoto programu by však operační systém alokoval a uvolnil datové sady, jak je uvedeno v příkazech DD, takže se běžně používá jako rychlý způsob nastavení nebo odebrání datových sad.

Původně sestával z jediné instrukce „Branch to Register“ 14. Mnemotechnická pomůcka používaná v IBM Assembler byla BR a odtud také název: IEF BR 14. IEF je samozřejmě „předponou“ správy úloh OS/360 "subsystém.

Tento jediný instrukční program měl chybu - nenastavil návratový kód. Proto musela být přidána druhá instrukce pro vymazání návratového kódu, aby byl ukončen se správným stavem.

V tomto nyní dvou instrukčním programu byla společností IBM hlášena a opravena další chyba. Tato chyba byla způsobena tím, že program IEFBR14 nebyl odkazově upravován jako znovu zadatelný (současně použitelný více než jedním volajícím).

Někteří hackeři vzali IEFBR14 a změnili instrukci BR 14 na BR 15, čímž vytvořili „nejkratší smyčku na světě“, protože registr 15 obsahuje adresu samotného modulu IEFBR14 a instrukce BR 15 modul jednoduše znovu vyvolá , navždy.

Systémové nástroje

Tyto nástroje obvykle používají programátoři systémů k udržování provozu systému, nikoli programátoři při práci s aplikacemi v systému.

ICKDSF

ICKDSF („Device Support Facility“) instaluje, inicializuje a udržuje DASD, a to buď pod operačním systémem, nebo samostatně .

IEHATLAS

Přiřadit alternativní stopy k vadným stopám.

IEHDASDR

IEHDASDR může provádět několik operací pro úložná zařízení s přímým přístupem (DASD)

  • Inicializujte svazek DASD s volitelnou kontrolou povrchu
  • Přiřadit alternativní stopy k vadným stopám
  • Tisk skladeb na DASD
  • Vytvořte zálohu svazku DASD na pásku
  • Obnovte svazky DASD ze záložních pásek.

IBM nakonec přestalo přidávat podporu pro nové typy zařízení do IEHDASDR a nasměrovalo zákazníky na bezplatný DSF pro inicializaci svazků a na zpoplatněné DASDR (5740-UT1) a Data Facility/Data Set Services (5740-UT3, DF/DSS) pro dump/ obnovit.

IBM odstranilo IEHDASDR v MVS/XA.

IEHINITT

IEHINITT („INITIAlize Tape“) inicializuje pásky zápisem štítků na pásky. V jednom běhu nástroje může být označeno více pásek. Mohou být zapsány standardní štítky IBM nebo ASCII .

Příklad programu IEHINITT:

//IEHINITT JOB  ACCT,'LABEL TAPES',MSGCLASS=J,CLASS=A
//STEP0001 EXEC PGM=IEHINITT,REGION=8M                      
//SYSPRINT DD SYSOUT=A 
//LABEL    DD DCB=DEN=2,UNIT=(3490,1,DEFER) 
//SYSIN    DD * 
LABEL INITT SER=123450,NUMBTAPE=3 
/*

Tento příklad označí 3 pásky na magnetické páskové jednotce 3490. Každá páska obdrží standardní štítek IBM. VOLSER se zvýší o jednu pro každou označenou pásku. Každá páska bude po označení navinuta a uvolněna.

IEHIOSUP

Aktualizujte odkazy TTR pro rutiny SVC ( Type Supervisor Call ) v SYS1.SVCLIB. Nelze použít pro OS/VS2 nebo novější.

IEHLIST

IEHLIST je obslužný program používaný k vypisování záznamů v adresáři PDS (Partitioned Dataset) nebo k výpisu obsahu VTOC (Volume Table of Contents ).

Nástroj IEHLIST se používá k výpisu položek obsažených v některém z následujících:

  • Adresář PDS
  • VTOC
  • Katalog (OS CVOL)

Příklad programu IEHLIST:

//IEHLIST  JOB  ACCT,'LIST PDS',MSGCLASS=J,CLASS=A
//STEP0001 EXEC PGM=IEHLIST,REGION=8M                      
//SYSPRINT DD SYSOUT=A
//PDS1     DD DSN=xxxx.yyyy.zzzz,DISP=OLD
//SYSIN    DD *
  LISTPDS DSNAME=xxxx.yyyy.zzzz,FORMAT
/*

Tato úloha vytvoří formátovaný seznam adresáře PDS PDS s názvem xxxx.yyyy.zzzz.

Příklad programu IEHLIST pro výpis VTOC je velmi podobný:

//IEHLIST  JOB  ACCT,'LIST VTOC',MSGCLASS=J,CLASS=A
//STEP0001 EXEC PGM=IEHLIST,REGION=8M                      
//SYSPRINT DD SYSOUT=A
//VOL1     DD VOL=SER=vvvvvv,DISP=OLD
//SYSIN    DD *
  LISTVTOC VOL=SER=vvvvvv,FORMAT
/*

IEHMOVE

IEHMOVE přesouvá nebo kopíruje sbírky dat. Prostředí DFSMS ( System Managed Storage ) jsou však nyní běžná a IBM v nich nedoporučuje používat nástroj IEHMOVE. Přesun se liší od kopie v tom, že po přesunu je původní datová sada odstraněna nebo poškrábána. Některé z úkolů, které může IEHMOVE provádět, zahrnují následující:

  • Přesouvání nebo kopírování sekvenčních a rozdělených datových sad
  • Přesouvání nebo kopírování vícesvazkových datových sad
  • Přesun celého objemu datových sad

Na povrchu může být IEHMOVE nadbytečný pro nástroje IEBGENER a IEBCOPY. IEHMOVE je však výkonnější. Hlavní výhodou používání IEHMOVE je, že pro nové sady dat nemusíte zadávat informace o prostoru nebo DCB . Důvodem je, že IEHMOVE přiděluje tyto informace na základě stávajících datových sad.

Další výhodou IEHMOVE je, že můžete kopírovat nebo přesouvat skupiny datových sad i celé objemy dat. Z důvodu snadnosti přesouvání skupin datových sad nebo svazků je nástroj IEHMOVE obecně oblíben systémovými programátory .

Ukázková práce IEHMOVE:

//stepname EXEC PGM=IEHMOVE,PARM='LINECNT=xx,POWER=n'
//SYSPRINT DD SYSOUT=class
//SYSUT1   DD UNIT=aaaa,VOL=SER=bbbbbb,DISP=OLD
//anyname1 DD UNIT=cccc,VOL=SER=dddddd,DISP=OLD
//anyname2 DD UNIT=eeee,VOL=SER=ffffff,DISP=OLD
//SYSIN    DD ...

Příkazy DD pro IEHMOVE, jiné než SYSPRINT a SYSIN, odkazují na svazky DASD nebo magnetické pásky místo jednotlivých datových sad . Odkazování na svazky však může představovat problém, protože zadáním získáte DISP=OLDvýhradní přístup ke svazku. Proto když je vaše úloha IEHMOVE spuštěna, celý svazek (a všechny jeho datové sady) není ostatním uživatelům k dispozici. To je přijatelné pro soukromé svazky, jako jsou pásky nebo připojitelné svazky DASD, ale nepřijatelné veřejné svazky.

Příkaz SYSUT1 DD určuje svazek DASD, do kterého jsou alokovány tři sady pracovních dat požadované IEHMOVE. Pro tento příkaz DD musíte zadat informace o jednotce a objemu.

IEHMOVE byl jedním z prvních systémů, které byly vyvinuty v PL/S .

V tomto případě jsou tři sekvenční sady dat (SEQSET1, SEQSET2 a SEQSET3) přesunuty z jednoho diskového svazku do tří samostatných diskových svazků. Každý ze tří přijímajících svazků je připojen, pokud to vyžaduje IEHMOVE. Sady zdrojových dat nejsou katalogizovány. Prostor je přidělován IEHMOVE.

//MOVEDS   JOB  ...
//STEP1    EXEC PGM=IEHMOVE
//SYSPRINT DD  SYSOUT=A
//SYSUT1   DD  UNIT=disk,VOLUME=SER=333333,DISP=OLD
//DD1      DD  UNIT=(disk,,DEFER),DISP=OLD,
//             VOLUME=(PRIVATE,,SER=(222222))
//DD2      DD  UNIT=(disk,,DEFER),DISP=OLD,
//             VOLUME=(PRIVATE,,SER=(222333))
//DD3      DD  UNIT=(disk,,DEFER),DISP=OLD,
//             VOLUME=(PRIVATE,,SER=(222444))
//DD4      DD  VOLUME=(PRIVATE,RETAIN,SER=(444444)),
//             UNIT=disk,DISP=OLD
//SYSIN    DD  *
     MOVE   DSNAME=SEQSET1,TO=disk=222222,FROM=disk=444444
     MOVE   DSNAME=SEQSET2,TO=disk=222333,FROM=disk=444444
     MOVE   DSNAME=SEQSET3,TO=disk=222444,FROM=disk=444444
/*

IEHPROGM

IEHPROGM vytváří a spravuje řídicí data systému. Používá se také k přejmenování a poškrábání (vymazání) datové sady.

Některé z úkolů, které může IEHPROGM provádět, zahrnují následující:

  • Odstranění (poškrábání) datové sady nebo člena PDS
  • Přejmenování datové sady nebo člena PDS
  • Katalogizace nebo odpojení sady dat
  • Zachování dat nastavených hesel v systému HESLO datovém souboru

Pro katalogizaci:

//SYSIN DD *
   CATLG DSNNAME=data-set-name,
   VOL=device-name=volume-number
/*
//

IFHSTATR

Vyberte a naformátujte záznamy SMF pro chyby pásky.

Nezávislé nástroje

Tyto programy neběží pod kontrolou operačního systému

IBCDASD

Formátujte svazky s přímým přístupem a přiřaďte alternativní stopy.

IBCDMPRS

Uložte a obnovte svazky s přímým přístupem.

IBCRCVRP

Přiřaďte alternativní stopy, obnovte a vyměňte data.

ICAPRTBL

Načtěte vyrovnávací paměť formulářů (FCB) a Universal Character Set (UCS) do tiskárny.

Servisní pomůcky

Jedná se o obslužný program, který IBM dokumentuje v servisních pomůckách nebo diagnostických příručkách. Původní pomůcky OS/360 Service měly názvy začínající IFC a IM*, ale IBM změnilo konvenci pojmenování na HM* pro OS/VS1 a AM* pro OS/VS2 . IBM konvenci IFC nezměnila.

IFCDIPOO

Inicializuje datovou sadu SYS1.LOGREC.

IFCEREPO

Shrnuje a tiskne záznamy ze sady dat záznamu chyb SYS1.LOGREC.

GTF (Generalized Trace Facility)

Sleduje vybrané systémové události, jako jsou přerušení SVC a I/O.

IMAPTFLE

Generuje JCL potřebné k použití na PTF a/nebo aplikuje PTF. Funkce tohoto programu byly zahrnuty do SMP .

IMASPZAP

Ověří a/nebo nahradí pokyny a/nebo data v zaváděcím modulu nebo objektu programu

IMBLIST

Formátuje a tiskne objektové moduly, načítá moduly, programové objekty a identifikační záznamy CSECT.

IMBMDMAP

Mapy načítají moduly. Funkce tohoto programu byly zahrnuty do seznamu IMBLIST.

IMCJQDMP

Samostatný program pro formátování a tisk fronty systémových úloh. Nevztahuje se na MVS .

IMCOSJQD

Naformátujte a vytiskněte frontu systémových úloh. Nevztahuje se na MVS .

IMDPRDMP

Formátuje a tiskne skládky, sadu odkládacích dat TSO a data trasování GTF.

IMDSADMP

Samostatný program pro vytváření vysokorychlostního nebo nízkorychlostního skládku hlavního úložiště.

Různé podpůrné programy

TŘÍDIT

Sort / Sloučení utility je program, který seřadí záznamy v souboru na určeném pořadí, nebo sloučit předem setříděny soubory. Je velmi často používán; často nejčastěji používaný aplikační program v mainframe shopu. Moderní programy pro řazení/sloučení také mohou vybrat nebo vynechat určité záznamy, shrnout záznamy, odstranit duplikáty, přeformátovat záznamy a vytvářet jednoduché zprávy. Třídění/sloučení je natolik důležité, že existuje více společností, z nichž každá prodává svůj vlastní balíček pro řazení/sloučení pro mainframy IBM.

Původní program řazení/sloučení OS/360 společnosti IBM, 360S-SM-023, název programu IERRCO00 (alias SORT), podporoval pouze první generaci paměťových zařízení s přímým přístupem (DASD) a pásky (2400) první generace . Podporu pro diskové jednotky druhé generace zajišťovaly programové produkty IBM, například 5734-SM1 a pozdější 5740-SM1 (DFSORT, alias ICEMAN, také SORT).

SORT je často prováděn jako samostatný program, kde normálně čte vstup ze souboru identifikovaného DD SORTINa zapisuje seřazený výstup do souboru identifikovaného DD SORTOUT. To je také často nazýván z jiné aplikace, pomocí COBOL SORT sloveso nebo volání na PL / I PLISRTx rutiny, kde to může použít buď SORTINnebo SORTOUTsoubory, nebo ji předá záznamy, které mají být řazeno podle volajícího a / nebo předávají seřazené záznamy zpět do jednoho volajícího při Doba.

Činnost SORT je řízena řídicími příkazy, které jsou do značné míry kompatibilní mezi různými třídicími programy IBM a třetích stran. Příkaz SORTor MERGEdefinuje klíče řazení - pole, ve kterých mají být data tříděna nebo sloučena. Tento příkaz identifikuje pozici, délku a datový typ každého klíče. Příkaz RECORDpopisuje formát a délku záznamů ve vstupním souboru. Jiné příkazy umožňují uživateli určit, které záznamy mají být zahrnuty nebo vyloučeny z řazení, a určit další transformace, které se mají na datech provést.

Klíče mohou být libovolné kombinace znakových dat EBCDIC nebo ASCII , zónová nebo sbalená desetinná, binární se znaménkem nebo bez znaménka s pevnou řádovou čárkou nebo hexadecimální s plovoucí desetinnou čárkou. Klíče mohou být umístěny kdekoli v záznamu a nemusí na sebe navazovat. Řazení lze zadat v libovolné kombinaci vzestupné a sestupné sekvence pomocí klíče.

Třídící program OS/360, IERRCO00, funguje tak, že rozdělí vstupní data do sekcí, roztřídí každou sekci v hlavní paměti a zapíše seřazenou sekci do mezilehlých datových sad buď na paměťová zařízení s přímým přístupem (DASD), nebo na magnetickou pásku . Fáze konečného sloučení pak sloučí sekce a vytvoří tříděný výstup. SORT používá jednu z řady technik pro distribuci sekcí mezi sekundární úložná zařízení. SORT si obvykle může zvolit optimální techniku, kterou však může uživatel přepsat. SORT má tři techniky, které lze použít, pokud je mezipaměť pásková, a dvě, pokud disk.

Páskové techniky jsou:

  • Vyvážený (BALN) - efektivnější, pokud je k dispozici více páskových jednotek pro přechodné úložiště.
  • Polyphase (POLY) - používá se, pokud je pro mezipaměť k dispozici méně páskových jednotek.
  • Oscillating (OSCL) - využívá více hlavního úložiště. Velikost vstupní datové sady musí být známá nebo se musí přibližně přiblížit.

Diskové techniky jsou:

  • Balanced Direct Access (BALN) - používá tři až šest datasetů mezipaměti.
  • Crisscross Direct Access (CRCX) - využívá šest až sedmnáct datasetů mezipaměti, vyžaduje dvojnásobek hlavního úložiště techniky Balanced Direct Access.

Linkery

OS/360 měl pouze editor propojení, dostupný v několika konfiguracích. DFSMSdfp přidal Binder jako alternativu pro zaváděcí moduly a jako jedinou možnost pro programové objekty.

Editor vazeb

Editor propojení vytváří a nahrazuje zaváděcí moduly v dělené sadě dat z kombinace řídicích karet, objektových modulů a dalších zaváděcích modulů. Může přejmenovat nebo nahradit řídicí sekci (CSECT) a provádět několik dalších různých funkcí. Původně byl k dispozici v několika konfiguracích v závislosti na požadavcích na úložiště, ale editor propojení na úrovni E již není k dispozici a editor propojení na úrovni F je nyní známý jednoduše jako editor propojení. V systému z/OS je editor propojení k dispozici pouze kvůli kompatibilitě.

Pořadač

Pořadač plní stejné funkce jako editor vazeb. Kromě toho podporuje nový formát, programový objekt, který je funkčním ekvivalentem zaváděcího modulu v PDSE (Partitioned Data Set Extended), s mnoha dalšími možnostmi.

Překladače

Každý programovací jazyk používaný v počítačové prodejně bude mít jeden nebo více přidružených překladačů, které překládají zdrojový program do objektového modulu strojového jazyka. Potom musí být objektový modul z kompilátoru zpracován editorem propojení IEWL, aby se vytvořil spustitelný zaváděcí modul.

IGYCRCTL je běžným příkladem kompilátoru; je kompilátorem aktuálního produktu IBM Enterprise COBOL for z/OS. (V průběhu let existovalo několik předchozích překladačů IBM COBOL s různými názvy.) Existuje mnoho dalších překladačů pro různé další programovací jazyky.

IETASM

Assembler (E) byl určen pro OS/360 běžící na velmi malých strojích.

IEUASM

Assembler (F) byl určen pro normální instalace OS/360.

IFOX00

Assembler (XF) byl systémový assembler pro OS/VS1 a OS/VS2, který nahradil Assembler (E) a (F), i když s nimi nebyl plně kompatibilní. IBM brzy vytvořilo Assembler (XF) jako systémový assembler pro DOS i VM.

IEV90

Assembler (H) a Assembler (H) verze 2 jsou programové assemblery produktů, které jsou obecně rychlejší než Assemblers E, F a XF, přestože nejsou plně kompatibilní s žádným z nich.

ASMA90

IBM High Level Assembler (HLASM) je v podstatě nová verze Assembler (H) verze 2 a je jediným assemblerem, který IBM podporuje na z/OS a z/VM. Nahrazuje všechny starší assemblery, i když s nimi není plně kompatibilní.

Program pro úpravu systému (SMP)

System Modification Program (SMP) je nástroj pro instalaci služby na OS/360 a následnících, nahrazující např. Samostatné sestavy, úpravy odkazů a úlohy IMAPTFLE. Původně volitelné zařízení je povinné pro MVS/SP a novější a verze programu SMP/E je součástí novějších systémů, např. Z/OS.

Poznámky

Reference

Viz také

externí odkazy