História do computador: Xerox Alto - computador pessoal





Byte 1981. Xerox Alto.



1973 . , . ZX Spectrum 9 . Commodore Amiga 1000 1985-. , -, . , Xerox . . , . , — , , : .






Capa da Byte Magazine, setembro de 1981.



Existem muitos artigos interessantes escritos sobre o Xerox Alto. No entanto, o material de hoje é particularmente interessante. Foi escrito por um jornalista da revista Byte em 1981, de fato, nos anos de relevância de Alto, e nos dá a oportunidade de vê-lo através dos olhos dos contemporâneos.

O material é publicado com algumas abreviações menores. No final, forneceremos links para emuladores Alto e melhores ilustrações do que as publicadas na revista.




Hoje em dia, um raro entusiasta ou profissional de informática, olhando para máquinas modernas, não faz a pergunta: o que acontecerá a seguir?



Alto: computador pessoal



Em 1972, a Xerox Corporation decidiu lançar um computador pessoal para pesquisa científica. Como resultado, Alto foi criado, no qual trabalhavam Ed McCraith, Chuck Tucker, Butler Lampson, Bob Sproull e Dave Boggs. A tarefa deles era criar um dispositivo compacto que cabesse em um escritório comum sem problemas. Ao mesmo tempo, ele deve ser poderoso o suficiente para garantir uma operação confiável e de alta qualidade do sistema operacional e da tela gráfica. O objetivo dos desenvolvedores era equipar cada usuário com sua própria máquina de computação, que cobriria todas as suas necessidades, além de um dispositivo de comunicação para a rápida troca de informações.



Em 1978, a Xerox doou 50 computadores Alto para as universidades de Stanford e MIT. Essas máquinas se misturaram instantaneamente aos fluxos de trabalho dos cientistas e rapidamente se tornaram o padrão para todos os outros PCs.



É duvidoso que alguém de fora da comunidade científica possa pagar a compra de um Alto. Esses computadores não se destinam ao consumidor em geral, mas à pesquisa interna da Xerox, portanto não serão vendidos em grandes quantidades. Mas vale a pena falar sobre eles, apenas pelo motivo de muitos PCs de amanhã serem projetados com o conhecimento e a experiência adquiridos no processo de criação e trabalho com o Alto.







Foto 1: Dois Xerox Alto. Cada processador Alto é montado em rack diretamente abaixo de dois discos rígidos de 3 MB. Observe que as telas de vídeo do computador, diferentemente das telas de televisão padrão, são esticadas verticalmente, como uma folha de papel.



Equipamento



O Alto consiste em quatro partes principais: uma tela gráfica, um teclado, um mouse gráfico e uma caixa contendo a unidade de disco e o processador. Cada Alto está alojado em uma elegante caixa de metal em relevo de cor creme, que já indica seu preço de US $ 32.000. Com exceção da unidade do sistema no chão, o computador é colocado na área de trabalho.



Exibição gráfica



A tela gráfica é o componente mais impressionante do Alto. Parece uma tela de televisão girada 90 graus. Exibição raster. Suas dimensões físicas são 8 polegadas na horizontal e 10 polegadas na vertical. A tela em preto e branco permite operar com 808 pixels na vertical e 606 pixels na horizontal. A resolução final é de aproximadamente 80 dpi.



A imagem é impressa por varredura raster bit a bit. Isso significa que cada ponto no visor corresponde a um bit específico na memória.



Com relação à exibição de texto, a tela pode acomodar até 60 linhas de 90 caracteres cada (assumindo que cada caractere tenha 7x9 pixels, como na maioria dos terminais de vídeo). Alto não possui um gerador de caracteres de hardware. O conjunto de caracteres pode ser criado pelo usuário e exibido. Fontes mistas também são permitidas, para que textos de diferentes tamanhos e formas possam ser exibidos na tela ao mesmo tempo.







Foto 2: Programa para testar o teclado. Cada tecla do teclado Alto possui seu próprio fio de sinal, portanto, várias teclas podem ser pressionadas ao mesmo tempo. Na imagem acima, os botões pressionados estão marcados em preto. O pequeno quadrado acima do teclado representa o mouse. Como você pode ver, um de seus botões é pressionado.



