Domanda

Ho codificato e gestito applicazioni e server Java e ASP.Net per tutta la mia carriera.Ora mi stanno indirizzando verso il coinvolgimento nei mainframe, cioè z/OS e JCL, e faccio fatica a capirci qualcosa (parlano ancora di schede perforate!).Qual è il modo migliore per imparare tutto questo dopo essere stati completamente viziati dai lussi moderni?

È stato utile?

Soluzione

Non ci sono schede perforate nei mainframe moderni, ti tengono semplicemente addosso.

Avrai difficoltà poiché ci sono ancora molte cose fatte alla "vecchia" maniera.

  • I set di dati vengono ancora allocati con proprietà come blocco fisso-80, blocco variabile-255 e così via.Pianifica il contenuto del tuo file.
  • Nessuna directory.Esistono livelli di gerarchia e sono limitati a 8 caratteri ciascuno.
  • L'interfaccia utente è ISPF, un'interfaccia utente in modalità testo con schermo verde del settimo girone infernale per coloro che non ci sono abituati.
  • La maggior parte dei lavori verrà comunque inviata come lavori batch e dovrai monitorarne l'avanzamento con SDSF (una sorta di task manager).

Queste sono alcune delle cattive notizie, ecco le buone notizie:

Ha un sottosistema USS (UNIX) quindi puoi utilizzare questi strumenti.È straordinariamente ben integrato con z/OS.Esegue Java, esegue Websphere, esegue DB2 (DB2 vero e proprio, non quello piccolo Linux/UNIX/Windows), esegue MQ, ecc. Ecc.Molti negozi eseguiranno anche z/VM, un hypervisor, sotto il quale eseguiranno molte LPAR (partizioni logiche), incluso lo stesso z/OS (copie multiple, a volte) e zLinux (SLES/RHEL).

Il mainframe non corre il rischio di scomparire presto.C'è ancora molto lavoro da fare nei vari laboratori IBM nel mondo e il sistema operativo a 64 bit (z/OS, era MVS, era OS/390, ...) ha fatto molta strada.In effetti, c'è un po' di opportunità di carriera poiché tutti i vecchi che ne sono a conoscenza hanno più di 55 anni, quindi aspettati un enorme successo nella scala aziendale se ti posizioni correttamente.

È ancora utilizzato nelle grandi aziende poiché è l'unica cosa di cui ci si può fidare per le loro transazioni: la z in System z significa zero tempi di inattività e non è solo una montatura di marketing.La potenza del mainframe non sta nella potenza della sua CPU (i singoli processori non sono così potenti ma sono disponibili in libri da 54 CPU con backup a caldo e puoi eseguire molti libri in un singolo sistema System z) ma nel fatto che tutto ciò che la CPU fa è elaborare le istruzioni.

