Projeto IBM Future Systems - IBM Future Systems project

O projeto Future Systems (FS) foi um projeto de pesquisa e desenvolvimento realizado na IBM no início dos anos 1970, com o objetivo de desenvolver uma linha revolucionária de produtos de computador, incluindo novos modelos de software que simplificariam o desenvolvimento de software ao explorar hardware moderno e poderoso .

Histórico e objetivos

Até o final da década de 1960, a IBM vinha obtendo a maior parte de seu lucro com hardware, agrupando software e serviços de suporte junto com seus sistemas. Apenas o hardware tinha uma etiqueta de preço, mas esses preços incluíam uma alocação para software e serviços.

Outros fabricantes passaram a comercializar hardware compatível, principalmente periféricos como fitas e drives de disco , a um preço significativamente inferior ao da IBM, diminuindo assim a base possível de recuperação do custo de software e serviços. No início de 1971, depois que Gene Amdahl deixou a IBM para abrir sua própria empresa oferecendo mainframes compatíveis com a IBM , uma força-tarefa interna da IBM (projeto Counterpoint) concluiu que o negócio de mainframe compatível era de fato um negócio viável e que a base para cobrar por software e os serviços como parte do preço do hardware desapareceriam rapidamente.

Outra questão estratégica era que o custo de computação estava diminuindo constantemente, enquanto os custos de programação e operações, sendo compostos de custos de pessoal, aumentavam constantemente. Portanto, a parte do orçamento de TI do cliente disponível para fornecedores de hardware seria significativamente reduzida nos próximos anos e, com isso, a base para a receita da IBM. Era imperativo que a IBM, ao lidar com o custo de desenvolvimento de aplicativos e operações em seus produtos futuros, reduzisse ao mesmo tempo o custo total de TI para os clientes e capturasse uma parte maior desse custo.

Ao mesmo tempo, a IBM estava sob ataque legal por sua posição dominante e sua política de empacotar software e serviços no preço do hardware, de modo que qualquer tentativa de "re-empacotamento" de parte de suas ofertas tinha que ser firmemente justificada por uma técnica puramente base, de modo a resistir a qualquer contestação legal.

Em maio-junho de 1971, uma força-tarefa internacional reuniu-se em Armonk sob o comando de John Opel , então vice-presidente da IBM. Sua tarefa era investigar a viabilidade de uma nova linha de computadores que aproveitaria as vantagens tecnológicas da IBM para tornar obsoletos todos os computadores anteriores - ofertas compatíveis, mas também produtos da própria IBM. A força-tarefa concluiu que valia a pena prosseguir com o projeto, mas que a chave para a aceitação no mercado era uma redução de ordem de magnitude nos custos de desenvolvimento, operação e manutenção de software aplicativo.

Os principais objetivos do projeto FS foram, consequentemente, declarados da seguinte forma:

  • tornar obsoleto todos os equipamentos de computação existentes, incluindo os da IBM, explorando totalmente as tecnologias mais recentes,
  • diminuem muito os custos e esforços envolvidos no desenvolvimento e operações de aplicativos,
  • fornecer uma base tecnicamente sólida para re-empacotamento, tanto quanto possível das ofertas da IBM (hardware, software e serviços)

Esperava-se que uma nova arquitetura que fizesse um uso mais pesado dos recursos de hardware, e cujo custo estava caindo, pudesse simplificar significativamente o desenvolvimento de software e reduzir custos para a IBM e para os clientes.

Tecnologia

Acesso de dados

Um princípio de design do FS foi um " armazenamento de nível único " que estendeu a ideia de memória virtual para cobrir dados persistentes. Memória de trabalho, arquivos e bancos de dados foram todos acessados ​​de maneira uniforme por uma abstração da noção de endereço.

Portanto, os programadores não teriam que se preocupar se o objeto que estavam tentando acessar estava na memória ou no disco.

Esperava-se que esse e outros aprimoramentos planejados tornassem a programação mais fácil e, assim, reduzissem o custo de desenvolvimento de software.

A implementação desse princípio exigia que o mecanismo de endereçamento no coração da máquina incorporasse um sistema completo de gerenciamento de hierarquia de armazenamento e partes importantes de um sistema de gerenciamento de banco de dados, que até então eram implementados como software complementar.

