Multics

A principios de la década de 1960 el concepto de "tiempo compartido" era recibido con considerable atención entre los investigadores de la computación. Esta novedosa idea era un intento de dar un soporte interactivo, en computadoras de propositos generales, a través de una teletipo o una pantalla de vídeo. Las computadoras comerciales en ese entonces solamente podian correr un programa a la vez, los usuarios debían encolar sus trabajos y luego estaban obligados a esperar horas o días para recibir el resultado.

El concepto de un sistema operativo era completamente nuevo. Pero el término comenzaba a utilizarse en los productos comerciales, pero no de la manera en que lo conocemos hoy en día. Este término era aplicado a una colección de programas utilitarios compatibles diseñados para cargar una secuencia o lote de programas en memoria y automatizar alguna de las configuraciones hechas por los operadores humanos.

El CTSS (Compatible Timesharing System) o Sistema Compatible de Tiempo Compartido fué uno de los primeros sistemas operativos de tiempo compartido. Desarrollado en MIT Computation Center por un equipo liderado por Fernando J. Corbató, el CTSS tuvo su primera demostración en 1961 sobre una IBM 709, intercambiando cintas. Con muy pocas modificaciones, el CTSS corrió sobre una IBM 7064 modificada con un segundo banco de memorias de 64 Kb, usando dos IBM 2301 para intercambio y proveer acceso remoto hasta 30 usuarios a través de un controlador de comunicaciones IBM 7750 conectado a módems de discado.

J. C. R. Licklide del MIT propuso la creación del proyecto MAC (Multiple Access Computers) en noviembre de 1962. Este proyecto concentraba sus esfuerzos en el desarrollo de CTSS de Fernando J. Corbató y el Laboratório de Inteligencia Artificial de Marvin Minsky. En noviembre de 1963 el proyecto MAC, encaró un estudio sobre CTSS, que atrajo a muchos de los bien conocidos científicos relacionados con la computación a Cambridge para usar CTSS y discutir sobre el futuro de la computación.

Los fondos para el proyecto MAC eran provistos por la oficina de Técnicas de Procesamiento de Información de la Agencia de Proyectos Avanzados de Investigación (ARPA) del Departamento de Defensa de los Estados Unidos de América. El ARPA contribuiría con u$s 2 millones por año al proyecto MAC para el desarrollo de un nuevo y ambicioso sistema, sucesor de CTSS, denominado MULTICS (Multiplexed Information and Computing Service).

El profesor Jack Dennis del MIT contribuyó con algunas ideas sobre la arquitectura que influenciaron mucho en el comienzo del desarrollo de MULTICS, especialmente la idea de segmentación. Las especificaciones de MULTICS comenzaron a ser desarrolladas a mediados de 1963.

MULTICS sería un sistema modular diseñado para bancos de procesadores de alta velocidad, memoria y equipamiento de comunicaciones. Por diseño, las partes de una computadora podrían salir de servicio para mantenimiento sin afectar a las otras partes ni a los usuarios del sistema. La meta era proveer de servicios informáticos 24 horas por día, 365 días al año.

MULTICS sería desarrollado también con la seguridad militar en mente. Debería ser diseñado para ser resistente a los ataques externos y proteger a los usuarios del sistema. También debería soportar el concepto de niveles de seguridad: la información Ultra Secreta, Secreta, Confidencial y Desclasificada debería coexistir de manera segura en la misma computadora.

Cuando llegó el momento de elegir un fabricante que pueda soportar el nuevo sistema operativo, se pensó que debería ser IBM para implementarlo en su sistema 360/65, un modelo de la novedosa familia de computadoras del sistema /360. Pero ellos no estaban interesados en las ideas del proyecto MAC sobre paginación y segmentación. En cambio otras empresas como GE Schenectady y DEC se mostraron más entusiastas. La propuesta para implementar MULTICS en una GE-645 fué la elegida y GE Schenectady firmó contrato en agosto de 1964.

PL/I fué elegido como el lenguaje de programación en 1964. Mientras se aguardaba la disponibilidad de los compiladores PL/I, el equipo de desarrolladores escribío el Manual del Programador para el Sistema MULTICS. Este constaba de aproximadamente 3000 páginas, durante el transcurso del tiempo cada sección fué sometida a rigurosas revisiones y muchas de ellas fueron re-escritas, algunas más de una vez.

A principios de 1965 Bell Labs, una empresa del grupo AT&T, decidió adquirir una GE-645 y unirse a los esfuerzos para desarrollar software, y GE se sumó también ya que había acordado contribuir.

MULTICS recién estuvo disponible comercialmente en enero de 1973, cuando la Honeywell 6180 fué anunciada en el Museo de Ciencia de Boston. Los procesadores 6180 estaban cerca de 1 millón de instrucciones por segundo cada uno. Un sistema de dos CPU con 768KB de memoria, 8MB de volumen de almacenamiento, 1.6GB de disco, 8 unidades de cinta y dos DN355s, que podía comprarse por un precio de alrededor de u$s 7 millones.