Download La historia de Unix

Document related concepts

Unix wikipedia , lookup

Ken Thompson wikipedia , lookup

Dennis Ritchie wikipedia , lookup

Unix-like wikipedia , lookup

Linux International wikipedia , lookup

Transcript
La historia de Unix
A pesar de que muchos usuarios han descubierto las bondades de Unix gracias a
las más recientes distribuciones de Linux, como Ubuntu, lo cierto es que este
sistema operativo tiene casi cuatro décadas de desarrollo. La historia de Unix
comienza a finales de los años 1960, cuando el Instituto Tecnológico de
Massachusetts (MIT), los Laboratorios Bell de AT&T y la General Electric
trabajaban en la creación de un sistema operativo de carácter experimental
llamado Multics (por Multiplexed Information and Computing Service).
Multics corría en un “mainframe” (una clase de ordenadores muy comunes en
la época que constaba de una unidad central que “atendía” a varias terminales
“bobas”) de General Electric modelo GE-645.
Ken Thompson y Dennis Ritchie, trabajando en el DEC PDP-7.
Estas empresas buscaban desarrollar “un gran sistema operativo interactivo”
que incorporase sólidas políticas de seguridad. Hasta ese momento, la seguridad
de los datos la proporcionaba la escasa disponibilidad de los ordenadores, de los
que había una pequeña cantidad y solo personal autorizado podía tener acceso a
ellos. Pero la baja de precios y la popularización de los sistemas informáticos
hacían indispensable integrar en el mismo corazón del SO las herramientas
destinadas a proteger la información. El proyecto fue relativamente exitoso, e
incluso existieron algunas “versiones para producción” de Multics, pero su
pobre rendimiento hizo que AT&T decidiera desvincularse del proyecto.
Ken Thompson, uno de los programadores del equipo de los laboratorios Bell
de AT&T, siguió escribiendo software para el ordenador GE-635. Entre otros
programas, escribió un juego llamado Space Travel (Viaje espacial). Sin
embargo, descubrió que el juego era lento en la máquina de General Electric y
resultaba realmente caro, algo así como 75 dólares de EE.UU. por cada partida.
Así fue como, junto a su amigo Dennis Ritchie, escribió nuevamente el
programa, pero esta vez utilizando el lenguaje ensamblador de un ordenador
más popular (y barato) llamado DEC PDP-7.
"Arbol genealógico" de Unix.
Thompson y Ritchie descubrieron que trabajar juntos era divertido. En 1969, y
siempre dentro de los laboratorios Bell, armaron un equipo programadores entre los que se encontraba Rudd Canaday- con la idea de desarrollar un
sistema operativos que cumpliese con las premisas originales del proyecto
Multics, pero que corriese en un DEC PDP-7. Comenzaron a trabajar en el
sistema de archivos y en el núcleo del sistema operativo, que sería capaz de
ejecutar procesos en simultáneo (multitarea). Además, crearon un pequeño
intérprete de órdenes (o de comandos) y un reducido grupo de programas
accesorios. El proyecto fue bautizado UNICS (por Uniplexed Information and
Computing System) y, en principio, solo podía “atender” a dos usuarios a la vez.
El mismo Kernighan fue el que eligió el nombre del nuevo sistema operativo,
pero culpa de un juego de palabras UNICS se convertía un sistema Multics
castrado (pues “eunuchs”, en inglés, es un homófono de UNICS). Entonces, se
decidió cambiarle el nombre a UNIX, denominación que se mantiene hasta la
actualidad.
UNIX rápidamente llamó la atención de los niveles gerenciales de los
laboratorios Bell, que de pronto tenían entre sus manos un sólido sistema
operativo. La empresa no había gastado un solo dólar en el desarrollo de UNIX,
pero cuando el Grupo de Investigación en Ciencias de la Computación decidió
utilizarlo en una máquina más potente que el PDP-7, Thompson y Ritchie
consiguieron el apoyo económico de AT&T. Comenzaron a reescribir el software
para que funcionase en un ordenador PDP-11/20 y, por primera vez, en 1970,
UNIX corrió en esa plataforma. Los programadores habían incluido entre las
herramientas del paquete un programa capaz de dar formato a textos -llamado
runoff- y un primitivo editor de texto. Todo el trabajo se realizó utilizando el
lenguaje ensamblador de la PDP-11/20, y los laboratorios Bell utilizaron este
primitivo “sistema de procesamiento de texto” para procesar las solicitudes de
patentes que recibían. En poco tiempo runoff recibió importantes mejoras y su
nombre cambió a troff, considerado el primer programa de edición electrónica
capaz de realizar composición tipográfica. El 3 de noviembre de 1971, Thomson
y Ritchie publicaron el primer manual de programación de UNIX, el “UNIX
Programmer's Manual”
Plan 9, basado en el UNIX versión 7, de 1979.
En 1972, Ken Thompson y Dennis Ritchie crearon el lenguaje de
programación C. Si querían que UNIX fuese portado a otras plataformas,
necesitaban un lenguaje de alto nivel pero que se mantuviese cerca del
ensamblador. Su idea era que el código generado por el compilador de C fuese lo
suficientemente rápido como para utilizarlo en la creación de sistemas
operativos. Así, en 1972 se tomó la decisión de escribir nuevamente
UNIX, pero esta vez en el lenguaje de programación C. Esto permitiría
que fuese modificado para funcionar en otros ordenadores y que diferentes
versiones pudiesen ser desarrolladas por otros programadores. AT&T puso
UNIX a disposición de las universidades, empresas privadas y del gobierno de
los Estados Unidos, a través de licencias. El Departamento de Computación de
la Universidad de California, con sede en Berkeley recibió una de estas
licencias, y en 1975 desarrolló y publicó su propio “clon” de UNIX, conocido
como Berkeley Software Distribution (BSD), que más tarde se convertiría
en un fuerte competidor del UNIX de AT&T. Para tener una idea de los alcances
de UNIX en esa época, basta con una frase de junio de 1972 atribuida a Dennis
Ritchie y Ken Thompson: “...el número de instalaciones Unix ha alcanzado el
número de 10, y esperamos que aumente...”
AT&T creó una división comercial, denominada Unix Systems Laboratories,
para que se encargase de la explotación comercial del sistema operativo. La
aparición de nuevos ordenadores y el impulso recibido de parte de nuevos
programadores -que utilizaban C para introducir mejoras- hicieron que fuesen
liberadas diferentes versiones de UNIX. En 1975, el SO alcanzó la versión 6, que
incluía “pipes” (tuberías). Esto permitió dar una orientación modular al
proyecto, consiguiendo aumentar aún más la velocidad de desarrollo. Se estima
que en 1978, unos 600 ordenadores alrededor del mundo ya corrían
alguna versión de UNIX. La versión 7, última basada en el UNIX original
que tuvo una gran distribución, entró en circulación en 1979 y sirvió de base
para la creación de Plan 9, un nuevo sistema operativo portable y distribuido,
diseñado por los Laboratorios Bell para ser el sucesor de UNIX en tareas de
investigación.
Escritorio de Fedora, una versión de Unix que ha dado la vuelta al mundo.
La empresa AT&T desarrolló y vendió UNIX System III (basado en la versión
7) a partir de 1981.La proliferación de versiones daba lugar a confusiones, así
que la empresa decidió combinar todos los desarrollos propios con los de
distintas universidades y empresas en 1983, dando origen al Unix System V
Release 1. Esta versión introdujo características como el editor Vi y la
biblioteca curses, desarrolladas por Berkeley Software Distribution. La división
Unix Systems Laboratories de AT&T fue adquirida por Novell dos años más
tarde, y se hizo cargo de la demanda por infracción de los derechos de copyright,
revelación de secretos y violación de marca de mercado existente entre Unix
Systems Laboratories y BSD. Los accionistas de Novell tuvieron que pasar el mal
trago de descubrir grandes porciones del código de BSD habían sido
copiadas ilegalmente en UNIX System V, y fueron contra demandados.
Como la propiedad intelectual de Novell se reducía a unos pocos ficheros fuente,
todo acabó en un acuerdo extrajudicial cuyos términos permanecieron bajo
secreto a petición de Novell.
De forma paralela al UNIX “oficial”, desde mediados de los ochenta, Richard
Stallman, del Instituto Tecnológico de Massachussets, trabajaba en lo que más
tarde se conocería como “software libre”. Stallman creo un sistema similar a
UNIX con intenciones de cederlo gratuitamente, con el nombre de GNU (Gnu's
Not Unix. GNU no es Unix). En esos meses, un joven estudiante de ciencias de
la computación finlandés llamado Linus Torvalds comenzaba el desarrollo del
núcleo de un sistema operativo para ordenadores basados en la arquitectura
“Intel x86”, que reproducía muchas de las funciones existentes en UNIX. El
embrionario sistema operativo fue lanzado en forma de código abierto en 1991,
con el nombre de Linux. El año siguiente ese núcleo Linux fue combinado con
los programas desarrollados por el Proyecto GNU, dando como resultado el
Sistema Operativo GNU/Linux.
HP ofrecia sistemas como este, capaces de correr UNIX por menos de 5000 dólares.
El resto es historia: lo que comenzó casi como un pasatiempo de dos geniales
programadores se convirtió en un potente, seguro y flexible sistema operativos,
capaz de funcionar en un teléfono móvil, un ordenador personal o un cluster de
ordenadores. Incluso el aplaudido sistema operativo Mac OS es UNIX completo
y aprobado por The Open Group. Se diferencia en que posee una interfaz gráfica
propietaria (Aqua), desarrollada en Objective-C en lugar de C o C++. A pesar de
tener casi 40 años sobre sus espaldas, UNIX está más vigente que nunca.
Fuente: http://www.neoteo.com/la-historia-de-unix.neo