Mostrar mensagens com a etiqueta cartão. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta cartão. Mostrar todas as mensagens

quinta-feira, 27 de fevereiro de 2020

📌 O que é JCL (visão geral)

 

.



📌 O que é JCL (visão geral)

  • JCLJob Control Language — é a linguagem de controle de jobs que instrui o sistema operacional IBM Mainframe sobre quais programas executar, com quais dados e recursos, em que sequência e como tratar saídas/erros. Wikipedia

  • Foi projetado para batch processing, declarando tudo explicitamente para evitar conflitos de recursos e permitir alocação antecipada de dispositivos/datasets. codedocs.org


🕰️ Linha do tempo da evolução do JCL

1) OS/360 – Introdução (1964–1966)

  • Data: meados da década de 1960 — cerca de 1964–1966. Grokipedia+1

  • Plataformas: OS/360 e DOS/360.

  • O que mudou:

    • JCL original lançada com o OS/360 (e paralelo no DOS/360) para controlar jobs batch nos recém-lançados System/360.

    • Sintaxe inicial baseada em cartões perfurados (JOB, EXEC, DD).

    • Estabelece a base do modelo que persiste até hoje.

  • Observação: essa é a primeira e principal “release” histórica — não existiam versões numeradas de JCL separadas do sistema operacional; era evoluído conforme OS/360 evoluía. Grokipedia

📌 Curiosidade: Fred Brooks — um dos líderes do projeto OS/360 — brincou que JCL foi “a pior linguagem já criada” devido à sua complexidade e rigidez, mas ela persistiu porque funcionava dentro das restrições daquele hardware/era. Wikipedia


2) MVS (Multiple Virtual Storage) — Evolução do JCL (1974+)

  • Data: 1974 e anos subsequentes. Wikipedia

  • Plataformas: OS/VS2 avançou para MVS — a base para os sistemas 370 e além.

  • O que mudou:

    • Introdução de virtual storage, multiprogramação e melhores capacidades de gestão de jobs.

    • JCL foi mantido compatível com versões anteriores, mas ganhou novas opções para dataset allocation, múltiplos steps, procedures etc.

  • Notas:

    • Nas versões MVS, o JCL permaneceu essencialmente o mesmo por compatibilidade, mas parâmetros novos foram adicionados conforme o sistema operacional expandiu funções (virtual storage, JES etc.). mainframemaster.com


3) OS/390 – Consolidando MVS (1995)

  • Data: 1995. Wikipedia

  • Plataforma: OS/390 (a evolução do MVS com pacotes completos — DFSMShsm, JES2/JES3 etc.).

  • O que mudou:

    • JCL não teve uma revisão revolucionária aqui; mas foi formalizado junto ao pacote OS/390.

    • Houve refinamentos de parâmetros e melhor suporte de integração entre subsistemas (JES, utilities, catalogação).

  • Importante: ainda não havia “JCL 2.0/3.0” no sentido de uma linguagem separada — as mudanças são ligadas à evolução dos operating systems.


4) z/OS – Era moderna (2000 até agora)

  • Data: 2000 (lançamento inicial do z/OS) até as releases atuais como z/OS 3.1, 3.2… (2020s). Grokipedia

  • Plataforma: z/OS (principal OS de mainframe IBM) com JES2/JES3.

  • O que mudou no JCL:

    • Backward compatibility total com JCL legado (jobs escritos décadas atrás ainda rodam em z/OS). Wikipedia

    • Novos parâmetros e recursos, como:

      • Manipulação de datasets inline e melhores constructs (ex: IF/THEN/ELSE no próprio JCL). Reddit

      • Suporte para novos dispositivos e sistemas de arquivos (Unix System Services).

      • Suporte a SYSIN/SYSOUT mais flexível e melhor integração com subsistemas modernos.

    • Integração com ferramentas de desenvolvimento modernas (IDE, JCL linters, LSP, integração com Git via Zowe etc.). ibm.github.io


📋 Como contar “releases” do JCL?

Diferente de linguagens como C ou Java, JCL não tem uma lista de versões como “JCL 1.0, 2.0, 3.0” — sua evolução está intrinsecamente ligada às versões dos sistemas operacionais IBM para mainframes:

Ano / PeríodoPlataforma/ReleasePrincipais mudanças no JCL
~1964–67OS/360 / DOS/360Introdução da JCL, JOB/EXEC/DD básicos, batch streams. Grokipedia
Anos 1970MVS (OS/VS2 → MVS)Virtual storage, procedures catalogadas, expansão de parâmetros. Wikipedia
1995OS/390Consolidação do pacote, recuperação de recursos e JES. Wikipedia
2000+z/OS (3.x, 4.x…)Back-compatibility, novo hardware, sistemas de arquivos modernos, integração com DevOps. ibm.github.io

📌 O que geralmente muda em JCL

Em termos gerais, as mudanças no JCL tendem a ser:

Novos parâmetros de DD/EXEC/JOB conforme o OS adiciona recursos. mainframemaster.com
Suporte a novas estruturas de dados ou subsistemas (ex: Unix System Services, datasets VSAM). IBM
Aprimoramentos de controle condicional e procedimentos. Reddit
Integração com ferramentas modernas (editores, validação, IDE). ibm.github.io


📌 Resumo (Estilo “Bellacosa Mainframe”)

  1. 1964–1966 – OS/360 & DOS/360: JCL nasce e define modelo. Grokipedia

  2. 1974+ – MVS: JCL cresce com virtual storage e multiprogramação. Wikipedia

  3. 1995 – OS/390: Pacote consolidado, refinamentos. Wikipedia

  4. 2000+ – z/OS (3.x, 4.x…): Evolução contínua, backward compatibility e suporte a tecnologias modernas.