Domanda

Mi chiedo una domanda sul registro Z / OS:

Mi piacerebbe solo sapere se tutte le operazioni per iniziare sono state sempre chiamate da $ HASP373 e IEF403i? E per lo stato terminato chiamato $ HASP395 e IEF404i?

È stato utile?

Soluzione

no. . Quelli Messaggi sono per Lavori . Non tutte le operazioni sono lavori. Un esempio di un'operazione che non è un lavoro sarebbe un comando di sistema . Non ho un sistema Z / / OS a portata di mano in questo momento, ma io credi un altro esempio di un'operazione che non utilizzerebbe i messaggi che fai riferimento sarebbe un'attività iniziata.

Questo potrebbe essere utile, poiché tenta di spiegare i concetti Z / OS in termini UNIX.

Altri suggerimenti

Il problema con z / OS è che è veramente difficile per spiegare qualcosa senza introdurre un altro concetto che ha anche bisogno di spiegare. Questo, a sua volta, richiede un'altra spiegazione ecc. Questo è in parte dovuto al sistema operativo z / OS da un pianeta diverso rispetto a UNIX, Windows, OS X ecc., Tutti sono ampiamente simili.

Questi messaggi sono emessi dal sistema per molto il lavoro che accade su un mainframe, ma non tutto.

Tutto il lavoro su Z / OS funziona nel proprio spazio di indirizzi, che è quasi come un mini-VM. Ci saranno molti spazi di indirizzi in un sistema z / OS (380 nella nostra attualmente). Un programma in uno spazio di indirizzi non è a conoscenza di altri spazi indirizzi e pensa che abbia accesso all'intero intervallo di memoria da 2 GB (indirizzo 31 bit) (diversi spazi di indirizzi può comunicare se necessario e autorizzato, E più di 2 GB è disponibile con indirizzamento a 64 bit). Un programma in uno spazio di indirizzi non può bloccare un programma in un altro spazio di indirizzi sovrascrivendo la memorizzazione. I programmi in 2 diversi spazi di indirizzi possono accedere allo stesso indirizzo di memoria, ma non influire a vicenda, poiché effettivamente, disinseriti, accedere a una memoria diversa.

Ci sono 4 tipi di spazi indirizzi:

    .
  • TSO (opzione di condivisione del tempo): questi sono utenti connessi al sistema, digitando i comandi e ottenere risposte. Possono eseguire script, utilizzando le lingue rexx e cist (elenchi di comandi - vecchi, generalmente sostituiti da rexx) molto simili agli script perl e shell, inviare lavori batch, scrittura e compilazione codice ecc.
  • Lavori batch (o lavoro) - Qui è qui che si desidera eseguire un programma, in modo da creare un file di testo con il nome del programma / i per eseguire e il file (s) che hanno bisogno (s ) e inviarlo. Il sistema eseguirà il / i programma (i) e ti darà quando sono finiti, mentre è in esecuzione, puoi andare a fare qualcos'altro. Non è nemmeno necessario connettere - puoi preparare un lavoro FTP (ad esempio) per eseguire alle 01:00 mentre sei addormentato e un altro lavoro da eseguire se il primo funziona.
  • Attività iniziale (STCS) - molto simile a un lavoro batch. Di solito avviato dal sistema stesso quando inizia o da un operatore che emette un comando di avvio per quella STC nella console di sistema. (Ad esempio "Start db2 'Avvia l'attività DB2 avviata. In alternativa, un utente può inviare un lavoro batch per il proprio sistema di test db2.)

  • Spazi di indirizzo del sistema (Sysas). Considera questi come un daemon UNIX. Iniziato dal sistema operativo stesso per vari processi essenziali. Ci sono anche spazi di indirizzi che rappresentano i processi in esecuzione sotto la metà "Unix" della metà Z / OS (servizi di sistema USS - UXNIZ), ma questa è un'altra storia.

Non esiste una "operazione" in termini z / OS. All'interno di uno spazio di indirizzi, molti programmi possono essere in esecuzione, ognuno identificato da un TCB (Blocco di controllo dell'attività) o SRB (blocco di richiesta di sistema).

Tuttavia, se sapessi che le informazioni che volevi è stata prodotta da un normale lavoro batch, quindi alla ricerca di £ HASP373 e £ I messaggi HASP395 per quel lavoro sarebbe il posto giusto per iniziare. Tieni presente che gli ID del messaggio (HASP373 e HASP395) potrebbero non iniziare con "£" sul sistema. '£' è il valore predefinito, ma è un parametro personalizzabile. $ e # sono anche abbastanza comuni.

So di cosa sto parlando, ma se qualcuno di cui sopra non è chiaro, allora non l'ho spiegato molto bene. Potrei essere colpevole di fare esattamente quello che ho avvertito contro e spiegando un concetto sconosciuto usando un altro concetto sconosciuto. : -)

