Pergunta

Eu tenho de codificação e gerenciamento de Java e ASP.Net aplicativos e servidores para toda a minha carreira. Agora eu estou sendo dirigida para envolvimento em mainframes, ou seja, z / OS e JCL, e eu estou encontrando dificuldades para envolver minha cabeça em torno dele (eles ainda falar sobre cartões perfurados!). Qual é a melhor maneira de ir sobre a aprendizagem de tudo isto depois de ter sido completamente estragada por luxos modernos?

Foi útil?

Solução

Não há cartões perfurados em mainframes modernos, eles estão apenas tê-lo por diante.

Você terá um tempo difícil, já que ainda há muitas coisas a maneira "velha".

  • Os conjuntos de dados ainda são alocados com propriedades como bloco fixo-80, variável-block-255 e assim por diante. Plano de suas conteúdo do arquivo.
  • Não diretórios. Há níveis de hierarquia e eles estão limitados a 8 caracteres cada.
  • A interface de usuário é ISPF, uma interface de usuário em modo texto de tela verde a partir do sétimo círculo do inferno para aqueles que não estão acostumados a isso.
  • A maioria dos trabalhos ainda será submetido a trabalhos em lotes e você terá que monitorar seu progresso com SDSF (espécie de gerenciador de tarefas).

Isso é um pouco da má notícia, aqui está a boa notícia:

Ele tem um subsistema de USS (UNIX) para que você possa usar essas ferramentas. É muito bem integrado com z / OS. Ele roda Java, ele é executado Websphere, corre DB2 (DB2 adequada, não que pouco Linux / Unix / Windows um), ele é executado MQ, etc, etc. Muitas lojas também irá executar z / VM, um hypervisor, em que eles vão executar muitos LPARs (partições lógicas), incluindo-se (várias cópias, às vezes) z / OS e zLinux (SLES / RHEL).

O mainframe não está em perigo de desaparecer tão cedo. Há ainda uma grande quantidade de trabalho a ser feito nos vários laboratórios da IBM em todo o mundo e o sistema operacional de 64 bits (z / OS, foi MVS, foi OS / 390, ...) já percorreu um longo caminho. Na verdade, há um pouco de uma oportunidade de carreira como todos os oldies que sabem sobre ele são iguais ou acima de 55 anos de idade, por isso esperamos um enorme sucção até a escada corporativa, se você posicionar-se corretamente.

É ainda utilizado nas grandes corporações, pois é a única coisa que pode ser confiável com suas transações - o z no meio System z zero downtime e isso não é apenas marketing hype. O poder das mentiras de mainframe não nele do grunhido CPU (os processadores individuais não são tão poderosos, mas eles vêm em livros de 54 CPUs com backups quentes, e você pode executar muitos livros em uma única caixa System z), mas no fato de que toda a CPU não é instruções de processo.

Tudo else é transferida para processadores especializados, zIIPs para DB2, zAAPs para cargas de trabalho Java, outros dispositivos para I / O (E / S é o lugar onde o mainframe mata todos os outros sistemas, usando fibra óptica e muito grandes arrays de disco). Eu não iria utilizá-lo para o dobramento de proteínas ou seqüenciamento do genoma, mas é ideal para onde é alvo, níveis massivamente insanas de processamento de transações.

Como afirmei, z / OS tem um subsistema de UNIX e z / VM pode executar várias cópias do z / outros sistemas operacionais OS e - Eu vi um único z800 caixa correndo dezenas de milhares de casos de RHEL simultaneamente. Tudo isso coloca os fabricantes de PC 'verde' afirma vergonha e comunicação entre as instâncias é extremamente rápido com HyperSockets (TCP / IP, mas usando memória compartilhada em vez de através de cabos de rede lentas (sim, mesmo Gigabit Ethernet rastreia comparação com HyperSockets (e desculpe os parênteses aninhados: -.)))

Ele roda Websphere Application Server e Java muito bem no espaço Unix e ainda permite que toda a herança (herança?) Coisas a correr bem. Na verdade, lojas de mainframe não precisa comprar servidores baseados em PC em tudo, eles só plonk para baixo alguns zLinux VMs e executar tudo na caixa de um.

E, recentemente, há uma conversa sobre isso IBM pode estar fornecendo xSeries (ou seja, PCs) do plugin dispositivos para seus mainframes também. Enquanto a maioria de mainframe pessoas consideraria que uma verruga no lado de sua caixa bonita, que faz abrir um muito de possibilidades para os fornecedores de terceiros. Eu não tenho certeza que eles nunca vai ser capaz de executar 50.000 casos de Windows, mas esse é o tipo de coisa que eles parecem estar apontando para (um anel para governá-los todos?).

Se você estiver interessado, há uma System z emulador chamado Hercules que eu vi rodando a 23 MIPS em uma caixa de Windows e é executado a última 3,8J MVS legalmente utilizável rápido o suficiente para chegarum sentimento. Basta ter em mente que MVS 3,8J é z / OS 1.10 como CP / M é para o Windows XP.

