Conhecendo a origem da virtualização

Christopher Strachey, cientista da computação e pioneiro no design de programação de linguagens, publicou em junho de 1959 na Conferência Internacional de Processamento da Informação realizada em Nova York na UNESCO, o que ele intitulou de “Time Sharing Processing in Large Fast Computers”. Sua publicação tratou do aspecto do uso da multi-programação em tempo compartilhado (time sharing) e estabeleceu um novo conceito de utilização de máquinas de grande porte visando a produtividade dos recursos de hardware.

O uso da multi-programação foi utilizada no super computador Atlas no começo dos anos 60. Este projeto contou com a participação das universidades de Manchester e Ferranti Ltd. e proporcionou o pioneirismo nos conceitos de paginação por demanda (demand paging) e chamadas ao supervisor (supervisor calls), o qual é referenciado como “extracodes”. De acordo com seus designers, as rotinas do Supervisor Extracodes eram formadas principalmente por chamadas dependentes do supervisor. Elas eram ativadas por rotinas de interrupção ou instruções do extracode que ocorriam em um objeto do programa. Ou seja, uma máquina virtual era usada pelo supervisor Atlas e outro era usado para rodar programas de usuários.

Em meados dos anos 60, o centro de pesquisa Watson da IBM possuía o projeto M44/44X, a principal oportunidade de avaliar os conceitos do sistema de time sharing. A arquitetura era baseada em máquinas virtuais, a principal era um IBM 7044 (M44), e cada uma delas possuía uma imagem experimental da principal máquina (44X). O espaço de endereçamento do 44X era residente na hierarquia de memória das máquinas M44, implementada por meio de memória virtual e multi-programação.

Após os primeiros experimentos, a IBM realizou uma série de upgrades em sua arquitetura e gerou vários outros projetos como IBM 7040 e 7094 em conformidade com o Compatible Time Sharing System CTSS desenvolvido pelo MIT (Massachusetts Institute of Technology). Nesta mesma época, a IBM construiu os supercomputadores da família 360 e o MIT desenvolveu o projeto MAC um acrônimo para Multiple Access Computer, projeto este que ficou famoso pelas inovações na pesquisa nas áreas de sistemas operacionais, inteligência artificial e teoria da computação.

Um dos maiores focos do projeto MAC foi o de desenvolver um sucessor para o CTSS, o Multics, o qual foi o primeiro sistema operacional de alta disponibilidade, desenvolvido como parte do consórcio que incluía a GE General Electric e o Bell Laboratories.

De forma independente, a IBM continuou a desenvolver sistemas de máquinas virtuais como CP-40 (desenvolvido a partir de uma modificação da versão do IBM 360/40), o CP-67, VM/370 e muitos outros. Tipicamente, máquinas virtuais IBM eram cópias idênticas do hardware adjacente, onde um componente chamado virtual machine monitor (VMM) roda diretamente no hardware real. Múltiplas máquinas virtuais podem então ser criadas por meio do VMM e cada instância pode rodar seu próprio sistema operacional.

Atualmente, a IBM é líder no mercado de mainframes, que utiliza a tecnologia de particionamento para prover uma robusta e respeitada plataforma computacional.