Il lavoro entra in z / OS attraverso qualcosa chiamato interfaccia del sottosistema. Parte di questo flusso è che generalmente, quando viene avviato uno spazio indirizzo, richiede il lavoro dal sottosistema che ha avviato lo spazio di indirizzo attraverso un'interfaccia ben definita (IEFSSreq). Questa stretta di mano è dove provengono le cose come i tuoi messaggi HASP.

Ecco un esempio annaffiato.

Un operatore entra nel comando di avvio da una console di sistema. Come parte dell'elaborazione che comando, il sistema crea uno spazio di indirizzi, e alla fine un thread nel nuovo spazio di indirizzo dice "OK - sono pronto ... Dammi un po 'di lavoro da fare". Ciò va al sottosistema di immissione del lavoro primario, che passa lo spazio indirizzo qualcosa da fare - le strutture dati interne che rappresentano il compito che l'operatore è iniziato in questo caso. Come parte di questa catena, vengono rilasciati i vari messaggi $ HASP e questo funziona allo stesso modo per le sessioni TSO, ha avviato attività (STC) e JCL presentate per un lavoro batch.

JES2 / JES3 sono esempi di sottosistemi, ma ce ne sono altri.

Ad esempio, se il nostro operatore ha aggiunto il parametro SUB= MSTR nel comando Start, le richieste non passeranno attraverso il Primary Jes - e quindi non ci sarebbe nessuno dei $ HASP messaggi che stai cercando. Ci sono molte applicazioni del venditore che iniziano e gestiscono gli spazi di indirizzi al di fuori di Jes, e questa è la roba che ti manca limitandoti ai messaggi HASP e IEF401.

Inoltre, i servizi Unix hanno una varietà di API simili a Unix "Fork" che può essere utilizzata per generare spazi di indirizzo senza necessariamente coinvolgere JES.

Se vuoi sapere sull'attività che inizia e finisce, ci sono modi migliori - SMF, segnali ENF, ecc. Un ottimo modo per imparare questa roba se non sai già è usare i servizi di traccia del sistema e leggere alcuni discariche. La cosa meravigliosa della Z / OS è che è tutto proprio lì, per coloro che trascorrono il tempo a capire dove guardare.

Un lavoro è qualcosa che attraversa JES2 / JES3. (Nel tuo caso, JES2.) I lavori JES2 / JES3 sono generalmente utilizzati per il tipo di lavoro batch. Ad esempio, un lavoro di ordinamento, dove invio qualcosa e torno più tardi e prendi una risposta. Tuttavia, c'è un sacco di lavoro in esecuzione sotto z / OS che non attraversa JES2 / JES3.

parte del problema qui è ciò che intendi con un'operazione; Ad esempio, mentre potresti ricevere un messaggio che dice che DB2 è iniziato, dopo che è iniziato, non ti dirà ogni volta che riceve una query. Un utente TSO potrebbe eseguire un rexx Exec sotto il suo spazio di indirizzi, ma non passerà attraverso JES.

Un altro modo per guardare questo è che JES2 / JES3 sono sottosistemi di gestione del lavoro, ma non sono equivalenti al kernel su un sistema UNIX / Windows, che pianifica tutto il lavoro in esecuzione sul sistema. Per Z / OS, ci sono più modi in cui il lavoro può entrare in un sistema; Gli esempi includono JES2 / JES3, TSO, ISPF, CICS, DB2, IMS, tramite la console, ecc. È quindi fino al programmatore principale / WLM / SRM per gestire tutte le richieste che arrivano attraverso tutti i sottosistemi.

Se hai accesso a un sistema Z / / OS, esaminare SDSF o qualsiasi altra cosa tu usi per gestire JES2. Il pannello ST, sotto SDSF, è un elenco di cose che stanno funzionando / idonee a eseguire che sono gestite da JES2. Tuttavia, se guardi il pannello DA (supponendo che tu abbia l'autorità di farlo), noterete che ci sono molti spazi di indirizzi che si presentano sul pannello DA che non si presentano nel pannello ST. < / P >.

Se gli spazi di indirizzi vengono avviati tramite il sottosistema JES2, che normalmente è il caso, a meno che non sia specificato un altro sottosistema o MSTR utilizzando il comando di avvio MVS, è stato rilasciato il comando JobName $ HASP373.Allo stesso modo, quando termina lo spazio indirizzo, il messaggio $ HASP395 è emesso.

I messaggi IEF403i e IEF404i sono emessi dal sistema in situazioni simili e indipendentemente da ciò che sta facendo JES2 o JES3 e indipendentemente da quale sottosistema è stato avviato lo spazio indirizzo.I messaggi vengono rilasciati solo quando l'operatore ha richiesto di monitorare i nomi dei lavori utilizzando il SETCON MONITOR o il comando MONITOR JOBNAMES.I prodotti per le operazioni automatizzate in genere fanno questo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top