Sex, Drugs, and Unix

Una Breve Historia de Unix

por Oscar Bonilla


En los años setentas, dos investigadores de los Laboratorios Telefónicos Bell (Bell Telephone Labs o BTL) llamados Dennis Ritchie y Ken Thompson desarrollaron un sistema operativo muy elegante al que llamaron Unix. Eligieron el nombre Unix como una burla al proyecto en el que habían trabajado anteriormente: Multics. Al completar el desarrollo de Unix, Ritchie y Thompson expusieron su diseño en una conferencia internacional donde varios de los participantes les pidieron una copia de este sistema. En esa época, BTL había perdido un juicio antitrust, similar al que hoy día tiene Microsoft, y como parte de los dictámenes del Juez estaba la prohibición de incorporarse a cualquier negocio que no fuera el de las telecomunicaciones. Debido a esto, a BTL le era imposible entrar en el negocio de los sistemas operativos. La presión de los investigadores en obtener una copia de Unix motivó a los ejecutivos de BTL a licenciar su uso como una herramienta de investigación. La licencia de Unix era muy barata para las universidades y bastante cara para la industria.

Una de las universidades que adquirió una licencia de Unix fue la Universidad de California en Berkeley. La motivación principal era poder experimentar con el primer sistema operativo que incluía código fuente. Al poco tiempo, la gente de Berkeley había escrito varios programas utilitarios para Unix que otros investigadores podrían encontrar útiles. La Universidad decidió entonces distribuir este código a la comunidad y le llamó a sus distribuciones BSD (Berkeley Software Distribution). A pesar que al principio las distribuciones de Berkeley consistían principalmente en herramientas para los usuarios, muy pronto comenzaron a cambiar la forma en que el propio sistema operativo funcionaba. Implementaron el manejo de memoria virtual y programaron el soporte para los protocolos del Arpanet que luego se convertiría en el conocido Internet. Todos estos cambios eran distribuidos como BSD a quienes tenían una licencia de Unix de la división de BTL enargada de administrar este sistema (AT&T).

A mediados de los años ochentas, Richard Stallman, entonces en el Instituto Tecnológico de Massachussets (MIT) decidió dedicarse a la construcción de lo que denominó software libre. El razonamiento de Stallman era que los mayores progresos en la industria del software surgen cuando se coopera entre programadores. Según Stallman, las industrias de la época estaban atentando contra la libertad de los usuarios y programadores de compartir el software, así que decidió programar un sistema parecido a Unix y regalarlo. A este sistema le llamó GNU, un acrónimo recursivo que significa Gnu's Not Unix (GNU no es Unix).

Para este entonces, varias compañías estaban ya en el negocio de Unix. Microsoft distribuía Xenix, una versión de Unix para el procesador 80386. Sun Microsystems utilizaba BSD como base para su SunOS. Digital Equipment Corporation incluía otro sistema operativo basado en BSD con sus workstations, Ultrix.

A principios de los años noventa, la Universidad de California en Berkeley había cambiado tanto Unix que decidieron distribuirlo incluso a personas que no tuvieran una licencia de AT&T. Esto motivó a algunas personas a iniciar una empresa para distribuir BSD---como ahora le llamaban a Unix de Berkeley---comercialmente. A esta empresa le llamaron Berkeley Software Design, Inc. (BSDI).

Cuando BSDI comenzó a vender BSD establecieron un número de acceso telefónico gratuito para sus clientes, este número era 1-800-ITS-UNIX. Para este entonces, y como resultado del antitrust, BTL ya había sido desmembrado en varias compañías, una de ellas AT&T que de acuerdo a los nuevos arreglos legales ya podía comercializar Unix. En efecto, AT&T había creado una división llamada Unix System Laboratories (USL) con el propósito de vender Unix a la industria. USL había incorporado el código de BSD en el Unix de AT&T además de haber desarrollado algunos otros subsistemas. Cuándo AT&T se enteró que BSDI estaba compitiendo en este mercado lanzó una demanda legal contra BSDI.