Como os pixels da tela correspondem a apenas um bit de memória, o computador não suporta gradações de cores e intensidade. No entanto, a alta densidade de pixels e várias combinações destes criam uma "textura" que dá a impressão de um tom de cinza. As fotos nos jornais são impressas da mesma maneira.



Teclado







Foto 3: Jogo de pinball. As nadadeiras são controladas com duas teclas Shift. A porta Alto pode ser conectada a um alto-falante para reproduzir sons de jogos.



Sem entrar em detalhes, o teclado Alto é exatamente como uma máquina de escrever comum, com exceção de algumas teclas especiais. É muito conveniente imprimir e pode ser desanexado a qualquer momento. Além disso, cada tecla possui seu próprio fio de sinal para corresponder à interface do teclado. Isso permite que os programas aproveitem ao máximo os chamados "comandos de acordes", nos quais o usuário mantém pressionada uma ou mais teclas. Por exemplo, o "acorde" Shift + Control + E Alto reconhece tão facilmente quanto A + B + C. Outra vantagem é a capacidade de determinar a duração de um pressionamento de tecla. Por exemplo, "Pinball" determina a força de um golpe por quanto tempo o usuário mantém o botão pressionado. É claro que existem outros softwares que permitem usar o teclado de maneira mais conservadora.



Mouse gráfico







Foto 4: dispositivo de entrada do mouse. O operador usa o mouse para controlar a posição do cursor na tela. Ele detecta uma mudança em sua própria posição e o operador "rola" em uma esteira de plástico macio.



O mouse é uma pequena caixa com três botões na borda superior. Ele se conecta ao teclado Alto usando um fio fino e flexível. Os botões são chamados de "vermelho", "amarelo" e "verde", mesmo sendo todos pretos. O mouse é colocado na mão direita do usuário e rola sobre um tapete de plástico macio que gira as bolas na parte inferior.



A alteração na posição do mouse é rastreada pelo estado de uma dessas bolas e depois enviada ao computador. O cursor se move de acordo no visor. A posição física do mouse sobre a mesa não importa, pois apenas o fato de seu movimento é rastreado. A interface gráfica do mouse é muito mais conveniente que o bit pad, joystick ou trackball. Muitos programas Alto só podem ser operados com o mouse, sem a entrada do teclado.



Unidade de sistema



O processador Alto e o armazenamento em disco estão alojados em um pequeno gabinete de rack com altura da cintura. Cada Alto é fornecido com uma unidade de disco de 3 MB. Os discos rígidos são frequentemente comparados às caixas de pizza devido à sua forma e tamanho.



O "cérebro" do Alto é um processador personalizado de 16 bits. Ele consiste em muitos CIs TTL de tamanho médio a pequeno (circuitos integrados lógicos a transistor). O processador é capaz de executar cerca de 400 mil instruções por segundo. Cada Alto possui um espaço de endereço de 64 mil palavras de 16 bits, incluindo a área da tela. O uso de uma tecnologia chamada "seleção bancária" a expande para 256 mil palavras. Computadores com aumento de memória são conhecidos como alto de corpo largo.



A maior parte da "mágica" em Alto acontece no nível do microcódigo. O Alto é capaz de executar até 16 tarefas simultaneamente, e o planejamento e a E / S são feitos em microcódigo. No entanto, o usuário pode gerenciar apenas uma tarefa. Ele tem a prioridade mais baixa e deve "fornecer" recursos a outros processos, conforme necessário, como programas que controlam a exibição, discos, teclado, mouse e conexão Ethernet. O usuário tem acesso direto ao microcódigo e, se necessário, pode reescrevê-lo de acordo com suas próprias necessidades.





Alto ad, 1979



Programas



Alto usa software para muitas das tarefas mais comuns de hardware (como geração de caracteres). O resultado é uma arquitetura muito complicada, mas flexível.



Cada Alto é fornecido com uma memória somente leitura (ROM), que contém conteúdo de software suficiente para "carregar" o Alto da rede local. Graças a isso, o usuário sempre tem a oportunidade de inicializar "com segurança" pela Ethernet se algum programa do sistema não estiver funcionando. Qualquer software para Alto pode ser obtido através da rede.



