# Compatible Time-Sharing System

    Este artículo se refiere al proyecto del MIT MAC operating system. CTSS También puede referirse a Cray Time Sharing System, un sistema diferente desarrollado por Cray para sus supercomputadores o Cambridge Time Sharing System desarrollado para los mainframes IBM.
CTSS, que significa Compatible Time-Sharing System (Sistema de Tiempo Compartido Compatible), fue uno de los primeros sistemas operativos de tiempo compartido; fue desarrollado en el Centro de Computación del MIT. Se presentó en 1961, y se utilizó en el MIT hasta 1973. Durante parte de este tiempo, el Proyecto MAC del MIT tuvo una segunda copia de CTSS, pero el sistema no se expandió más allá de dos sitios. CTSS fue descrito en una publicación presentada en la Spring Joint Computer Conference de 1962.
La palabra "Compatible" en el nombre se refiere a la compatibilidad con el sistema operativo por lotes estándar para el 7094, el Fortran Monitor System (FMS). CTSS ejecuta una copia sin modificar de FMS, procesando un flujo de lotes estándar, en un 7094 virtual proporcionado por su característica segundo plano. Los trabajos FMS en segundo plano pueden acceder a las cintas con normalidad pero no pueden interferir con los procesos de tiempo compartido en primer plano o los recursos utilizados para soportarlos.
Aunque no fue un sistema operativo influyente en con sus aspectos técnicos, tuvo una gran influencia al mostrar que el tiempo compartido era viable, las nuevas aplicaciones de los ordenadores fueron planteadas por primera vez entonces, y gracias a su sucesor, Multics, del que todos los sistemas operativos modernos toman planteamientos teóricos.
CTSS tuvo una de las primeras utilidades computerizadas para formatear texto, y una de las primeras implementaciones de correo electrónico entre usuarios.
Louis Pouzin, miembro del Centro de Computación del MIT, creó un comando llamado RUNCOM para CTSS, que ejecutaba una lista de comandos contenidos en un fichero; esta habilidad es el ancestro directo del shell script de Unix. RUNCOM también permitía la substitución de parámetros.
CTSS utilizó un mainframe IBM 7094 modificado que tenía dos bancos de 32768 palabras de 36 bits como memoria principal en lugar de tener sólo uno, como es normal. Un banco estaba reservado para el programa supervisor de tiempo compartido, el otro para los programas de usuario. También tuvo un hardware de gestión de memoria especial, una interrupción de reloj con la habilidad de capturar ciertas instrucciones.
El hardware de entrada/salida eran periféricos estándar de IBM en la mayoría de los casos. Lo que incluía seis canales de datos conectados a:
* Impresoras, unidades perforadoras (y lectoras) de tarjetas.
* Unidades de cinta IBM 729, un disco de almacenamiento IBM 1301, después ampliado a un IBM 1302, con una capacidad de 38 millos de palabras.
* Un tambor de memoria IBM 7320 con 186K palabras que pueden cargar un banco de memoria de 32K en un segundo (después ampliado a 1/4 de segundo).
* Dos visualizadores de alta velocidad de gráficos vectoriales.
* Una unidad de control de transmisión IBM 7750 capaz de soportar hasta 112 terminales de teletipo, incluyendo IBM 1050 Selectric y el modelo 35. Algunas de las terminares estaban remotamente localizadas y el sistema podía ser accedido utilizando las redes públicas de telégrafos.
CTSS fue compatible con el Sistema Monitor Fortran, un antiguo sistema de computación por lotes que se ejecutaba en los ordenadores 7094 antes de que se inventara CTSS. FMS podía ejecutar en segundo plano con casi tanta eficacia como un 7094 sin sistema operativo. Ejecutándose en segundo plano, FMS tenía acceso a algunas unidades de cinta y al banco de memoria principal de 32K del usuario.
Multics, que también fue desarrollado por el Proyecto MAC, comenzó en 1960 como un sucesor de CTSS, para el uso futuro de la computación de múltiple acceso. Multics, fue el sistema operativo que abrió el desarrollo de Unix en 1970.
ITS Incompatible Timesharing System (Sistema de Tiempo compartido Incompatible), otro temprano y revolucionario, además de influyente sistema de tiempo compartido del MIT, fue desarrollado por personas que no estaban de acuerdo con la dirección tomada por Multics; el nombre fue un hack de CTSS, del mismo modo que el nombre de Unix fue un hack posterior de Multics.