Processador

Outro princípio era o uso de instruções complexas de alto nível a serem implementadas em microcódigo . Por exemplo, uma das instruções ,,CreateEncapsulatedModule foi um editor de ligação completo . Outras instruções foram concebidos para apoiar as estruturas de dados internas e operações de linguagens como a programação FORTRAN , COBOL e PL / I . Na verdade, o FS foi projetado para ser o computador de conjunto de instruções complexo final ( CISC ).

Outra forma de apresentar o mesmo conceito era que toda a coleção de funções anteriormente implementadas como hardware, software de sistema operacional, software de banco de dados e muito mais seriam agora considerados como constituindo um sistema integrado, com cada uma das funções elementares implementadas em um de muitos camadas, incluindo circuitos, microcódigo e software convencional . Mais de uma camada de microcódigo e código foram contempladas, às vezes referidas como picocódigo ou milicódigo . Dependendo das pessoas com quem se falava, a própria noção de "máquina", portanto, variou entre as funções que foram implementadas como circuitos (para os especialistas em hardware) para o conjunto completo de funções oferecidas aos usuários, independentemente de sua implementação (para o arquitetos de sistemas).

O design geral também pedia um "controlador universal" para lidar principalmente com as operações de entrada e saída fora do processador principal. Esse controlador universal teria um conjunto de instruções muito limitado, restrito às operações necessárias para E / S, sendo pioneiro no conceito de um computador com conjunto de instruções reduzido (RISC).

Enquanto isso, John Cocke , um dos principais projetistas dos primeiros computadores IBM, iniciou um projeto de pesquisa para projetar o primeiro computador com conjunto reduzido de instruções ( RISC ). No longo prazo, a arquitetura RISC, que eventualmente evoluiu para a arquitetura Power e PowerPC da IBM , provou ser muito mais barata de implementar e capaz de atingir uma taxa de clock muito maior.

História

Início do projeto

No final da década de 1960 e início da década de 1970, a IBM considerou uma reformulação radical de toda a sua linha de produtos para aproveitar o custo muito mais baixo dos circuitos de computador esperado na década de 1980.

O projeto IBM Future Systems (FS) foi oficialmente iniciado em setembro de 1971, seguindo as recomendações de uma força-tarefa especial montada no segundo trimestre de 1971. Com o passar do tempo, vários outros projetos de pesquisa em vários locais da IBM se fundiram no projeto FS ou tornou-se associado a ele.

Gerenciamento de Projetos

Durante toda a sua vida, o projeto FS foi conduzido sob rígidas disposições de segurança. O projeto foi dividido em muitos subprojetos atribuídos a diferentes equipes. A documentação foi dividida de forma semelhante em muitas partes, e o acesso a cada documento estava sujeito à verificação da necessidade de conhecimento pelo escritório de projetos. Os documentos eram rastreados e podiam ser chamados de volta a qualquer momento.

No memorando de Sowa (ver Links Externos, abaixo), ele observou que o objetivo declarado de toda essa burocracia é impedir que alguém entenda todo o sistema; esse objetivo certamente foi alcançado.

Como consequência, a maioria das pessoas que trabalhavam no projeto tinha uma visão extremamente limitada dele, restrita ao que precisavam saber para produzir a contribuição esperada. Algumas equipes estavam até trabalhando no FS sem saber. Isso explica por que, quando solicitados a definir FS, a maioria das pessoas dá uma resposta muito parcial, limitada à interseção de FS com sua área de competência.

Linhas de produtos planejadas

Três implementações da arquitetura FS foram planejadas: o modelo top de linha estava sendo projetado em Poughkeepsie, NY , onde os maiores e mais rápidos computadores da IBM foram construídos; o modelo do meio estava sendo projetado em Endicott, NY , que era responsável pelos computadores de médio porte; e o menor modelo estava sendo projetado em Rochester, MN , que era responsável pelos computadores para pequenas empresas da IBM.

Uma faixa contínua de desempenho pode ser oferecida variando o número de processadores em um sistema em cada um dos três níveis de implementação.

No início de 1973, o gerenciamento geral do projeto e as equipes responsáveis ​​pelas camadas mais "externas" comuns a todas as implementações foram consolidados no laboratório ASDD da Mohansic (a meio caminho entre a sede de Armonk / White Plains e Poughkeepsie).