O Alto Operation System é um programa que fornece um conjunto básico de ferramentas para gerenciamento de computadores. Está escrito em BCPL, uma linguagem muito semelhante a C. A maioria dos programas roda diretamente do Alto OS. Como o espaço de endereço do Alto é pequeno, uma técnica especial chamada "Junta" permite que os programas BCPL se livrem de partições desnecessárias do Alto OS em tempo de execução. Se esses fragmentos forem necessários posteriormente, eles poderão ser restaurados executando "Counterjunta".







Foto 5: Demonstração do programa executivo no Alto.



Um dos programas BCPL executados em cima do sistema operacional é chamado Alto Executive. Ele se comunica diretamente com o usuário e permite manipular arquivos e iniciar outros programas. Um recurso interessante do Executive é a capacidade de completar o nome do arquivo.



Se você digitar apenas o início do nome do arquivo e do código de escape, o Executive poderá adicioná-lo. Os programadores podem nomear arquivos descritivamente (por exemplo, GatewayInformation.press), mas não inserir um nome longo cada vez que acessá-los. O programa em execução reconhece o arquivo assim que ele recebe caracteres suficientes para identificá-lo exclusivamente. Ao digitar um ponto de interrogação em vez de um código de escape, você obtém do Executive todos os nomes de arquivos que correspondem ao texto digitado.



Alto possui um sistema de arquivos muito flexível e confiável. Ao contrário de muitos sistemas de arquivos (como o CP / M da Digital Research ou o TRSDOS da Radio Shack), que limitam os nomes a 6-8 caracteres mais uma extensão de 3 caracteres, o sistema de arquivos da Alto permite nomes de arquivos com até 31 caracteres. Quando você digita um nome de arquivo, ele é salvo exatamente como foi impresso, mesmo com letras maiúsculas e minúsculas. Como os nomes de arquivos podem ser muito longos, isso permite que o programador use letras maiúsculas e minúsculas para melhorar a legibilidade. Concordo, LongFileName.BigExtension é muito melhor para os olhos do que LONGFILENAME.BIGEXTENSION. Quando um usuário solicita um arquivo de um computador, a caixa é ignorada. Qualquer um dos dois nomes nos exemplos anteriores é válido, assim como longfilename.bigextension.



Os arquivos no Alto são divididos em páginas. Cada um contém um cabeçalho pequeno que descreve a página, identifica a qual arquivo pertence e também aponta para os locais do disco que contêm as páginas seguintes e anteriores do mesmo arquivo. Isso torna o sistema de arquivos praticamente indestrutível. E um programa chamado Scavenger pode reparar automaticamente um sistema de arquivos danificado.







Foto 5b: NetExecutive (semelhante ao executivo, mas permite dados via Ethernet)



Claro, Alto não existe no vácuo. É necessário software para trabalhar com Ethernet. Alguns desses softwares aparecem na forma de NetExecutive (veja a Foto 5b) e FTP (programa de transferência de arquivos). O NetExec é um programa muito semelhante ao Alto Executive, mas baixa o software pela rede, não pelo disco rígido. O usuário não precisa armazenar programas grandes ou raramente usados ​​localmente. Eles podem ser baixados pela rede (a cerca de 800.000 bits por segundo) somente quando necessário. O FTP executa praticamente a mesma tarefa, mas é muito mais flexível.







Foto 5c: programa Mesa editado em Bravo. Observe que a listagem usa fontes diferentes.



Embora a maior parte do software Alto seja escrita em BCPL, uma nova ferramenta de desenvolvimento surgiu recentemente: o Mesa. É uma linguagem de programação semelhante ao Pascal. Não é compatível com o BCPL devido a várias diferenças de microcódigo. É provável que o Mesa se torne a principal linguagem de programação dos sucessores do Alto.



BCPL e Mesa são as linguagens do sistema Alto, os principais utilitários e muitos programas aplicativos estão escritos neles. No entanto, existem outros disponíveis no Alto. Grande parte do software de pesquisa está escrito em SmallTalk. É uma linguagem de programação muito poderosa e fácil de aprender. Além disso, o computador suporta o LISP, popular entre a comunidade de pesquisa em IA.



Usando a tela







