Byte 1981. Xerox Alto.
1973 . , . ZX Spectrum 9 . Commodore Amiga 1000 1985-. , -, . , Xerox . . , . , — , , : .
Portada de la revista Byte, septiembre de 1981
Hay muchos artículos interesantes escritos sobre Xerox Alto. Sin embargo, el material de hoy es particularmente interesante. Fue escrito por un periodista para la revista Byte en 1981, de hecho, en los años de la relevancia de Alto, y nos da la oportunidad de verlo a través de los ojos de los contemporáneos.
El material se publica con algunas abreviaturas menores. Al final proporcionaremos enlaces a emuladores de Alto y mejores ilustraciones que las publicadas en la revista.
Hoy en día, un entusiasta o profesional de las computadoras, que mira las máquinas modernas, no hace la pregunta: ¿qué pasará después?
Alto: computadora personal
En 1972, la Corporación Xerox decidió lanzar una computadora personal para la investigación científica. Como resultado, se creó Alto, en el que trabajaron Ed McCraith, Chuck Tucker, Butler Lampson, Bob Sproull y Dave Boggs. Su tarea consistía en hacer un dispositivo compacto que se adaptara a una oficina normal sin ningún problema. Al mismo tiempo, debe ser lo suficientemente potente como para garantizar un funcionamiento confiable y de alta calidad del sistema operativo y la pantalla gráfica. El objetivo de los desarrolladores era equipar a cada usuario con su propia máquina informática, que cubriría todas sus necesidades, así como un dispositivo de comunicación para el intercambio rápido de información.
En 1978, Xerox donó 50 computadoras Alto a las universidades de Stanford y MIT. Estas máquinas se mezclaron instantáneamente en los flujos de trabajo de los científicos y rápidamente se convirtieron en el estándar para todas las otras PC.
Es dudoso que alguien fuera de la comunidad científica pueda permitirse comprar un Alto. Estas computadoras no están destinadas al consumidor general, sino a la investigación interna de Xerox, por lo que no se venderán en grandes cantidades. Pero vale la pena hablar de ellos, aunque solo sea por la razón de que muchas PC del mañana serán diseñadas con el conocimiento y la experiencia adquiridos en el proceso de creación y trabajo con el Alto.
Foto 1: Dos Xerox Alto. Cada procesador Alto está montado en bastidor directamente debajo de dos discos duros de 3 MB. Tenga en cuenta que las pantallas de video de la computadora, a diferencia de las pantallas de televisión estándar, se extienden verticalmente, como una hoja de papel.
Equipo
El Alto consta de cuatro partes principales: una pantalla gráfica, un teclado, un mouse gráfico y una caja que contiene la unidad de disco y el procesador. Cada Alto está alojado en una elegante carcasa de metal en relieve de color crema, que ya insinúa su precio de $ 32,000. Con la excepción de la unidad del sistema en el piso, la computadora se coloca en el escritorio.
Pantalla gráfica
La pantalla gráfica es el componente más llamativo del Alto. Parece una pantalla de televisión girada 90 grados. Pantalla de trama. Sus dimensiones físicas son 8 pulgadas horizontalmente y 10 pulgadas verticalmente. La pantalla en blanco y negro le permite operar con 808 píxeles verticalmente y 606 píxeles horizontalmente. La resolución final es de aproximadamente 80 ppp.
La imagen se genera mediante escaneo ráster bit a bit. Esto significa que cada punto en la pantalla corresponde a un bit específico en la memoria.
Con respecto a la visualización de texto, la pantalla puede acomodar hasta 60 líneas de 90 caracteres cada una (suponiendo que cada carácter tenga 7x9 píxeles, como en la mayoría de los terminales de video). Alto no tiene un generador de caracteres de hardware. El usuario puede crear el conjunto de caracteres y luego mostrarlo. También se permiten fuentes mixtas, por lo que los textos de diferentes tamaños y formas se pueden mostrar en la pantalla al mismo tiempo.
Foto 2: Programa para probar el teclado. Cada tecla del teclado Alto tiene su propio cable de señal, por lo que se pueden presionar varias teclas a la vez. En la imagen de arriba, los botones presionados están marcados en negro. El pequeño cuadrado sobre el teclado representa el mouse. Como puede ver, se presiona uno de sus botones.
Dado que los píxeles de la pantalla corresponden a solo un bit de memoria, la computadora no admite gradaciones de color e intensidad. Sin embargo, la alta densidad de píxeles y varias combinaciones de estos crean una "textura" que da la impresión de un tono de gris. Las fotos en los periódicos se imprimen de la misma manera.
Teclado
Foto 3: juego de pinball. Las aletas se controlan con dos teclas Shift. El puerto Alto se puede conectar a un altavoz para reproducir sonidos de juegos.
Sin entrar en detalles, el teclado Alto es exactamente como una máquina de escribir normal, con la excepción de algunas teclas especiales. Es muy conveniente imprimir y se puede separar en cualquier momento. Además, cada tecla tiene su propio cable de señal para que coincida con la interfaz del teclado. Esto permite que los programas aprovechen al máximo los llamados "comandos de acordes" donde el usuario mantiene presionada una o más teclas. Por ejemplo, el "acorde" Shift + Control + E Alto reconoce tan fácilmente como A + B + C. Otra ventaja es la capacidad de determinar la duración de presionar una tecla. Por ejemplo, "Pinball" determina la fuerza de un golpe por el tiempo que el usuario mantiene presionado el botón. Por supuesto, hay otro software que le permite usar su teclado de una manera más conservadora.
Ratón gráfico
Foto 4: dispositivo de entrada del mouse. El operador usa el mouse para controlar la posición del cursor en la pantalla. Detecta un cambio en su propia posición, y el operador lo "rueda" sobre una estera de plástico blando.
El mouse es una pequeña caja con tres botones en el borde superior. Se conecta al teclado Alto usando un cable delgado y flexible. Los botones se llaman "rojo", "amarillo" y "verde", aunque todos son negros. El mouse se coloca en la mano derecha del usuario y rueda sobre una estera de plástico suave que hace girar las bolas en su parte inferior.
El cambio en la posición del mouse es rastreado por el estado de una de estas bolas y luego enviado a la computadora. El cursor se mueve en consecuencia en la pantalla. La posición física del mouse sobre la mesa no importa, ya que solo se rastrea el hecho mismo de su movimiento. La interfaz gráfica del mouse es mucho más conveniente que el bit pad, el joystick o el trackball. Muchos programas de Alto solo se pueden operar con el mouse, sin entrada de teclado.
Unidad del sistema
El procesador Alto y el almacenamiento en disco están alojados en un gabinete de bastidor pequeño hasta la cintura. Cada Alto se suministra con una unidad de disco de 3 MB. Los discos duros a menudo se comparan con las cajas de pizza debido a su forma y tamaño.
El "cerebro" del Alto es un procesador personalizado de 16 bits. Se compone de muchos circuitos integrados TTL de tamaño mediano a pequeño (circuitos integrados de lógica de transistor). El procesador es capaz de ejecutar alrededor de 400 mil instrucciones por segundo. Cada Alto tiene un espacio de direcciones de 64 mil palabras de 16 bits, incluido el área de la pantalla. El uso de una tecnología llamada "selección de banco" lo expande a 256 mil palabras. Las computadoras con mayor memoria se conocen como alto de cuerpo ancho.
La mayor parte de la "magia" en Alto ocurre en el nivel de microcódigo. Alto es capaz de ejecutar hasta 16 tareas simultáneamente, y la programación y E / S se realiza en microcódigo. Sin embargo, el usuario solo puede administrar una tarea. Tiene la prioridad más baja y debe "dar" recursos a otros procesos según sea necesario, como los programas que controlan la pantalla, los discos, el teclado, el mouse y la conexión Ethernet. El usuario tiene acceso directo al microcódigo y, si es necesario, puede reescribirlo de acuerdo con sus propias necesidades.
Alto anuncio, 1979
Software
Alto utiliza software para muchas de las tareas de hardware más comunes (como la generación de caracteres). El resultado es una arquitectura muy engorrosa pero flexible.
Cada Alto cuenta con una memoria de solo lectura (ROM), que contiene suficiente contenido de software para "cargar" el Alto desde la red local. Gracias a esto, el usuario siempre tiene la oportunidad de iniciar "de forma segura" a través de Ethernet si algún programa del sistema no funciona. Cualquier software para Alto se puede obtener a través de la red.
Alto Operation System es un programa que proporciona un conjunto básico de herramientas para la administración de computadoras. Está escrito en BCPL, un lenguaje muy similar a C. La mayoría de los programas se ejecutan directamente desde Alto OS. Debido a que el espacio de direcciones de Alto es pequeño, una técnica especial llamada "Junta" permite a los programas BCPL deshacerse de particiones innecesarias de Alto OS en tiempo de ejecución. Si estos fragmentos se necesitan más tarde, se pueden restaurar ejecutando "Counterjunta".
Foto 5: Demostración del programa Ejecutivo en el Alto.
Uno de los programas BCPL que se ejecuta en la parte superior del sistema operativo se llama Alto Executive. Se comunica directamente con el usuario y le permite manipular archivos e iniciar otros programas. Una característica interesante de Executive es la capacidad de completar el nombre del archivo.
Si ingresa solo el comienzo del nombre del archivo y el código de escape, Executive puede agregarlo él mismo. Los programadores pueden nombrar archivos descriptivos (por ejemplo, GatewayInformation.press), pero no pueden ingresar un nombre largo cada vez que acceden a ellos. El programa en ejecución reconoce el archivo tan pronto como ha recibido suficientes caracteres para identificarlo de manera única. Al escribir un signo de interrogación en lugar de un código de escape, obtiene de Executive todos los nombres de archivo que coinciden con el texto que ingresó.
Alto tiene un sistema de archivos muy flexible y confiable. A diferencia de muchos sistemas de archivos (como CP / M de Digital Research o TRSDOS de Radio Shack), que limitan los nombres a 6-8 caracteres más una extensión de 3 caracteres, el sistema de archivos de Alto permite nombres de archivos de hasta 31 caracteres. Cuando ingresa un nombre de archivo, se guarda exactamente como se imprimió, incluso con letras mayúsculas y minúsculas. Dado que los nombres de archivo pueden ser muy largos, esto permite que el programador use letras mayúsculas y minúsculas para mejorar la legibilidad. De acuerdo, LongFileName.BigExtension es mucho más agradable a la vista que LONGFILENAME.BIGEXTENSION. Cuando un usuario solicita un archivo de una computadora, se ignora el caso. Cualquiera de los dos nombres en los ejemplos anteriores son válidos, así como longfilename.bigextension.
Los archivos en Alto se dividen en páginas. Cada uno contiene un pequeño encabezado que describe la página, identifica a qué archivo pertenece y también señala las ubicaciones de disco que contienen las páginas siguiente y anterior del mismo archivo. Esto hace que el sistema de archivos sea prácticamente indestructible. Y un programa llamado Scavenger puede reparar automáticamente un sistema de archivos dañado.
Foto 5b: NetExecution (similar a Executive, pero permite datos a través de Ethernet)
Por supuesto, Alto no existe en el vacío. Se requiere software para trabajar con Ethernet. Parte de este software aparece en la forma de NetExecution (ver foto 5b) y FTP (programa de transferencia de archivos). NetExec es un programa muy similar a Alto Executive, pero descarga el software a través de la red, no desde el disco duro. El usuario no necesita almacenar programas raramente usados o grandes a nivel local. Se pueden descargar a través de la red (a unos 800,000 bits por segundo) solo cuando sea necesario. FTP realiza la misma tarea, pero es mucho más flexible.
Foto 5c: programa Mesa editado en Bravo. Tenga en cuenta que la lista utiliza diferentes fuentes.
Aunque la mayor parte del software Alto está escrito en BCPL, recientemente ha surgido una nueva herramienta de desarrollo: Mesa. Es un lenguaje de programación similar a Pascal. No es compatible con BCPL debido a una serie de diferencias de microcódigo. Es probable que Mesa se convierta en el lenguaje de programación principal para los sucesores de Alto.
BCPL y Mesa son los lenguajes del sistema Alto, las principales utilidades y muchos programas de aplicación están escritos en ellos. Sin embargo, hay otros disponibles en el Alto. Gran parte del software de investigación está escrito en SmallTalk. Es un lenguaje de programación muy potente y fácil de aprender. Además, la computadora admite LISP, que es popular entre la comunidad de investigación de IA.
Usando la pantalla
Foto 5d: vista de directorio en el editor de directorios de Neptuno. Los nombres de archivo marcados se seleccionan para otras operaciones (imprimir o eliminar). El cursor se parece a una cruz en un círculo.
Alto tiene excelentes capacidades gráficas. La pantalla se puede dividir en ventanas. Muchos programas de Alto se controlan solo con el mouse y estas ventanas. Por ejemplo, Neptune se usa para trabajar con el contenido de un disco local. Puede eliminar un archivo haciendo clic en él con el mouse y luego presionando el botón Eliminar en pantalla. Tan pronto como el cursor se mueve a una nueva ventana, puede cambiar su forma: en una ventana parece una "flecha" y en otra parece un "pincel".
Foto 5e: Bravo puede usar diferentes tipos de letra (existen cientos de fuentes para Alto, desde runas góticas hasta élficas. El párrafo central de la pantalla se muestra en griego).
Dado que Alto se usa ampliamente para la investigación de automatización de oficinas, necesita un buen editor de texto. Bravo es un editor de texto y formateador. En la tradición de los editores de pantalla, el estado actual de un archivo de usuario siempre se muestra en la pantalla. Bravo es controlado por los comandos del teclado y el mouse. El usuario puede abrir varios archivos en Windows a la vez. El texto se agrega y elimina con los cursores del mouse y los comandos del teclado. Bravo admite muchas fuentes diferentes y permite al usuario cambiar fácilmente entre ellas. Además, Bravo recuerda los cambios realizados en el documento y permite al usuario deshacerlos.
Además de las funciones de edición de texto, el usuario puede necesitar ilustraciones. Hay un programa especial para esto, Draw.
Draw es un programa de dibujo interactivo. Tiene muchas herramientas diferentes para crear y editar imágenes "ensambladas" a partir de líneas, curvas y texto. Dibujar divide la pantalla en varias ventanas (ver foto 6 a continuación). En el lado izquierdo de la pantalla hay un menú de comandos y varios pinceles. En la parte superior está el área de notificación y la entrada de comando de texto. El centro de la pantalla es el área de trabajo. Las curvas se pueden dibujar a mano o marcando algunos puntos y dejando que Dibujar matemáticamente complete las líneas. Una vez que la forma esté lista, puede trabajar con pinceles. Es similar al trabajo de artistas y calígrafos: el usuario tiene espacio para la autoexpresión. Con el mouse y el teclado, puede duplicar un objeto, rotarlo, estirarlo o comprimirlo.
Foto 6a. Uso del programa Draw: los puntos se colocan con el cursor y el programa dibuja curvas y líneas.
Foto 6b. Usando el programa Draw. Las líneas se pueden "pintar" con diferentes "pinceles" (el cursor ha cambiado a un pincel pequeño).
Foto 6c: Usando el programa Draw, las líneas punteadas se crean usando el cursor de tijera.
Foto 6d. Usando Draw: Puedes manipular la imagen matemáticamente. Puede crear una nueva forma volteando, sesgando o estirando una copia del original.
Red
A cada Alto se le asigna una dirección Ethernet que lo identifica de forma exclusiva en la red. Una dirección estándar, por ejemplo 50 # 100, no le dice nada a la mayoría de las personas. Por lo tanto, a cada Alto se le asigna su propio nombre memorable. Por ejemplo, las computadoras Alto en Stanford llevan el nombre de los ríos y montañas de California. Alto en CMU lleva el nombre de gemas, y Alto en Xerox lleva el nombre de personas prominentes. El resultado son nombres interesantes como Cypress, Turquoise o Machiavelli. Son mucho más fáciles de recordar que los convencionales 50 # 100.
Las redes de alto no son solo computadoras personales. Otros tipos de dispositivos, como servidores, también se pueden conectar a la red Ethernet.
Los servidores son computadoras Alto "sin usuario", que tienen su propia tarea estrecha. Por ejemplo, un servidor podría estar conectado a una impresora, y la impresión de un archivo consistiría en enviar mensajes apropiados al servidor de impresión. Otro tipo común de servidor es el servidor de archivos. Estas máquinas admiten discos muy grandes y son repositorios de programas y archivos que son demasiado grandes o se usan con poca frecuencia para ser almacenados en máquinas normales. El servidor de archivos de Stanford se llama Lassen.
Un Alto completamente limpio con unidades vacías de fábrica puede conectarse a la red con un cable coaxial, y adquirirá un conjunto completo de software en cuestión de minutos. El Alto también se puede desconectar, mover a un puerto diferente y volver a conectar. Esto no afectará el rendimiento de la red o la computadora misma.
Foto 7: programa multijugador de Trek. Este juego está completamente controlado por el mouse. En la parte inferior de la pantalla hay un radar de corto alcance; más alto: ventanas más potentes de radar, navegación y control de armas.
Hay varios programas que usan capacidades de Ethernet. Los más interesantes son los juegos. Trek es un juego espacial multijugador controlado principalmente por el mouse (ver foto 7).
Mazewar es otro juego de laberinto multijugador (ver foto 8). Una característica única de estos juegos es que múltiples usuarios pueden unirse o abandonar el juego como lo deseen, sin afectar a otros jugadores. Como todo Alto puede escuchar simultáneamente el mismo paquete (bloque de información en Ethernet), el programa del juego no se ejecuta en una máquina coordinadora, sino en todas las máquinas participantes de forma independiente.
Foto 8: Multijugador Mazewar. Cualquier Alto en la red puede unirse o cerrar sesión en cualquier momento.
Una mirada al futuro
El Alto también se puede usar de forma independiente, pero la configuración más eficiente es un grupo de Alto conectado a través de Ethernet. Como Ethernet es una red de área local, se ha desarrollado un dispositivo especial, una puerta de enlace, que permite que las redes de área local se comuniquen con otras redes Ethernet u otros tipos de redes de paquetes. Muchas compañías ahora están desarrollando esquemas de red que permitirían la transmisión de paquetes a través de líneas de televisión por cable. Estos cables ahora están instalados en muchos hogares y oficinas, por lo que es fácil imaginar una ciudad del futuro con una "red de información" similar a la red eléctrica. Combinado con un sistema de correo electrónico (el Alto hoy usa un prototipo Laurel), las posibilidades son asombrosas.
Alto ha existido por varios años. Sin embargo, la investigación no se detiene y las tecnologías antiguas se cubren gradualmente de polvo. Los nuevos productos se basarán en la invaluable experiencia adquirida en la creación y operación del Alto.
En el futuro cercano, deberíamos esperar una mejora notable en la calidad de las computadoras personales y la aparición de nuevas formas de conectarlas.
Pero sin lugar a dudas: Alto es una de las primeras computadoras personales que satisface las necesidades de programadores, secretarios y empresarios por igual.
Epílogo
En total, se produjeron varios miles de computadoras Alto. Fueron utilizados internamente por Xerox y en varias universidades importantes. La computadora nunca llegó al mercado masivo. Ahora es difícil sobreestimar el grado de innovación de Xerox: capacidades de red, soluciones de software inusuales, un factor de forma similar al moderno. Puede parecer que en 1973 alguien descubrió el secreto de una máquina del tiempo y "robó" la computadora del futuro.
El Xerox Alto ha dejado una marca significativa en la historia mundial de las computadoras. Su interfaz fue imitada por los líderes del mercado. Sus tecnologías y hallazgos se aplicaron en muchos dispositivos informáticos más nuevos (en 1979, Steve Jobs realizó un recorrido por Xerox PARC , luego de lo cual decidió inmediatamente traducir lo que vio en el Apple II).
Puedes tocar Alto ahoraen este sitio usando un emulador de navegador. Estas son algunas de nuestras propias capturas de pantalla de los juegos y programas de Alto. Ten en cuenta que el emulador es bastante lento.
También hay un emulador Alto "estacionario", ContrAlto, escrito en C #. Su código fuente se puede encontrar en GitHub .
Al final del artículo, compartiremos algunas capturas de pantalla.
Análogo de "Sea Battle"
Juego Turquía. La imagen se baraja cuando presiona cualquier tecla del teclado. Ratón operado. Interfaz de
administrador de directorios Neptune
Draw Por
desgracia, ninguno de nuestros diseñadores pudo manejar Alto Draw. ¡Pero fue muy interesante!
Video de demostración de Alto 1974 en japonés