Qualunque cosa il resto viene scaricato su processori specializzati, zIIP per DB2, zAAP per carichi di lavoro Java, altri dispositivi per I/O (e l'I/O è il luogo in cui il mainframe uccide ogni altro sistema, utilizzando fibre ottiche e molto array di dischi di grandi dimensioni).Non lo userei per il ripiegamento delle proteine ​​o il sequenziamento del genoma, ma è l'ideale per i livelli di elaborazione delle transazioni massicciamente mirati.

Come ho affermato, z/OS ha un sottosistema UNIX e z/VM può eseguire più copie di z/OS e altri sistemi operativi: ho visto un singolo box z800 eseguire decine di migliaia di istanze di RHEL contemporaneamente.Ciò fa vergognare tutte le affermazioni "verdi" dei produttori di PC e le comunicazioni tra le istanze sono incredibilmente veloci con HyperSockets (TCP/IP ma utilizzando memoria condivisa anziché attraverso cavi di rete lenti (sì, anche Gigabit Ethernet striscia rispetto a HyperSockets (e mi spiace per le parentesi nidificate :-))).

Gestisce Websphere Application Server e Java abbastanza bene nello spazio Unix pur consentendo l'esecuzione anche di tutto il materiale legacy (heritage?).In effetti, i negozi di mainframe non hanno affatto bisogno di acquistare server basati su PC, si limitano a installare alcune VM zLinux ed eseguire tutto su un'unica macchina.

E di recente si parla del fatto che IBM potrebbe fornire dispositivi plug-in xSeries (ovvero PC) anche per i propri mainframe.Mentre la maggior parte degli utenti mainframe la considererebbe una verruca sul lato della loro bella scatola, in realtà apre un quantità di possibilità per i fornitori terzi.Non sono sicuro che saranno mai in grado di eseguire 50.000 istanze di Windows, ma questo è il genere di cosa a cui sembrano mirare (un anello per domarle tutte?).

Se sei interessato, c'è un emulatore System z chiamato Hercules che ho visto funzionare a 23 MIPS su una macchina Windows ed esegue l'ultimo MVS 3.8j legalmente utilizzabile abbastanza velocemente da avere un'idea.Tieni presente che MVS 3.8j sta a z/OS 1.10 come CP/M sta a Windows XP.

Per fornire una spudorata conclusione a un libro scritto da uno dei miei amici al lavoro, dai un'occhiata Cosa diavolo è un mainframe? di David Stephens (ISBN-13 = 978-1409225355).L'ho trovato prezioso poiché provenivo da un background PC/UNIX, ed è un vero cambiamento di paradigma.Penso che questo libro sarebbe l’ideale per la tua domanda particolare.Penso che alcune parti siano disponibili su Google Libri, quindi puoi provarle prima di acquistarle.

Per quanto riguarda JCL, c'è una scuola di pensiero secondo cui è stato scritto un solo file JCL e tutti gli altri erano lavori taglia e incolla su quello.Avendo visto il loro contenuto, posso capirlo.Programmi come IEBGENER e IEFBR14 fanno sembrare Unix, se non prolisso, almeno comprensibile.

Altri suggerimenti

Per prima cosa equivoco è beleiving la "L" in JCL. JCL è neanche un linguaggio di programmazione è davvero una dichiarazione statica di come un programma dovrebbe funzionare e quali file, ecc dovrebbe usare.

In questo modo è molto simile (anche se superiore a) le spahetti di configurazione XML utilizzato per controllare tale software "moderna" come la primavera, hebernate e formica.

Se si pensa di esso in questi termini tutto sarà chiaro.

cultura mainframe è guidato da due fisse incompatibili quanto seemingky.

  1. compatibilità con le versioni precedenti. È comunque possibile eseguire eseguibili scritti e compilati nel 1970. vecchi JCL e script quarantenne ancora correre e lavorare!
  2. Bleeding prestazioni bordo. Si possono avere 128 CPU su quattro macchine in due data center che lavorano su una singola query DB2. Verrà eseguito le più recenti applicazioni di J2EE (Websphere) più velocemente di qualsiasi altra macchina.

Se mai partecipare con CICS (server di transazione mainframe) su z / OS, vorrei raccomandare il libro "applicazioni, progettazione e la programmazione CICS" .
E 'molto utile.
alt text http://img18.imageshack.us/img18/7031/designingandprogramming.gif

Se avete intenzione di essere coinvolti con lo sviluppo di applicazioni legacy tradizionali, leggere libri di Steve Eckols. Essi sono piuttosto buone. È necessario confrontare i termini da sistemi aperti per mainframe, che ridurrà il tempo di apprendimento. Un paio di esempi I file vengono chiamati set di dati su mainframe JCL è più simile a uno script di shell sub programmi / routine o come funzioni comuni ecc ... Buona fortuna ...

La mano più tenuta all'inizio del meglio. Ho fatto il lavoro su un mainframe come stagista e non è stato facile anche se ho avuto un abbastanza forte background UNIX. Vi consiglio di chiedere a qualcuno che lavora nel reparto di mainframe per passare un giorno o due si insegnando i principi fondamentali. formazione IBM può essere utile pure, ma non ho alcuna esperienza con esso in modo non può garantire che lo farà. Ho messo la mia storia di imparare come utilizzare il mainframe di seguito per un certo contesto. È stato deciso che tutti gli stagisti stavano per imparare ad utilizzare il mainframe come un progetto estivo che avrebbe preso il 20% del tempo lì. E 'stato un disastro completo dal momento che tutti i tirocinanti accettarmi lavoravano in aree non mainframe e aveva nessuno che potevano urlare sopra la parete del cubo per chiedere aiuto. L'ambiente ISPF e JCL è stato quello di estraneo per loro di entrare abile con rapidamente. L'unico successo che avevano era di programmazione di base sotto USS dal momento che è fondamentalmente UNIX e università li familiarizzato con questo. Ho avuto più fortuna per due motivi. Uno ho lavorato in un gruppo di circa 20 programmatori mainframe così è stato in grado di avere qualcuno sedersi con me su base regolare per aiutarmi a capire JCL, la presentazione di posti di lavoro, ecc In secondo luogo ho usato Rational Developer per System z quando è stato chiamato Developer di WebSphere per System z. Questo mi ha dato una GUI per lo più utilizzabile che mi permetta di eseguire la maggior parte attività quali la presentazione di posti di lavoro, la modifica di set di dati, l'assegnazione set di dati, programmi di debug, ecc Anche se non è stato lucidato è stato sufficiente utilizzabile e significava non ho dovuto imparare ISPF. Il fatto che ho avuto un IDE basato Eclipsed per fare i compiti mainframe di base è diminuita la curva di apprendimento in modo significativo e mi ha costretto solo per imparare nuove tecnologie, non come JCL un ambiente completamente nuovo. Come ulteriore nota ora uso ISPF dal momento che il software necessario per consentire razionale per funzionare su mainframe non è stato installato su uno dei sistemi di produzione che ho usato in modo ISPF era l'unica scelta. Ora trovo che ISPF è più veloce quindi razionale Developer e io sono più efficienti con esso. Questo è solo perché sono stato in grado di apprendere la tecnologia di base, come JCL con Rational e l'interfaccia ISPF in un secondo momento. Se Ho dovuto imparare entrambi contemporaneamente, sarebbe stato molto più difficile e ha richiesto più uno su un'istruzione.

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