Foto 5d: exibição do diretório no editor de diretório do Netuno. Os nomes dos arquivos marcados são selecionados para outras operações (imprimir ou excluir). O cursor se parece com uma cruz em um círculo.



Alto possui excelentes recursos gráficos. A tela pode ser dividida em janelas. Muitos programas Alto são controlados apenas com o mouse e essas janelas. Por exemplo, o Netuno é usado para trabalhar com o conteúdo de um disco local. Você pode excluir um arquivo clicando nele com o mouse e pressionando o botão Excluir na tela. Assim que o cursor se move para uma nova janela, ele pode mudar de forma: em uma janela se parece com uma "seta" e em outra se parece com um "pincel".







Foto 5e: O Bravo pode usar uma variedade de fontes (Alto possui centenas de fontes, das góticas às runas élficas. O parágrafo central no visor é em grego).



Como o Alto é amplamente usado para pesquisa em automação de escritório, ele precisa de um bom editor de texto. Bravo é um editor e formatador de texto. Na tradição dos editores de tela, o estado atual de um arquivo de usuário é sempre exibido na tela. O Bravo é controlado pelos comandos do teclado e do mouse. O usuário pode abrir vários arquivos no Windows ao mesmo tempo. O texto é adicionado e removido usando os comandos do cursor e do teclado do mouse. O Bravo suporta muitas fontes diferentes e permite ao usuário alternar facilmente entre elas. Além disso, o Bravo lembra as alterações feitas no documento e permite que o usuário as desfaça.



Além das funções de edição de texto, o usuário pode precisar de ilustrações. Existe um programa especial para isso, o Draw.



Draw é um programa de desenho interativo. Possui muitas ferramentas diferentes para criar e editar imagens "montadas" a partir de linhas, curvas e texto. Draw divide a tela em várias janelas (veja a Foto 6 abaixo). No lado esquerdo da tela, há um menu de comando e vários pincéis. No topo está a área de notificação e a entrada do comando de texto. O meio da tela é a área de trabalho. As curvas podem ser desenhadas à mão ou marcando alguns pontos e permitindo que o Draw complete matematicamente as linhas. Quando a forma estiver pronta, você poderá trabalhar com ela com pincéis. É semelhante ao trabalho de artistas e calígrafos: o usuário tem espaço para se expressar. Usando o mouse e o teclado, você pode duplicar, girar, esticar ou compactar um objeto.







Foto 6a. Usando o programa Draw: os pontos são colocados com o cursor e as curvas e linhas são desenhadas pelo programa.







Foto 6b. Usando o programa Draw. As linhas podem ser "pintadas" com diferentes "pincéis" (o cursor mudou para um pincel pequeno).







Foto 6c: Usando o programa Draw, as linhas pontilhadas são criadas usando o cursor da tesoura.







Foto 6d. Usando o Draw: Você pode manipular a imagem matematicamente. Você pode criar uma nova forma ao inverter, inclinar ou esticar uma cópia do original.



Internet



Cada Alto recebe um endereço Ethernet que o identifica exclusivamente na rede. Um endereço padrão, por exemplo, 50 # 100, não diz nada à maioria das pessoas. Portanto, cada Alto recebe um nome próprio e memorável. Por exemplo, os computadores Alto em Stanford têm o nome dos rios e montanhas da Califórnia. Alto na CMU tem o nome de gemas e Alto na Xerox em homenagem a pessoas de destaque. O resultado são nomes interessantes como Cypress, Turquesa ou Maquiavel. Eles são muito mais fáceis de lembrar do que o convencional 50 # 100.



As redes Alto não são apenas computadores pessoais. Outros tipos de dispositivos, como servidores, também podem ser conectados à rede Ethernet.



Servidores são computadores Alto "sem usuário", que têm suas próprias tarefas limitadas. Por exemplo, um servidor pode estar conectado a uma impressora e a impressão de um arquivo consistiria no envio de mensagens apropriadas ao servidor de impressão. Outro tipo comum de servidor é o servidor de arquivos. Essas máquinas suportam discos muito grandes e são repositórios de programas e arquivos que são muito grandes ou muito pouco usados ​​para serem armazenados em máquinas comuns. O servidor de arquivos Stanford é chamado Lassen.