BSDI compareció ante el Juez e indicó que su producto no estaba basado en el Unix de AT&T sino en el Unix de Berkeley, que al final de cuentas la Universidad regalaba sin necesidad de una licencia. Al darse cuenta AT&T que no tenía oportunidad de ganar una demanda contra BSDI decidió demandar a la Universidad de California en Berkeley por distribuir código basado en el Unix de AT&T a personas que no poseían una licencia de AT&T. La Universidad de California a su vez, demandó a AT&T por incorporar código desarrollado en la Universidad sin dar el crédito debido a los autores.

Además de la iniciativa comercial de BSDI, habían surgido ya las primeras distribuciones gratuitas del Unix de Berkeley. Bill Jolitz había porteado BSD al procesador Intel 80386 y le había llamado a su port 386BSD. El grupo NetBSD había sido fundado para continuar porteando BSD a nuevas plataformas. FreeBSD había tomado el código de 386BSD que Bill Jolitz no tenía tiempo de mantener y estaba ahora distribuyéndolo gratis para el Intel 80386. Lamentablemente, a raíz de la demanda de AT&T a Berkeley, todas estas distribuciones fueron detenidas hasta que se arreglaran los aspectos legales de si BSD era en efecto un sistema operativo que no necesitaba licencia de AT&T.

Para las personas deseosas de correr Unix en las ahora populares PCs, quedaba únicamente una alternativa, Minix. Minix era un sistema operativo parecido a Unix desarrollado por el Profesor Andrew Tanenbaum para enseñarle a sus alumnos acerca del diseño de sistemas operativos. Sin embargo, debido al enfoque puramente educacional de Minix, Tanenbaum no permitía que este fuera modificado demasiado ya que esto complicaba el sistema y no permitía que sus estudiantes lo entendieran en un semestre.

Un estudiante de Finlandia, Linus Torvalds, al ver que no era posible extender Minix, decidió escribir su propio sistema operativo compatible con Unix. Miles de personas que querían correr Unix en sus PCs vieron aquí su única alternativa debido a que a Minix le faltaban demasiadas cosas y BSD, a pesar de tener toda la funcionalidad esperada, tenía problemas legales. El proyecto GNU que Stallman había iniciado hacía ya casi diez años había producido para este entonces un sistema casi completo a excepción del kernel, que es el programa que controla el hardware de la máquina. Torvalds decidió utilizar el casi completo sistema GNU y completarlo él mismo con su propio kernel, al resultado le llamó Linux. Richard Stallman insiste aún que el sistema debiera ser llamado GNU/Linux, ya que incluye más código del proyecto GNU que del proyecto Linux.

A mediados de los años noventa, AT&T vendió Unix a Novell, quién tomó como prioridad número uno resolver las demandas. El acuerdo fue que la Universidad de California eliminaría todo el código residual de AT&T y lanzaría una última distribución de BSD totalmente libre de problemas de licenciamiento. Esta distribución fue el 4.4-BSD Lite2. Quien quisiera distribuir BSD debería basar su distribución en 4.4-BSD Lite2 para no tener problemas legales. Inmediatamente los distribuidores de BSD reiniciaron sus labores de distribución migrando lentamente sus sistemas al 4.4-BSD Lite2.

Para este entonces, Linux se había convertido ya en el Unix más popular entre la gente que buscaba alternativas al Windows de Microsoft.

Hoy en día, existen varias distribuciones del BSD así como existen varias distribuciones de Linux. El énfasis de los grupos que distribuyen BSD es:

El énfasis de los grupos que distribuyen Linux es:

Es importante hacer notar que cualquier distribución de Linux e incluso varias de BSD (como FreeBSD) pueden correr software escrito para Linux. Por ejemplo, el ya popular software de oficina StarOffice corre sin problemas en cualquiera de las distribuciones de Linux mencionadas anteriormente además de correr en FreeBSD.


obonilla@galileo.edu

Valid XHTML 1.1!