Mainframe
Origem: Wikipédia, a enciclopédia livre.
Um mainframe é um computador de grande porte, dedicado normalmente ao processamento de um volume grande de informações. Os mainframes são capazes de oferecer serviços de processamento a milhares de usuários através de milhares de terminais conectados diretamente ou através de uma rede. (O termo mainframe se refere ao gabinete principal que alojava a unidade central de processamento nos primeiros computadores.).
Embora venham perdendo espaço para os servidores de arquitetura PC e servidores Unix, de custo bem menor, ainda são muito usados em ambientes comerciais e grandes empresas (bancos, empresas de aviação, universidades, etc.).
São computadores que geralmente ocupam um grande espaço e necessitam de um ambiente especial para seu funcionamento, que inclui instalações de refrigeração (alguns usam refrigeração a água). Os mainframes são capazes de realizar operações em grande velocidade e sobre um volume muito grande de dados.
[editar] História
Os mainframes nasceram em 1946 e foram sendo aperfeiçoados. Em 7 de abril de 1964, a IBM apresentou o System/360, mainframe que, na época, foi o maior projeto de uma empresa. Desde então, outras empresas -- como a HP e a Burroughs (atual Unisys) -- lançaram seus modelos de mainframe. Existem mainframes em operação no mundo inteiro.
Contemporaneos aos /360 da IBM foram os Burrough B-200, B-300 e B-500 (de pequeno porte) e os B-5500 (de grande porte).
Posteriormente a IBM lançou a série /370, e a Burroughs por sua vez lancou as máquinas de terceira geração: B-3500 e B-6500, sucedidas pela série 700: B-3700 e B-6700.
No fim da década de 70, ao mesmo tempo que cresciam os sistemas destinados a grandes corporações, começaram a reduzir o tamanho de uma série das máquinas para chegar a clientes menores: a IBM lançou o /3 e a Burroughs a série B-1700 e posteriormente o B-700, máquinas de quarta geração, cujo software básico era escrito em MIL (Micro Implemented Language) e SDL (Software Development Language). Foram as primeiras máquinas Burroughs microprogramáveis, o que lhes dava uma flexibilidade impar. Estas máquinas marcaram o início do uso de circuitos integrados com tecnologia TTL com integração em média escala (MSI).
Hoje, segundo especialistas, há uma forte tendência de crescimento para este setor, inclusive com as novas versões do Cobol (principal linguagem usada nos Mainframes) usando ambiente gráfico.
[editar] Mainframes versus supercomputadores
A distinção entre supercomputadores e mainframes não é clara e direta, mas geralmente falando, os supercomputadores são utilizados na solução de problemas em que o tempo de cálculo é um limite, enquando os mainframes são utilizados em tarefas que exigem alta disponibilidade e envolvem alta taxa de transferência de dados (internos ou externos ao sistema). Como consequência:
- os supercomputadores são mais complexos do ponto de vista do programador, devido ao alto grau de paralelismo na execução das instruções e pelo fato de que, ao contrário dos mainframes, não existe uma camada de abstração que esconde estas questões;
- os supercomputadores são otimizados para realização de tarefas complicadas utilizando principalmente a memória, enquanto os mainframes são otimizados para realizar tarefas que acessam grandes quantidades de informação oriunda de bases de dados;
- normalmente os supercomputadores são utilizados em aplicações científicas e militares, enquanto os mainframes são voltados a aplicações civis, sejam governamentais ou empresariais. A análise de modelos de clima, análise estrutural de proteínas e processamento de filmes digitais são tarefas bastante apropriadas para os supercomputadores. O processamento de cartões de crédito, gerenciamento de contas bancárias, negociações mercantis e processamento de seguro social são tarefas normalmente realizadas por mainframes. (Uma exceção: certas aplicaçãoes militares exigem um nível de segurança muito alto, que é uma forte característica dos mainframes);
- as tarefas executadas pelos supercomputadores toleram interrupções (por exemplo, cálculos de modelos de previsão de aquecimento global ou pesquisa acadêmica). Os mainframes executam tarefas que exigem alta disponibilidade, podendo executar serviços continuamente por anos (por exemplo, sistemas de emissão de passagens aéreas ou processamento de cartões de crédito);
- os supercomputadores são construídos para atender uma finalidade específica. Os mainframes são construídos para realizar uma grande variedade de tarefas de execução diária;
- os mainframes suportam totalmente o software antigo (no caso da IBM, inclusive aplicações escritas na década de 60) convivendo com novas versões. No caso dos supercomputadores, a tendência é ignorar a compatibilidade retroativa de software no projeto de novos sistemas;
- os mainframes possuem um grande número de processadores que auxiliam os processadores centrais. Eles são utilizados em funções de criptografia, gerenciamento de I/O, monitoração do ambiente, manipulação de memória, e etc. Devido a esta característica o número de processadores dos mainframes é muito maior do que se esperaria. Os projetos de supercomputadores não incluem este grande número de processadores de uso específico já que eles não adicionam poder de processamento de cálculo.