Cosa c'è di nuovo nell'assemblatore PL / I, DB2 e S / 390?

4

Ho un prossimo colloquio tecnico con un ex datore di lavoro che si concentrerà su PL / I, DB2 e ISPF. Il lavoro sarà con sistemi che ho architettato e scritto 20 anni fa. I pochi anni di programmazione professionale che ho fatto da allora erano tutti linguaggio di assemblaggio. Il problema è che non ho programmato professionalmente in 15 anni, e la programmazione personale che ho fatto da allora è stata in altre lingue "moderne". La mia domanda è se ci sono nuove funzionalità in PL / I e DB2 di cui dovrei essere a conoscenza. (Durante la navigazione negli ultimi "Principi di funzionamento" ho visto le istruzioni della macchina per supportare le stringhe in stile C che non erano presenti nei tempi antichi - cool.)

    
posta MF Dinosaur 02.03.2012 - 06:37
fonte

2 risposte

7

PL / I affatto come non è cambiato molto affatto come lingua. L'implementazione è cambiata drasticamente poiché sotto le copertine il compilatore è effettivamente un pre processore per il compilatore C ++. Questa modifica ha reso problematico il multi-threading PL / I nativo.

ISPF è lo stesso di sempre, non è cambiato nulla negli ultimi 20 anni. La maggior parte dei negozi Z / OS che stanno facendo qualsiasi tipo di sviluppo utilizza gli strumenti basati su workstation Rational che consentono lo sviluppo e il debug da eseguire sul PC (anche se la compilazione e l'esecuzione sono in esecuzione nel mainframe stesso). / p>

DB2 si sta muovendo bene con i tempi. CLOBS, BLOB, interi a 64 bit, supporto XML nativo più una miriade di prestazioni e miglioramenti della connettività.

I cambiamenti interessanti di zOS negli ultimi anni sono: -

  • Cluster di Sysplex.
  • indirizzamento a 64 bit
  • C, C ++ completamente supportato in tutti gli ambienti (batch, cics e USS) come linguaggio di prima classe.
  • USS - un sottosistema completo POSIX unix compatibile, come utente UNIX di vecchio posso onestamente dire che non sapresti che non era davvero un box unix a meno che tu non sapessi esattamente dove cercare.
  • Supporto Java (eseguito all'interno di USS) jVM java a 64 bit super-duper, esegue qualsiasi file JAR che non abbia dipendenze JNI.
  • Oltre a USS e Java, il server di applicazioni Websphere J2EE funziona bene.

Tuttavia, alcune cose non cambiano mai, JCL è ancora lì, i CLIST sono orribili come sempre e IBM rinomina i loro prodotti ogni poche settimane, quindi non è mai possibile trovare i manuali sul Web.

    
risposta data 02.03.2012 - 10:21
fonte
2

Un bel cambiamento con DB2 è che il codice z / OS e LUW (Linux / UNIX / Windows) si avvicina sempre di più per quanto riguarda la funzionalità. Dal V8, DB2 ora memorizza tutto ciò che è interno nelle sue tabelle di sistema come Unicode, traducendo i CCSID ZPARM specificati secondo necessità. È anche molto più flessibile con diversi CCSID e Unicode nei dati dei caratteri.

ISPF offre un ottimo supporto per i file memorizzati nel file system USS - ad esempio, nel campo "altro set di dati", puoi inserire i nomi dei percorsi. Se si dispone di una directory, si otterrà un elenco di file simile all'elenco dei membri PDS standard.

Una cosa che potresti ricordare da tanto tempo fa era l'opinione piuttosto lugubre di Language Environment (LE). Ci sono voluti diversi anni, ma LE ora è un tempo di esecuzione stabile, e rende molto più semplice la combinazione di linguaggi come PL / I e C in un ambiente. COBOL e Assembler hanno ancora qualche stranezza in quest'area, ma sono facili da gestire.

Dal lato dell'assemblatore, prendi l'ultimo POP e guarda tutte le nuove istruzioni. A seconda dell'hardware del negozio, tuttavia, alcuni di quelli veramente nuovi potrebbero non essere disponibili, come le istruzioni di confronto e diramazione (introdotte con lo z196 / z114 attuale). Tutte le macchine ora sono a 64 bit e C / C ++ può generare codice per AMODE 64.

Se ci si dilettava dal lato del sistema in assembler, C ha una funzione METAL progettata per l'uso in luoghi in cui si poteva usare solo l'assemblatore in passato; il codice METAL non usa LE e ha un numero limitato di routine di libreria C standard.

    
risposta data 03.03.2012 - 00:27
fonte

Leggi altre domande sui tag