Um Alto completamente limpo, com unidades vazias da fábrica, pode ser conectado à rede com um cabo coaxial e adquirirá um conjunto completo de softwares em questão de minutos. O Alto também pode ser desconectado, movido para uma porta diferente e reconectado. Isso não afetará o desempenho da rede ou do próprio computador.





Foto 7: Programa multijogador do Trek. Este jogo é totalmente controlado por mouse. Na parte inferior da tela, há um radar de curto alcance; superior - janelas de radar, navegação e controle de armas mais poderosas.



Existem vários programas que usam recursos Ethernet. O mais interessante deles são jogos. Trek é um jogo espacial multiplayer controlado principalmente pelo mouse (veja a foto 7).



Mazewar é outro jogo de labirinto multiplayer (veja a Foto 8). Uma característica exclusiva desses jogos é que vários usuários podem entrar ou sair do jogo como quiserem, sem afetar outros jogadores. Como todo Alto pode ouvir simultaneamente o mesmo pacote (bloco de informações na Ethernet), o programa do jogo não é executado em uma máquina de coordenação, mas em todas as máquinas participantes de forma independente.





Foto 8: Mazewar para vários jogadores. Qualquer Alto na rede pode entrar ou sair a qualquer momento.



Um olhar para o futuro



O Alto também pode ser usado de forma independente, mas a configuração mais eficiente é um grupo de Alto conectado por Ethernet. Como a Ethernet é uma rede local, um dispositivo especial, um gateway, foi desenvolvido para permitir que as redes locais se comuniquem com outras redes Ethernet ou outros tipos de redes de pacotes. Muitas empresas estão agora desenvolvendo esquemas de rede que permitem a transmissão de pacotes através de linhas de TV a cabo. Agora, esses cabos estão instalados em muitas residências e escritórios, portanto é fácil imaginar uma cidade do futuro com uma "grade de informações" semelhante à rede elétrica. Combinado com um sistema de e-mail (o Alto hoje usa um protótipo Laurel), as possibilidades são surpreendentes.



Alto já existe há vários anos. No entanto, a pesquisa não pára e as tecnologias antigas são gradualmente cobertas de poeira. Os novos produtos se basearão na inestimável experiência adquirida na criação e operação do Alto.



Num futuro próximo, devemos esperar uma melhoria acentuada na qualidade dos computadores pessoais e o surgimento de novas maneiras de conectá-los.

Mas sem dúvida: o Alto é um dos primeiros computadores pessoais que atende às necessidades de programadores, secretárias e empresários.






Posfácio



No total, vários milhares de computadores Alto foram produzidos. Eles foram usados ​​internamente pela própria Xerox e em várias universidades importantes. O computador nunca chegou ao mercado de massa. Agora é difícil superestimar o grau de inovação da Xerox: recursos de rede, soluções incomuns de software, um fator de forma semelhante ao moderno. Pode parecer que em 1973 alguém tenha descoberto o segredo de uma máquina do tempo e "roubado" o computador do futuro.



A Xerox Alto deixou uma marca significativa na história mundial dos computadores. Sua interface foi imitada pelos líderes de mercado. Suas tecnologias e descobertas foram aplicadas em muitos dispositivos de computador mais recentes (em 1979, Steve Jobs entrou em um tour pelo Xerox PARC , após o qual ele imediatamente decidiu incorporar o que viu no Apple II).



Você pode tocar em Alto agoraneste site usando um emulador de navegador. Aqui estão algumas das nossas próprias capturas de tela dos jogos e programas do Alto. Esteja avisado, o emulador é bem lento.



Há também um emulador Alto "estacionário", ContrAlto, escrito em C #. Seu código fonte pode ser encontrado no GitHub .



No final do artigo, compartilharemos algumas capturas de tela.





Análogo de "Sea Battle"





Jogo Turquia. A imagem é alterada quando você pressiona qualquer tecla do teclado. Mouse operado. Interface





do Neptune





Draw do Gerenciador de Diretórios





Infelizmente, nenhum de nossos designers conseguiu lidar com o Alto Draw. Mas foi muito interessante!





1974 Alto Demo Video em japonês



All Articles