Fim do projeto

O projeto FS foi encerrado em 1975. As razões apresentadas para encerrar o projeto dependem da pessoa questionada, cada um dos quais apresenta as questões relacionadas ao domínio com o qual estava familiarizado. Na realidade, o sucesso do projeto dependeu de um grande número de inovações em todas as áreas, desde o projeto e fabricação do circuito até o marketing e a manutenção. Embora cada problema, considerado isoladamente, pudesse ter sido resolvido, a probabilidade de que todos pudessem ser resolvidos a tempo e de maneiras mutuamente compatíveis era praticamente zero.

Um sintoma foi o baixo desempenho de sua maior implementação, mas o projeto também foi prejudicado por prolongados argumentos internos sobre vários aspectos técnicos, incluindo debates internos da IBM sobre os méritos dos designs RISC vs. CISC. A complexidade do conjunto de instruções foi outro obstáculo; foi considerado "incompreensível" pelos próprios engenheiros da IBM e havia fortes indícios de que o armazenamento de nível único em todo o sistema não poderia ter backup em parte, prevendo o particionamento do IBM AS / 400 do armazenamento de nível único do System / 38. Além disso, as simulações mostraram que a execução das instruções nativas do FS na máquina de ponta era mais lenta do que o emulador System / 370 na mesma máquina.

O projeto FS foi finalmente encerrado quando a IBM percebeu que a aceitação do cliente seria muito mais limitada do que o originalmente previsto, porque não havia um caminho de migração de aplicativo razoável para clientes de arquitetura 360. A fim de deixar o máximo de liberdade para projetar um sistema verdadeiramente revolucionário, a facilidade de migração do aplicativo não era um dos principais objetivos do projeto FS, mas deveria ser abordada por ajudas de migração de software, considerando a nova arquitetura como um dado. No final, parecia que o custo de migrar a massa de investimentos de usuários em COBOL e aplicativos baseados em linguagem assembly para FS era, em muitos casos, provavelmente maior do que o custo de aquisição de um novo sistema.

Resultados

Embora o projeto FS como um todo tenha sido encerrado, uma versão simplificada da arquitetura para a menor das três máquinas continuou a ser desenvolvida em Rochester. Ele foi finalmente lançado como IBM System / 38 , que provou ser um bom design para facilitar a programação, mas era lamentavelmente insuficiente. O AS / 400 herdou a mesma arquitetura, mas com melhorias de desempenho. Em ambas as máquinas, o conjunto de instruções de alto nível gerado pelos compiladores não é interpretado, mas traduzido em um conjunto de instruções de máquina de nível inferior e executado; o conjunto de instruções de nível inferior original era um conjunto de instruções CISC com algumas semelhanças com o conjunto de instruções System / 360 . Em máquinas posteriores, o conjunto de instruções de nível inferior era uma versão estendida do conjunto de instruções PowerPC , que evoluiu da máquina RISC de John Cocke. A plataforma de hardware dedicada foi substituída em 2008 pela plataforma IBM Power Systems executando o sistema operacional IBM i .

Além do System / 38 e do AS / 400, que herdou grande parte da arquitetura FS, pedaços da tecnologia Future Systems foram incorporados nas seguintes partes da linha de produtos da IBM:

  • o computador mainframe IBM 3081 , que era essencialmente o emulador System / 370 projetado em Poughkeepsie, mas com o microcódigo FS removido
  • a impressora a laser 3800 e algumas máquinas que levariam ao terminal IBM 3279 e GDDM
  • a biblioteca de fita magnética automática IBM 3850
  • o computador de gama média IBM 8100 , que era baseado em uma CPU chamada de Controlador Universal , que era destinado ao processamento de entrada / saída FS
  • melhorias de rede em relação a VTAM e NCP

Origens

  • Pugh, Emerson W. (1995). Construindo a IBM: Moldando uma Indústria e Sua Tecnologia . MIT Press. ISBN 0-262-16147-8.
  • Pugh, Emerson W .; et al. (1991). IBM'S 360 e primeiros 370 sistemas . MIT Press. ISBN 0-262-16123-0.

Referências

links externos