Para fornecer um plug descarado para um livro de um dos meus amigos no trabalho tem escrito, veja O que na terra é um Mainframe? por David Stephens (ISBN-13 = 978-1409225355). Eu encontrei este inestimável desde que eu vim de um PC / fundo UNIX, e é bastante uma mudança de paradigma. Eu penso que este livro seria ideal para a sua pergunta particular. Eu acho que pedaços dele estão disponíveis no Google Livros para que você possa experimentar antes de comprar.

Em relação JCL, há uma escola de pensamento que apenas um arquivo JCL já foi escrito e todos os outros estavam empregos cut'n'paste sobre isso. Tendo visto o conteúdo deles, eu posso entender isso. Programas como IEBGENER e IEFBR14 fazer Unix olhar, se não detalhado, pelo menos compreensível.

Outras dicas

Você primeiro equívoco é beleiving o "L" no JCL. JCL não é um linguagem de programação é realmente uma declaração estática de como um programa deve ser executado e quais arquivos etc. ele deve usar.

Desta forma, é muito parecido (embora superior a) os spahetti de configuração XML que é usado para controlar o software como "moderna" como a primavera, hebernate e Ant.

Se você pensar sobre isso nestes termos tudo ficará claro.

cultura Mainframe é impulsionada por duas obsessões incompatível seemingky.

  1. compatibilidade com versões anteriores. Você ainda pode executar arquivos executáveis ??escritos e compilados em 1970. JCL e scripts anos de idade quarenta ainda correr e trabalhar!
  2. Bleeding desempenho borda. Você pode ter 128 CPUs em quatro máquinas em dois centros de dados que trabalham em uma única consulta DB2. Ele irá correr as aplicações mais recente J2EE (Websphere) mais rápido do que qualquer outra máquina.

Se você nunca se envolver com CICS (servidor de transações mainframe) em z / OS, Eu recomendaria o livro "Designing e aplicações CICS Programação" .
É muito útil.
texto alt http://img18.imageshack.us/img18/7031/designingandprogramming.gif

Se você estiver indo para ser envolvido com o desenvolvimento tradicional aplicações legadas, ler livros por Steve Eckols. Eles são muito bons. Você precisa comparar os termos de sistemas abertos para mainframes que irá reduzir o seu tempo de aprendizagem. Pares de exemplos Arquivos são chamados de conjuntos de dados em mainframes JCL é mais como um script shell sub programas / rotinas ou como funções comuns etc ... Boa sorte ...

O mais mão segurando no início melhor. Eu tenho feito um trabalho em um mainframe como estagiário e não foi fácil, embora eu tivesse um fundo bastante forte UNIX. Eu recomendo pedir a alguém que trabalha no departamento de mainframe para passar um dia ou dois ensinar-lhe o básico. formação IBM pode ser útil também, mas eu não tenho nenhuma experiência com ele, portanto, não pode garantir que vai. Eu coloquei minha história sobre a aprendizagem de como usar o mainframe abaixo para obter algum contexto. Foi decidido que todos os internos estavam indo para aprender a usar o mainframe como um projeto de verão que levaria 20% de há tempo. Foi um desastre completo já que todos os estagiários me aceitar estavam trabalhando em áreas não de mainframe e não tinha ninguém que pudesse gritar por cima do muro cubo para pedir ajuda. O ambiente ISPF e JCL era estranha para elas para obter proficiente com rapidez. O único sucesso que eles tinham era programação básica sob USS uma vez que é, basicamente, UNIX e faculdade familiarizou-los com isso. Eu tive mais sorte por duas razões. Um eu trabalhei em um grupo de cerca de 20 programadores de mainframe por isso foi capaz de ter alguém sentar-se comigo em uma base regular para me ajudar a descobrir JCL, enviar tarefas, etc. Em segundo lugar eu usei Rational Developer for System z quando foi chamado WebSphere Developer for System z. Isso me deu uma GUI principalmente utilizável que me deixe executar a maioria das tarefas, tais como o envio de trabalhos, edição de conjuntos de dados, alocação de conjuntos de dados, depuração de programas, etc. Embora não tenha sido polido foi o suficiente utilizável e significava que eu não tenho que aprender ISPF. O fato de que eu tinha um IDE baseado Eclipsed para fazer tarefas básicas de mainframe diminuiu a curva de aprendizagem significativa e significava que eu só tinha de aprender novas tecnologias, como JCL não um ambiente totalmente novo. Como mais uma nota que eu agora usar ISPF uma vez que o software necessário para permitir Rational para executar no mainframe não foi instalado em um dos sistemas de produção que eu usei tão ISPF era a única opção. Agora eu descobrir que ISPF é mais rápido, então Rational Developer e eu sou mais eficiente com ele. Esta é apenas porque eu era capaz de aprender a tecnologia subjacente, como JCL com o Rational ea interface ISPF em uma data posterior. Se eu tive que aprender ambos ao mesmo tempo, teria sido muito mais difícil e exigiu mais um em uma instrução.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top