- Un sistema del que derivarlos a todos
Hasta ahora hemos hablado de los hackers que crearon Apple y Microsoft, empresas que dieron lugar a dos de los sistemas opertivos más famosos del planeta, Windows y Mac OS. Sin embargo, he obviado a uno de los sistemas operativos más importantes de la historia. Siempre en la sombra para los usuarios no iniciados, su núcleo es el germen de todos los sistemas operativos actuales. Estoy hablando de Unix, el primer sistema operativo multitarea, en el que se basan todas las versiones actuales de Linux o el propio MacOS.
De Space Travel a UNICS
El desarrollo de Unix fue en principio un proyecto conjunto del MIT, los Laboratorios Bell de AT&T y General Electric. El objetivo inicial era crear un sistema operativo que sería ejecutado en un mainframe GE-645..
Sin embargo, dado los elevados costes del proyecto, los Laboratorios Bell de AT&T decidieron abandonarlo y dedicar los recursos a iniciativas más viables. Sin embargo, uno de los antiguos programadores del equipo, llamado Ken Thompson, siguió trabajando en la máquina. Thompson programó un sencillo juego llamado “Space Travel”. Tras exasperarse con la lentitud y alto consumo energético que la máquina necesitaba para ejecutarlo, decidió escribir nuevamente el programa, con la ayuda de Dennis Ritchie. Lo hicieron en lenguaje ensamblador, para conseguir que se ejecutase en un ordenador PDP-7, que ya no era un mainframe sino un miniordenador (o lo que se entendía por mini en 1969).
Las bases estaban sentadas. Pronto, Thompson y Ritchie, al mando de un reducido grupo de programadores, se lanzaron a la aventura de crear un sistema operativo para el PDP-7. Desarrollaron tanto el sistema de ficheros como el sistema operativo multitarea en sí, y le agregaron un intérprete de comandos y un reducido conjunto de programas. Acababa de nacer UNICS (Uniplexed Information and Computing System), que era capaz de soportar dos usuarios simultáneos.
Thompson y Ritchie, trabajando en el PDP-11
Animados por su éxito, Thompson y Ritchie adquirieron un DEC PDP-11/20, un ordenador más potente, que les permitió añadir capacidades de procesamiento de texto a Unix. Gracias a esta característica, volvieron a conseguir el apoyo económico de los Laboratorios Bell, que dejaron de ver el proyecto como un simple juego de geeks barbudos.
Expansión y sistemas derivados
En 1972 ya existían 10 ordenadores que funcionaban con Unix. Sin embargo, el estar escrito en ensamblador era un handicap importante, ya que impedía que UNIX funcionara en máquinas que no tuvieran un procesador igual al de las DEC PDP. Por esta razón, en 1973 se reescribió UNIX en lenguaje de programación C, creado también por Thompson y Ritchie. Este lenguaje permitía que UNIX pudiera ser fácilmente modificado, creando versiones para otros ordenadores, sin tener que reescribir más que la reducida parte del código que aún dependía del ensamblador (algunas funciones básicas del sistema).
En 1975 AT&T retiró el permiso de uso a la Universidad de California en Berkeley por motivos comerciales. El propio Ken Thompson promovió el desarrollo y sacó a la luz su propia versión de UNIX, conocida como BSD (Berkeley Software Distribution). Desde entonces BSD se convirtió en la gran competidora de los Laboratorios Bell. BSD incluía, entre sus principales aportaciones, un compilador de Pascal, el editor VI, el editor EX y el Shell C. Contaba además con mínimas restricciones a su copia, distribución o modificación, lo que lo convertían en un producto muy atractivo para los estudiantes de informática. De este modo, pronto surgieron variantes del sistema a lo largo y ancho del país.
La expansión de UNIX había comenzado:
- En 1978 ya existían más de 600 máquinas funcionando bajo Unix, fundamentalmente en Bell y diversas Universidades a lo largo del país.
- A principios de los 80, se produjo el lanzamiento de Sistema III, la primera versión comercial del sistema operativo UNIX.
- En 1983 AT&T introdujo el UNIX Sistema V versión 1.
- EN 1983 Berkeley lanza BSD versión 4.2, que contaba entre sus características principales con la posibilidad de trabajo en redes basadas en los protocolos TCP/IP ( los mismos que hoy en día se utilizan en Internet).
- A principios de la década de los 90, un estudiante de informática de la Universidad de Helsinki llamado Linus Torvalds desarrolló un núcleo o kernel para ordenadores con arquitectura de procesador Intel x86 que mimetizaba muchas de las funcionalidades de UNIX, al que bautizó como Linux. Lanzado en 1991 como código abierto (cualquier usuario podía mejorar el sistema) en pocos años Linux se convirtió en un sistema multiplataforma capaz de competir con UNIX, Windows y cualquier otros sistema de alto nivel. Pero esa histo?:?:?ria la dejaremos para el próximo capítulo…
UNIX en la actualidad
Actualmente exixten múltiples versiones de UNIX, de las que las más conocidas son las siguientes:
Solaris: Sistema operativo de Sun Microsystems. Originalmente conocido como SunOS, tras la presentación de UNIX Sistema V se desarrolló una nueva versión a la que se le llamó Solaris. Existen versiones de Solaris para Power PC, Intel y Sparc.
AIX: Versión del sistema operativo UNIX propietaria de IBM.
A/UX: La compilación UNIX de Apple. Descontinuado desde 1996, Apple recuperó el uso de un núcleo UNIX con Mac OS X, su actual sistema operativo.
FreeBSD: Sistema operativo libre para ordenadores personales basado en CPU’s de arquitectura Intel, soportando también AMD y Cyrix.
IRIX: Versión de UNIX desarrollada por Silicon Graphics para su plataforma MIPS de 64 bits. Tiene soporte para gráficos 3D, video y transferencia de datos de gran ancho de banda.
SCO UNIX: Es la versión de Santa Cruz Operation (SCO), versión de UNIX Sistema V diseñada para plataformas Intel.
Linux: Comenzó como un simple proyecto de un estudiante universitario. En la actualidad su difusión es enorme y tiene millones de usuarios, tanto empresas como particulares.
Thompson y Ritchie, recibiendo la Medalla nacional de tecnología en 1999
Links relacionados
UNIX (Wikipedia
en español)
Unix history - Incluye
árbol de evolución y lista de sistemas derivados