Académique Documents
Professionnel Documents
Culture Documents
Tabela de Conteúdo
1. Apresentação
2. Formas de Representação – 1 de 4
3. Formas de Representação – 2 de 4
4. Formas de Representação – 3 de 4
5. Formas de Representação – 4 de 4
6. Binário e Hexadecimal – 1 de 4
7. Binário e Hexadecimal – 2 de 4
8. Binário e Hexadecimal – 3 de 4
9. Binário e Hexadecimal – 4 de 4
10. Crescimento da Informação
11. Bytes e Words: Tamanhos
12. Padrões EBCDIC e ASCII
13. Formatos Numéricos
14. Conceitos: Hardware e Software
15. Particionamento Físico e Lógico
16. Particionamento Físico (em desuso)
17. Processamento n - way
18. Particionamento Lógico
19. CEC e CPC: Fundamentais
20. Memória: tipos e usos
21. CPU, Registradores e PSW
22. SubSistema de Canal: entrada/saída de dados
23. Visão Geral de um Sistema Computacional
24. Power On Reset e Initial Microcode Loading
25. Initial Program Loading = “boot”
26. Address Spaces e Espaços de Dados
27. Mecanismo de Memória Virtual
28. Arquivos de Paginação e Swapping
29. Mecanismo de Interrupções
30. Dispatcher: Execução de Tarefas
31. Métodos de Acesso e Blocagem
32. Métodos de Acesso: Organização Seqüencial
33. Métodos de Acesso: Organização Direta
34. Métodos de Acesso: Organização Particionada
35. Métodos de Acesso: Arquivos VSAM
36. SRM (System Resources Manager)
37. WLM (WorkLoad Manager)
38. SMF (System Management Facility)
39. RMF (Resource Measurement Facility)
40. O Mundo UNIX no Mainframe
41. O Ambiente do Usuário
42. O File System do UNIX
43. MVS, OS/390 e z/OS
44. VM e z/VM
45. O que é um MONTADOR (Assembler)
46. O que é um COMPILADOR
47. O que é um INTERPRETADOR
48. Visão Geral dos Módulos: FONTE, OBJETO e de CARGA
49. Arquivos e Atualização
50. Objetos
51. Estruturação do REXX
52. Funções do JOB Entry Subsystem
53. Inicialização do JES2 (JES2PARM)
54. RJE: Remote JOB Entry
55. NJE: Network JOB Entry
56. Diferenças para o JES3
57. SDSF System Display and Search Facility
58. Processamento Batch: Local e Remoto (RJE/NJE)
59. Processamento Interativo: TSO/E
60. Processamento Interativo: ROSCOE
61. Processamento de Transações: CICS ou IMS
62. Placas/Canais OSA
63. DCE Distributed Computing Environment
64. Célula DCE
65. Serviços de Computação Distribuída
66. Segurança no Sistema Central
67. Segurança no Ambiente DCE
68. Interoperabilidade RACF / DCE
69. Segurança na Computação em Rede
70. Leitura Módulo 2 - finalizada
Apresentação
Neste módulo veremos alguns conceitos de Hardware, Software,
Sistemas Operacionais, Aplicativos, Batch, Online e Sistemas Distribuídos.
Bom estudo!
Formas de Representação – 1 de 4
O significado de uma maçã não é alterado pelo fato dela ser conhecida por vários nomes diferentes, em
diferentes línguas, são apenas nomes e letras diferentes, para a mesma coisa.
Assim também, uma quantidade, um valor, não é alterado pelo fato de ser representado em diversas
Bases de numeração, que explicam o significado dos dígitos no número.
Formas de Representação – 2 de 4
Byte - É a convenção do número de bits que o compõe: 8 bits perfazem um byte (na França, chama-se
OCTETO)
Estes 8 bits representam 256 possibilidades: de 0 a 255, equivalentes ao número binário que contém.
Formas de Representação – 3 de 4
Mostramos acima o que queremos dizer quando anotamos o número 206 na base decimal e o seu
equivalente nas bases binária (‘11001110’) e hexadecimal (‘CE’).
A título de curiosidade, mostramos como este número seria representado, caso usássemos os algarismos
Romanos!
São usadas nos Mainframes as Bases: Binária (2), Hexadecimal (16, para Ponto Flutuante) e Decimal (10,
para Compactado).
Formas de Representação – 4 de 4
Binário e Hexadecimal – 1 de 4
Binário e Hexadecimal – 3 de 4
Números Negativos são expressos como Complemento de 2. Abaixo mostramos como obter o
Complemento de 2 de um número:
Crescimento da Informação
Esta ilustração apresenta a evolução dos múltiplos (prefixos) usados para quantificar a informação, já
que estas quantidades crescem num ritmo acelerado.
Na definição da Arquitetura do Sistema /360, o barramento de Endereços foi definido com 24 fios,
significando a possibilidade da CPU e Canais acessarem 2 elevado a 24 ou seja, 16 Megabytes de
Memória.
A próxima Arquitetura, chamada /370-XA (de eXtended Architecture), foi definida com 31 fios,
permitindo acessar 128 vezes mais dados, ou 2 Gb.
A última Arquitetura definida, chamada Arquitetura z (de Zero Down Time), com 64 fios, permite 8
bilhões de vezes a anterior, ou 16 exaBytes.
• As primeiras máquinas da Arquitetura z podiam ter até 64 Gb de Memória Central.
• Os novos equipamentos T-Rex z990 podem atingir 256 Gb de Memória Central, ou seja, um
quarto de Terabyte de Memória!
Bytes e Words: Tamanhos
O Byte é a menor unidade endereçável de memória, e o tamanho ou capacidade desta é medido pela
quantidade de Bytes que possui.
O expoente da base 2, representa o número de fios que deve ter o barramento de Endereços para que CPU
e Canais possam acessar cada byte da Memória.
Houve uma época em que a Memória era medida em quantidade de “Palavras” e cada fabricante definia
quantos Bytes tinha a Palavra da sua máquina. Embora menos usada atualmente (programadores
Assembler usam com freqüência) mas, para irmo-nos habituando com a nomenclatura, observemos os
nomes dados às associações de bytes contíguos no Mainframe, conforme a ilustração apresentada.
Por sugestão do IEEE, foram adotados novos formatos em Ponto Flutuante Binário (BFP)
A Arquitetura z acrescentou formatos de 64 bits e novas instruções para manipulá-los.
Não julgamos necessário neste momento.
Conceitos: Hardware e Software
Algumas definições que vamos precisar:
• Hardware é a parte material do computador, aquela que se
pode tocar, são as “ferragens”.
• Arquitetura é o conjunto de regras que definem quais as funções que um dado Hardware deve ter,
as instruções que deve executar, que resultados produzir e define também as interfaces, ou como o
Software irá pedir/conseguir resultados mais os mecanismos de Controle (Interrupções,
Sinalizações, etc) que caberão ao Sistema Operacional tratar.
• Design é a Tecnologia com a qual uma dada Arquitetura foi implementada. Assim sendo, posso
implementar uma mesma Arquitetura segundo diferentes Técnicas, resultando em máquinas
diferentes que realizam as mesmas funções. Com transístores Bipolares ou CMOS, com ou sem
Caches, com ou sem Pipelines, com mais ou menos Memória Associativa (CAM = Contents
Addressable Memory, as TLBs e ALBs), etc.
Para eliminar a restrição de 2 máquinas lógicas por máquina física, foi criado o conceito de
Particionamento Lógico, onde uma mesma máquina Física poderia conter 7, depois 10, depois 15 e hoje
até 30 (já está prevista a possibilidade de termos 60) máquinas Lógicas diferentes e independentes. Aqui
também, é o usuário quem decide quanto de cada recurso (Processadores, Memória e Canais) cada
máquina Lógica vai ter.
Processamento n - way
Processadores
Memórias e
CSS (Channel Sub System ou Sub Sistema de Canais).
Além destes três componentes principais, listamos outros elementos de Tecnologia:
PR/SM e LIC: Micro códigos permitiam dois modos de funcionar
Basic e LPAR modes (este último é o único disponível nas máquinas atuais)
É possível a Reconfiguração dinâmica (sem parar) de CPUs, Memórias e Periféricos
O controle do Hardware é feito pelos lap-tops, chamados SE (Support Element), ou pela HMC (Hardware
Management Console).
Mais elementos de Tecnologia: CMOS, Fonte, Bateria, Placa OSA (detalhada adiante)
Imagens são os nomes dados às cópias dos Sistemas Operacionais, que podem ser:
Para que a CPU possa fazer a “tradução” dos endereços de Memória Virtual para Real, é usado um
dispositivo de Hardware chamado DAT=Dynamic Address Translation e Tabelas dispostas na Memória
Central, chamadas de Segment e Page Tables, das quais falaremos bastante nos Cursos Presenciais.
Cada CPU tem a capacidade de realizar cálculos graças à: ALU: Unidade Aritmética e Lógica (o único
componente “ativo”) e Registradores, dos quais existem 16 de cada tipo:
De uso Geral
Controle (apenas usados pelo Sistema Operacional)
Acesso (usados pela técnica AASF, um conceito muito avançado, não relevante neste momento.
Ponto Flutuante (IBM: HFP + IEEE: BFP)
Outros registradores existentes em cada CPU: Prefix, Clock Comparator, CPU Timer.
Para determinadas Instruções, o resultado obtido pela ALU é mantido em um conjunto de 4 bits chamados
“Flags” da ALU, para indicar, após cada tipo de Instrução:
Unidades de Controle oferecem economia de escala e tomam “conta” de vários dispositivos periféricos,
como: Discos, Fitas, Terminais, Linhas de Teleprocessamento, etc.
Sub canais (ou UCW) representam os periféricos, isto é, cada Periférico tem uma porção de Memória
(numa área especial chamada HSA = Hardware System Area) associada a ele.Sub canais trabalham
assincronamente e em paralelo aos Processadores, comunicando-se com eles via Interrupções e
permitindo recuperações de erro.
Uma operação de I/O (Entrada e Saída) é conseguida pela execução de instruções de um Programa de
Canal, chamadas CCW Channel Command Word, instruindo o que ler/gravar.
Canais ESCON são compostos de fibra óptica. Estas têm vantagens na transmissão serial (luz) comparado
com a paralela (que usava eletricidade, portanto sujeita a interferências).
EMIF é uma facilidade que permite o compartilhamento de CNC, CTC, CFS e OSA.
FICON é a última “geração” de canais de fibra óptica e têm a maior vazão: 200 MB/s.
A inicialização do Hardware começa pelo processo de POR (Power On Reset), embutido no qual se dá o
IML (Initial Microcode Loading), preparando-o fisicamente para as funções lógicas que o usuário
configurou via HCD (Hardware Configuration Definition).
A ferramenta HCD é invocada num Terminal, via ferramenta TSO/E e cria dois arquivos:
IODF (Input Output Definition File), que contém as configurações de I/O para os Sistemas Operacionais
(UCB = Unit Control Block), transferidas para a área COMMON no processo de IPL (visto a seguir).
IOCDS = Input Output Configuration Data Set através de um utilitário de IOCP Input Output
Configuration Program, contendo informações como as UCW = Unit Control Word e CUCW = Control
Unit Control Word, que serão transferidas para a HSA = Hardware System Area, na Memória Central
durante o POR/IML.
O processo de POR/IML é controlado pelo SE = Support Element, um dos lap-tops presentes no
Mainframe, podendo ser iniciado de sua console ou de uma HMC = Hardware Management Console.
Apenas após a carga dos Micro-Programas é que o Hardware poderá operar. Antes deste instante, o
Hardware nem consegue “enxergar” os Periféricos existentes (não há UCW!).
A partir do POR/IML, poderão ser usadas Consoles “normais” MCS (Multiple Console Support), para
fazer a inicialização do Software via NIP (Nucleus Initialization Program) e para a comunicação com as
imagens de Sistemas Operacionais que forem carregadas pelo IPL (Initial Program Loading, o equivalente
ao “boot” do Micro).
O conteúdo dos 8 bytes do LOADPARM será explicado mais tarde. Entre outras funções, ele serve para
determinar qual carregar, dentre vários Sistemas Operacionais que possa ter.
Que módulos serão carregados, em que ordem e onde, depende de parâmetros que o pessoal de Suporte
especificou no arquivo SYS1.PARMLIB. Quais arquivos do Sistema Operacional que serão usados, estão
definidos no arquivo Catálogo Mestre (MasterCat).
Apenas um detalhe, para agilizar o carregamento das rotinas “transientes”, elas são “preparadas” e
colocadas num outro arquivo chamado PLPA Page Data Set.
Address Spaces e Espaços de Dados
Área Comum: Contém rotinas e dados/tabelas do Sistema Operacional, está mapeada em torno da linha
dos 16 Mbytes, tendo uma parte “acima” e outra “abaixo” desta linha.
Área Privada: Contém rotinas e dados do Usuário e são duas: a área acima da linha dos 16 Mbytes é
chamada Área Privada Estendida.
Para resolver os problemas de escassez de Memória Central, o Sistema Operacional lança mão dos
seguintes processos:
Page Out: para liberar Frames na Memória Central
Page In: para resolver Page-Faults, trazendo-as da Memória Auxiliar
Swap Out: para reduzir a carga do Sistema ou quando um Address Space está em WAIT, ou seja, não
pode receber CPU
Swap In: para aumentar a carga do Sistema ou quando um Address Space fica de novo READY, ou seja,
pronto para receber CPU
Mecanismo de Interrupções
Vejamos agora como atua o Componente do Sistema Operacional que administra as Tarefas a executar.
Para isso, notemos que há seis tipos de interrupções, cuja compreensão somente será necessária nos
Cursos Presenciais, e que são:
PSW Restart
External
SuperVisor Call
Program Check
Machine Check
Input/Output.
Quando ocorre qualquer interrupção num processador, um Tratador de Interrupção, específico para cada
um dos 6 tipos, recebe o controle, salva o “status” do que estava sendo executado e analisa a interrupção
para determinar as suas causas.
Passa o controle, então, para uma Rotina Específica, conforme a causa da interrupção (I/O, Program
Check, External, etc.).
Quando esta Rotina termina, passa o controle para o Dispatcher, que determina qual Task vai executar
naquele processador: ou a que foi interrompida, ou outra, que estava aguardando sua vez.
O Dispatcher recebe o controle ao fim de cada interrupção e quando rotinas do Sistema Operacional
acabaram de executar.
O Dispatcher “despacha” quem vai executar depois dele, na mesma CPU. Uma outra maneira de se
interpretar este fato é supor que, se está sendo executado o código do Dispatcher é porque esta CPU que o
executa está procurando o que ela deve fazer em seguida.
Ele sempre despacha quem estiver no topo da Fila, onde se encontram todas as Tasks que querem ganhar
CPU para executar as instruções dos Programas que representam.
Há Tasks que não estão nesta Fila, porque estão aguardando algum evento que ainda não aconteceu, como
a leitura dos dados necessários, por exemplo. Diz-se que estas
Tasks estão em WAIT. Quando o Sistema Operacional tiver completado o evento pelo qual esperam, elas
são tiradas deste estado (Wait) e ficam “prontas” (Ready) para receber CPU, na Fila do Dispatcher.
A Fila do Dispatcher contém as Tasks a executar em cada Address Space e é organizada pelo SRM
(System Resources Manager), em ordem decrescente de prioridade de execução dos Address Spaces.
Métodos de Acesso e Blocagem
Descreveremos a seguir, nos próximos parágrafos, os principais tipos de Arquivos, disponíveis nos
Mainframes.
Chamamos de Método de Acesso o conjunto de Rotinas do Sistema Operacional que se incumbem de
tratar os Arquivos.
Ao contrário dos Arquivos da Plataforma Baixa, que não têm estrutura, ou seja, começam no primeiro
byte e terminam no último, os Arquivos do Mainframe têm uma estrutura.
São compostos fisicamente de “pedaços” chamados Blocos, que podem ter o mesmo tamanho (Fixos) ou
não (Variáveis). Cada Bloco, por sua vez, pode conter apenas um “pedaço” chamado Registro Lógico, ou
vários (diz-se que o arquivo é Blocado). Quando um Programa Aplicativo solicita uma leitura ou
gravação, é de um Registro Lógico, cabendo ao Método de Acesso fazer a Blocagem e a De-Blocagem,
além da Leitura ou Gravação.
O tamanho de um Arquivo (área de dados) inicial é determinado na criação do arquivo e pode haver uma
especificação de alocação secundária para até 15 extensões.
Entradas no diretório, classificadas pelo nome do membro, apontam a localização física de seu início, na
área de dados
Membros são gravados seqüencialmente na área de dados, contígua ao diretório
Adições: novos membros são gravados a partir de onde começa o espaço livre, ampliando a área de dados
e reduzindo a área livre
Alterações: nova versão de um membro é gravada como uma adição, mas o espaço ocupado pela versão
anterior fica inacessível
Deleções: um membro pode ser deletado, mas o espaço ocupado por ele fica inacessível até ser
recuperado com um Utilitário.
KSDS - cada registro tem uma chave de identificação (key); possui um índice para permitir acesso
direto por key; é equivalente a um tipo de arquivo direto
RRDS – cada registro tem um número de identificação que corresponde à sua posição no arquivo
LDS – o significado dos dados gravados nos CI destes arquivos depende do programa que os criou, o
VSAM não reconhece nenhuma estrutura neles
Por meio de amistosos diálogos ISPF (IWMARIN0), podem ser feitas especificações quanto à definição
dos vários tipos de serviço, e ao desempenho que se espera que cada um venha a apresentar quando em
execução. O WLM se encarrega de prover a devida conversão dessas especificações para os parâmetros
internos que o SRM entende.
O WLM foi projetado para trabalhar em ambientes Sysplex, de modo que existe interação entre os WLM
que rodam em cada Imagem do Sysplex (“Bucket Broadcast”).
Este componente do z/OS é muito importante porque ele automatiza o balanceamento e a distribuição das
cargas entre as várias imagens do SysPlex a cada 10 segundos, tarefa esta difícil de ser executada por
seres humanos.
Ele recebe informação dos demais componentes, quando certos eventos ocorrem, por exemplo: fim de um
serviço, término da leitura ou gravação de um arquivo, etc.
O SMF grava essa informação, formatada em registros de tipo específico para cada evento, nos seus
arquivos com nome genérico SYS1.MANx.
Esses arquivos são periodicamente acumulados em fita, pelo programa Utilitário IFASMFDP.
Quando um período se encerra (por exemplo, um mês, uma semana), programas de consolidação são
executados para gerar relatórios a partir dos registros acumulados neste período.
Esses relatórios constituem a ferramenta de contabilização do uso dos recursos da instalação: podem
informar a quantidade de recursos consumida por cada usuário, departamento, Aplicação, quantas vezes
foi executado cada Programa, quantos términos foram anormais, que tipos de erros são mais freqüentes,
etc.
O RMF pode coletar dados no nível de um Address Space, de um Sistema ou de um Sysplex inteiro,
fornecendo informação desde qualquer imagem de um Sysplex.
O Postprocessor permite obter relatórios mais abrangentes, colhidos sobre dados históricos relativos a um
período mais longo.
Com o Spreadsheet Converter, dados do RMF podem ser downloaded para uma estação de trabalho, para
serem processados por softwares de planilha eletrônica.
O Spreadsheet Reporter é uma interface baseada em Windows, na estação de trabalho, para analisar dados
do RMF com Lotus 1-2-3 ou Excel
Kernel:
Funções de Supervisor do UNIX, suporte a serviços de Sistema; a maioria das funções no BCP (Sistema
Operacional).
Funções de suporte ao file system hierárquico do UNIX; funções no DFSMSdfp
Application Services:
Shell & Utilities - fornece a interface padrão de comandos, familiar aos usuários UNIX
Debugger - fornece comandos que permitem a depuração interativa de um programa escrito em C; é
familiar a muitos usuários UNIX
O Ambiente do Usuário
O ambiente Shell é criado em um Address Space, onde cada usuário trabalha, usando uma interface de
comandos que inclui:
por exemplo:
/usr/prog/anne/file1
O comando MOUNT permite conectar um file system de usuário a um "mount point", um diretório vazio
em outro file system.
A implementação de um Hierarchical File System é feita, sob o OS/390, ocupando espaço em disco,
num arquivo do tipo HFS.
Um arquivo HFS, que contém um file system, é um arquivo do OS/390 gerenciado pelo SMS, cujo
conteúdo o OS/390 ignora; quem interpreta e reconhece seu conteúdo é o UNIX System Services.
O OS/390 trouxe a idéia de um Sistema Servidor: era formado por uma coleção de produtos, agrupados
em torno de funções Servidoras definidas. No primeiro OS/390 V1.1, a missão de Sistema Operacional
básico foi entregue ao MVS/ESA V5.2.2, em seu estado da arte na época; produtos específicos lhe foram
agregados, formando um “pacote” Servidor para a arquitetura S/390.
O OS/390 evoluiu para o z/OS, suportando uma arquitetura de 64 bits; é a situação em que nos
encontramos. O último OS/390 é o 2.10 (release de transição), que suporta dois níveis de arquitetura, a de
31 bits e a de 64 bits, junto com o z/OS 1.1, mas somente no nível da memória Central; o tamanho limite
da memória Virtual (Address Spaces e outros espaços adicionais) ainda é limitado a 2 Gbytes (devido aos
31 bits).
Somente a partir do z/OS 1.2 a memória Virtual se estende até o limite de 64 bits da nova arquitetura z.
VM e z/VM
O propósito da Figura é ilustrar apenas algumas das possibilidades existentes. Como sabemos, uma
máquina física pode ser dividida em até 30 lógicas; aqui aparecem desenhadas apenas 5 LPARs, e em
cada uma delas pode-se colocar qualquer Sistema Operacional.
Na primeira, exemplificamos que pode estar um DOS/VSE ou o TPS (específico para Cias. Aéreas);
Na segunda, o microcódigo da Coupling Facility;
Na terceira um LINUX nativo;
Na quarta um z/OS ou OS/390 ou MVS (o último “release” saiu em 1.995!).
Na quinta e última, mostramos as possibilidades do VM ou z/VM.
Como o VM (ou z/VM) administra Sistemas Operacionais, podemos ter em baixo dele, isto é, dentro da
mesma LPAR, outros VM ou z/VM em até 5 níveis, em baixo dos quais podem estar alguns z/OS, por
exemplo! Ao lado do VM de segundo nível, podemos ter outros z/OS dando suporte ao Unix System
Server, e rodando processos Unix!
Ao lado deles, podemos definir centenas de LINUX independentes (são máquinas Virtuais), cada qual
rodando os seus Aplicativos!
Via parâmetros, o pessoal de Suporte pode dizer quanto de Memória, CPU e Canais cada LPAR receberá,
podendo compartilhar Processadores e Canais (Memória não), e pode pedir ao Micro-Código para
balancear estas cargas (IRD).
Vamos agora definir alguns conceitos que envolvem Aplicativos, Compiladores e Linguagens de
Programação:
Dicionário AURÉLIO:
MONTAGEM sf 2: Operação de reunir peças dum dispositivo, mecanismo, etc., de modo que funcione ou
preencha o seu fim.
MONTADOR: Monta as instruções, uma a uma, estando bem próximo da máquina física, daí ser
chamado de Linguagem de Baixo Nível. Em compensação, normalmente é o mais rápido das três opções.
O que é um COMPILADOR
COMPILADOR: Cria o código necessário para cumprir o propósito da instrução da Linguagem de Alto
Nível.
Cada instrução, em COBOL por exemplo, gera “n” instruções de máquina, o que torna o código maior e
geralmente, mais lento do que o equivalente em Assembler
O que é um INTERPRETADOR
INTERPRETADOR: Chama as rotinas convenientes, já prontas, para realizar o que o Usuário deseja.
Normalmente é o mais lento dos três, porque a mesma instrução, se estiver em um “loop”, será
interpretada cada vez que for necessária.
Sua grande vantagem é que o código é executado assim que terminada a Edição, não havendo a etapa de
LinkEdição (ou Binder)
Arquivos e Atualização
Input, Process, Output é uma Abordagem Sistêmica dos processos.
Ao se resolver um Problema, normalmente um Programa que faz parte de uma Aplicação, lê (Input)
Arquivos de Detalhe com as Transações ocorridas (Compra, Venda, Saque, etc., com o número da Conta
do Cliente, ou nome, ou número da peça no Estoque, etc.), processa, isto é, consiste os dados para
conferir se a transação é legítima e, se for, grava (Output) a Base de Dados, que conterá a nova posição
atualizada dos Negócios, eventualmente produzindo Relatórios onde ficam registradas as mudanças
ocorridas, datas, etc.
É muito comum que os Arquivos gravados sejam lidos no próximo Ciclo de atualizações (que pode ser
diário, mensal, etc.). Alguns arquivos precisam estar Classificados (SORT), segundo algum campo Chave,
outros Intercalados (MERGE).
Objetos
Apenas para relembrar as características de Objetos:
Data Abstraction:
Só o Objeto conhece a Estrutura dos Dados
Outros Objetos só conhecem os Serviços
Inheritance:
Herda Estrutura e Processos da Classe/Super
Polymorphism:
Mesma mensagem, resultados diferentes
As instruções que processam os Dados chamam-se Métodos e os Dados que serão processados pelas
Instruções chamam-se Atributos, em cada Instância.
A Figura mostra que, no Mainframe, o Utilitário Linkage Editor apenas processa Programas comuns,
guardando-os em PDSs comuns. Apenas o Utilitário Binder consegue tratar, tanto Programas comuns
quanto Objetos mas estes têm que ser armazenados em arquivos do tipo PDS-E (a evolução dos arquivos
PDS, justamente com estrutura adequada para abrigar Objetos).
Estruturação do REXX
Aqui veremos uma pequeníssima amostra da Linguagem REXX. Uma Exec REXX (ou, um Programa na
Linguagem REXX) é sempre formada por um programa principal e pode englobar rotinas adicionais do
usuário, como funções e subrotinas.
Tanto o programa principal, como funções e subrotinas, são formados por codificação que se enquadra em
duas categorias:
Fornecida pelo REXX - inclui as instruções básicas da linguagem e funções embutidas, ou funções REXX
Fornecida pelo TSO/E - inclui as funções de manuseio do Data Stack e funções do TSO/E REXX
Nos manuais sobre REXX, as instruções e funções são geralmente abordadas em capítulos diferentes,
conforme a divisão acima.
Existem ainda códigos criados por Programadores de Sistemas ou de Aplicações, formado por funções e
subrotinas escritos em outras linguagens que não REXX (Assembler, por exemplo).
A Linguagem REXX é muito conhecida e utilizada por Profissionais de Mainframes, sendo fácil de se
usar e permitindo desenvolver rapidamente as mais variadas soluções, às vezes Aplicações inteiras.
Na modalidade de Entrada Remota de Jobs, uma estação de trabalho remota tem os seus periféricos
conectados a uma Unidade de Controle de Comunicação (UCC) que, por sua vez, liga-se através de
canais de comunicação à unidade de Controle do CPD, usando o Address Space do VTAM como
“interface” para as funções RJE do JES.
Dessa maneira, é conseguida a cooperação entre os dois locais (às vezes usa-se Produtos como o T-BARR
para efetuar o controle) com o processamento e arquivos centralizados no CPD.
À esquerda na Figura acima, está representado um compartilhamento de SPOOL com imagens diferentes
de JES2 (que têm que estar no mesmo nível ou “release”). Todos os membros participam do processo
executando todas as suas funções.
À direita está representado o JES3 onde apenas uma das imagens é GLOBAL, sendo a única a receber
“input” e produzir “output”, além de administrar toda distribuição da carga aos LOCALs. Para isso, a
GLOBAL tem que fazer a etapa de Conversão.
O SDSF é um dispositivo opcional. É uma ferramenta para monitorar, gerenciar e controlar o Sistema;
roda como um diálogo ISPF, num Address Space de usuário TSO/E.
Oferece uma maneira fácil e eficiente de:
Jobs podem ser submetidos a partir de estações de trabalho remotas, onde tradicionalmente se usavam
terminais de RJE (Remote Job Entry).
Hoje em dia, nestas estações rodam-se programas que emulam os velhos terminais de RJE, como o T-
BARR, da BARR Systems.
Jobs também podem ser submetidos a partir de outros processadores centrais numa rede; estes
processadores podem estar rodando z/OS, OS/390, MVS, VM ou VSE, e esta possibilidade se chama NJE
(Network Job Entry).
O recurso RJE/NJE tem que ter sido ativado na definição do JES2 e, para ter acesso à Rede, é preciso
ativar o Address Space do VTAM, o Método de Acesso de comunicações do Sistema.
Quando o usuário faz um LOGON de TSO/E na Rede, este comando é recebido pelo VTAM (Virtual
Telecommunications Access Method). O VTAM interage com o Address Space TSO, para processar o
Logon do usuário e criar um Address Space para o usuário, com o nome do seu User-id de TSO/E.
Estabelecida a comunicação direta entre o VTAM e o Address Space do usuário, este pode entrar
comandos, interpretados e executados em seu próprio Address Space, para editar arquivos, submeter jobs,
examinar sysouts, executar programas, etc... Quando o usuário faz Logoff, o seu Address Space é
eliminado
A figura mostra uma configuração com o CICS/TS (Customer Information Control System - Transaction
Server) ou com o IMS/TM (Information Management System - Transaction Manager), usando mais de
um Address Space para processar suas transações, que podem atingir 36 milhões por dia!
Se o processamento da transação acessa um bancos de dados, o correspondente gerenciador de banco de
dados (DBMS – Data Base Management System) deverá ser acionado e, tipicamente, estará ocupando
seu(s) próprio(s) Address Space(s). A figura mostra alguns possíveis gerenciadores de bancos de dados,
como o DB2 e o IMS/DB da IBM e o Adabas da Software AG; mas são usados, também, o Oracle da
Oracle Corporation, e o IDMS da CA – Computer Associates.
Placas/Canais OSA
Entendamos agora como o Mainframe pode se conectar diretamente à Rede. Empresas possuíam Redes
Locais e gostariam de ligá-las aos Mainframes sem incorrer no custo de Media Access Control e portas
das controladoras 3172; foram criadas então as Placas Open Systems Adapter com os propósitos de:
Conectar redes locais diretamente ao Mainframe, sem controladora externa;
Atuar como Servidor de Rede Novell Netware (OSA tipo 1, já descontinuada).
Como as Placas se encaixam em soquetes existentes dentro do CEC, são de fácil conexão e representam
menor custo do que as opções tradicionais. Sua configuração é feita através do Address Space OSA/SF ou
de uma estação de trabalho com OS/2.
A Placa OSA1 (descontinuada) permitia emular Servidor, fazer “offload” do código do TCP/IP,
suportar LANRES e Cache do Network File System.
A Placa OSA2 permite fazer “Passthru” de SNA/APPN e TCP/IP, possibilitando a conexão em
Assinchronous Transfer Mode, além de FDDI, Token Ring e Ethernet (Fast e Gigabit).
A arquitetura DCE foi desenvolvida pela OSF (Open Software Foundation) em conjunto com diversos
fabricantes, e adotada no OS/390 e z/OS.
Uma Aplicação pode ser projetada em duas partes: uma parte Cliente, que solicita serviços, e uma parte
Servidora, que os provê. Em cada máquina que participa de uma rede DCE deve rodar um código básico
DCE, que faz a interface das Aplicações DCE com Serviços DCE e com o software de rede.
Isto permite que uma Aplicação Servidora seja localizada, independente da máquina em que está
executando, e acessada de forma transparente para a Aplicação Cliente. O efeito final é que a Aplicação
Cliente e a Aplicação Servidora parecem estar em comunicação direta.
Célula DCE
Uma Célula DCE é uma entidade administrativa que agrega diversas máquinas, todas rodando o código
básico DCE, chamado RPC (Remote Procedure Call). Uma célula DCE deve agregar todos os Servidores
dos serviços básicos da arquitetura:
Células podem estar conectadas a outras células por meio de máquinas participantes da célula, que
assumam o papel de roteadores. O componente DCE Base Services é um elemento básico; fornece os
serviços para desenvolver e rodar Aplicações Cliente/Servidor, incluindo código RPC e o serviços de
Diretório, Segurança e Tempo.
Esta Figura permite avaliar como tudo se integra através do DCE. Mainframes, Servidores e Micros, estão
totalmente integrados através das Redes WAN e LAN, permitindo que máquinas de qualquer fabricante
comuniquem-se com Softwares de qualquer provedor, cujo detalhamento faremos no último módulo de
Soluções deste Curso.
Para o Mainframe, nos Sistemas Operacionais z/OS, temos:
Sua finalidade é prevenir comunicação não autorizada para dentro ou para fora da rede interna segura.
Quando usado, está no “host” que oferece o ponto de contato único entre a rede interna e a rede externa.
Diversas técnicas, como filtros de endereços e pacotes, Servidores especiais e outras, podem ser usadas
no “host” que abriga o Firewall, para implementar a proteção desejada e constituem a essência do
componente Firewall Technologies.
Esse conjunto de informações permitirá a você, quando unido aos conteúdos dos demais Módulos,
compor uma visão abrangente acerca das soluções que podem ser desenvolvidas utilizando-se as
diferentes tecnologias de computação. Esta visão será posteriormente utilizada como a base para a etapa
presencial deste curso.
Para ter acesso ao conteúdo do Módulo 3, realize sua Avaliação, acessível a partir da página inicial do
presente Módulo.