Breve historia de Linux y el movimiento del Software Libre

Sergio Talens-Oliag

Enero 2004

Introducción

En esta charla hablaremos de:

Historia del movimiento del Sw. Libre.

Las licencias de Software.

Evolución de los S. O. Unix.

Las distribuciones de Linux.

El 'Código Abierto' en el mundo empresarial.

El software libre en la administración.

Cronología

1969-70

Comienza el desarrollo de Unix en los Laboratorios Bell de AT&T.

1975

Unix se distribuye con código fuente a las universidades con una licencia académica.

Bill Gates y Paul Allen fundan Micro-Soft.

1976

An open letter to hobbyists (por William Henry Gates III), 3 de febrero de 1976. Carta de Bill Gates en la que describe como 'robo' el intercambio de software (en este caso el Altair BASIC de Micro-Soft).

Steve Jobs y Steve Wozniak fundan Apple Computers.

1977-1979

1977-78

Primeras distribuciones de la Berkeley Software Distribution para PDP-11.

Unix versión 7.

1979

3BSD, distribución de Unix para VAX (32bit) de Berkeley.

1980-1982

Financiadas por DARPA, aparecen las primeras versiones 4.x de BSD, que introducen varias mejoras al Unix de AT&T y se venden a multitud de universidades.

Aparece Sun Microsystems, la Sun-1 era una estación de trabajo de altas prestaciones que empleaba microprocesadores y funciona con Unix.

1983

Sun lanza SunOS 1.0.

AT&T anuncia UNIX System V.

Richard Stallman abandona el MIT y anuncia el proyecto GNU (GNU's Not Unix), que tiene por objeto escribir un S.O. Compatible con Unix, incluyendo el núcleo, compiladores, editores y otras utilidades.

Richard Stallman

1984 (1)

Publicación de GNU Emacs, primera versión de Emacs para Unix. Stallman se gana la vida vendiendo cintas con el código del programa.

Creación de la Free Software Foundation (FSF).

Nace el X Window System en el MIT como proyecto conjunto del laboratorio de informática y DEC, dentro del proyecto Athena.

1984 (2)

Apple lanza el Macintosh que emplea con un sistema operativo con interfaz totalmente gráfico.

Sun introduce el NFS como estándar de compartición de archivos en red y lo licencia libremente a la industria.

Sillicon Graphics comienza a vender estaciones de trabajo.

1985

Publicación del GNU Manifesto, en el que se explica qué es el proyecto GNU, por qué se debe participar en él, como contribuir con código o dinero y define modelos de negocio basados en código libre.

Primeras versiones del GCC.

Microsoft lanza Windows 1.0, un sistema gráfico que funciona sobre MS-DOS.

1986

Steve Jobs abandona Apple y funda NeXT Computer.

IBM lanza su primera línea de estaciones de trabajo (RT Personal Computer) qué funcionan con el S. O. AIX/RT (Advanced Interactive Executive / RT), versión de Unix de IBM.

1987

Se publica la versión 11 del X Window System (X11).

Andrew S. Tanenbaum escribe Minix, un clónico de Unix con fines educativos, el código está incluido en un libro y se puede comprar en formato electrónico a un precio asequible.

1988 (1)

Se publica 4.3BSD-Tahoe, qué como todas las anteriores obliga al qué la obtiene a pagar la licencia del código fuente original de AT&T (todas las releases de BSD incluían el código fuente completo, no existía una distibución sólo en binarios).

1988 (2)

Se forma un grupo sin ánimo de lucro (X Consortuim) para dirigir el desarrollo de estándares de X.

Apple introduce el Sistema 6 con MultiFinder.

Sun lanza la SPARCstation 1.

1989 (1)

Introducción de la ‘GNU General Public License’ (GNU GPL) por la FSF. La GPL también es conocida como ‘copyleft’ (izquierdo de copia).

BSD Networking Release I, no contiene codigo de AT&T, sólo incluye el código de red (TCP/IP) desarrollado por Berkeley y las utilidades relacionadas.

1989 (2)

Se funda Gygnus Solutions, la primera empresa que basa su negocio en el software libre, en concreto dando servicios de adaptación (p. ej. portando el GCC a nuevas arquitecturas) y soporte.

1989 (3)

NeXT lanza NeXTSTEP 1.0, un S.O. Orientado a objetos multitarea. Estaba basado en el microkernel Mach y en el BSD Unix, incluía un entorno de ventanas, el ‘Display Postscript’ como sistema de visualización y el ‘Objective-C’ como lenguaje de desarrollo.

GNU GPL (1)

La licencia está redactada para dar a todos los usuarios la libertad de redistribuir y modificar el software. Parte de este objetivo se puede cumplir poniendo el código en el ‘dominio público’, pero esto permitiría que cualquiera realizara modificaciones y eliminara la libertad de redistribución y modificación en su nueva versión.

GNU GPL (2)

Para garantizar que esto no pasa, la GPL primero reserva los derechos de copia y luego añade unos términos de distribución que le dan a todo el mundo el derecho a utilizar, modificar, y redistribuir el código del programa o cualquier programa derivado del mismo, pero solo si los términos de distribución no son cambiados.

GNU GPL (3)

Con este modelo cualquier persona que quiera distribuir un programa modificado está obligado a compartir sus modificaciones con el resto de usuarios, haciendo imposible que nadie se apropie del trabajo de otros y lo distribuya modificado.

La Licencia BSD (1)

A diferencia de la GPL, los términos de la licencia son muy liberales y permiten la distribución del código con o sin modificaciones siempre que se mantengan las notas de Copyright en el código fuente y que cuando se emplee ese código en un producto se indique que contiene código de Berkeley.

La Licencia BSD (2)

Esto último permite el uso y modificación de este código en productos comerciales, obligando al que lo utiliza únicamente a citar el origen del código original.

Gracias a esto, protocolos diseñados en sistemas BSD (como el TCP/IP) se han incorporado en productos comerciales empleando la implementación original.

Comparativa de Licencias
(Halloween Documents 1)

X

X

X

X

X

X

X

Open Source (Linux/GNU)

X

X

X

X

X

X

Open Source (Apache)

X

X

X

X

X

Open Source (BSD)

X

X

X

X

Bibliotecas gratuitas

X

X

X

Freeware

X

X

X

Shareware

X

X

Uso no comercial

X

Software de evaluación

Comercial

Derivados

libres

CVS público

Código modificable

Código disponible

Uso sin limites

Permite redistribuir

Gratis

Características

Tipo Licencia

1990

Microsoft lanza Windows 3.0, primera versión que empieza a tener éxito.

IBM lanza las estaciones de trabajo de la serie RISC System 6000 que funcionan con AIX.

1991 (1)

BSD Networking Release 2, es un sistema BSD completo a falta de un núcleo (falta reescribir 6 ficheros para eliminar totalmente el código de AT&T).

La FSF anuncia que va a comenzar a desarrollar el núcleo del sistema GNU, denominado Hurd, a partir del microkernel Mach 3.0.

1991 (2)

Linus Torvalds inicia el desarrollo de un núcleo para 386 compatible con Unix y el estándar POSIX que denomina Linux. Lo desarrolla a partir de Minix y el libro Design of the Unix Operating System de Marice J. Bach. La primera versión pública es la 0.02

1991 (3)

Apple lanza el Sistema 7.

Se anuncia el acuerdo entre Apple, IBM y Motorola para el diseño y fabricación del PowerPC.

Linus Torvalds

1992 (1)

A principios de año sale Linux 0.12 con licencia GPL.

Bill Jolitz escribe los 6 ficheros que faltan en BSD Networking Release 2, y publica 386/BSD, distribuyéndolo mediante ftp anónimo. La falta de tiempo hace que el 386/BSD no tenga buen mantenimiento y surgen los sistemas NetBSD y FreeBSD.

1992 (2)

Tiene lugar la famosa discusión entre Andrew Tanenbaum y Linus Torvalds, conocida como el debate “Linux es obsoleto”.

La discusión se puede leer en el apéndice A del libro Open Sources de O’Reilly: <http://www.oreilly.com/catalog/opensources/book/appa.html>

1992 (3)

Se funda BSDI (Berkeley Software Design Incorporated) que distribuye comercialmente el BSD de Berkeley.

En cuanto comienzan a operar son denunciados por Unix System Laboratories (USL), una filial de AT&T dedicada a la comercialización de Unix.

1992 (4)

Alegan que BSDI distribuye código y secretos que pertenecen a USL.

La denuncia no prospera, pero se transforma en otra que acusa de lo mismo a la Universidad de Berkeley (por el Networking Release 2) y a BSDI.

1992 (5)

Emacs vs Lucid Emacs (después renombrado Xemacs), primer gran fork del software libre.

Lucid Inc. decide incorporar Emacs 19 en un producto comercial, el problema es que esa versión (que va a mejorar mucho la interfaz gráfica del programa) todavía no está lista.

1992 (6)

Lucid intenta colaborar con la FSF para que lo terminen, pero no se ponen de acuerdo y desarrollan su propia versión.

Ambas versiones siguen desarrollándose en paralelo hoy en día.

1992 (7)

Sun Microsystems lanza Solaris 2 Operating Environment, basado en UNIX System V Release 4 (SVR4).

Yggdrasil comienza a distribuir Linux en CD-ROM.

Patrick Volkerding crea Slackware a partir de la distribución SLS, incluyendo un formato de paquete y un instalador

1992 (8)

Microsoft lanza Windows 3.1 (16 bits., funciona sobre DOS) y Windows NT 3.1 (sistema operativo de 32bits., diseñado por ex-desarrolladores de DEC con experiencia en VMS y RSX-11)

IBM lanza OS/2 2.0 después de terminar su contrato con Microsoft.

1993 (1)

Ian Murdock crea la distribución Debian GNU/Linux.

A finales de año se distribuye FreeBSD 1.0.

Larry Augustin funda VA Research (qué posteriormente pasó a llamarse VA Linux Systems Inc.), empresa dedicada a la fabricación de Hardware para Linux.

1993 (2)

Se estima que hay 100.000 usuarios de Linux.

NeXT Computers se transforma en NeXT Software Inc. y abandona la venta de Hardware. Intentó comercializar NeXT STEP 3.x para varias arquitecturas, aunque no tuvo mucho éxito.

Ian Murdock

El modelo de negocio del Software Libre (1)

Servicios para instalar, configurar y mantener los productos; empresas de consultoría y administración de servicios.

Desarrollos a medida a partir de sistemas libres ... incluso devolviendo el producto a la comunidad como código abierto.

El modelo de negocio del Software Libre (2)

Ejemplos: Cygnus, VA Linux, Red Hat.

En España: consultoras como Andago, empresas de desarrollo como iSOCO, ISP que lo utilizan como sistema servidor ...

1994 (1)

Ian Murdock publica el Debian Manifesto. La FSF sigue sin tener un núcleo utilizable y financia Debian durante un año.

Stallman insiste en que el sistema se debe llamar GNU/Linux, ya que gran parte del código empleado en el S. O. proviene del proyecto GNU.

1994 (2)

El X Consortium publica la Release 6 del X11 (X11R6).

Se terminan los problemas legales con USL y se publica 4.4BSD-Lite.

BSDI, NetBSD y FreeBSD cambian su código base a esta distribución para evitar problemas legales.

1994 (3)

Primera versión oficial del núcleo 1.0 de Linux.

IBM lanza OS/2 Warp Version 3, un sistema operativo de 32 bits compatible con MS-DOS y Windows 3.x.

1995 (1)

Robert Young y Marc Ewing fundan Red Hat Software. Se proponen construir un S.O. completo empleando sólamente componentes de software libre (como se plantea en Debian), pero con idea de venderlo siguiendo el ejemplo de Cygnus Solutions, aportando calidad y personalización.

1995 (2)

Versión 1.2 del kernel de Linux.

Se estima que hay 1,5 millones de usuarios de Linux.

Se publica Apache 0.6.2, primera versión pública de un servidor web basado en el NCSA httpd 1.3 (el nombre apache viene de que en origen se trataba de un conjunto de ‘parches’ del código de NCSA).

1995 (3)

Debian 0.93R6. Incluye el formato deb, el gestor de paquetes dpkg y el ‘dselect.

A finales de año aparece la versión 1.0 de Apache, que en poco tiempo pasa a ser el servidor Web más empleado en Internet.

En noviembre se libera la versión 5.2 de Red Hat Linux.

1996 (1)

Se disuelve el X Consortium, dejando como última revisión de X11R6 la X11R6.3.

X pasa a manos de The Open Group, un grupo surgido de la Open Software Foundation (OSF).

1996 (2)

Se libera la primera versión de Linux 2.0. Soporta multiples arquitecturas (incluyendo el Alfa de 64bit) y sistemas multiprocesador.

Debian GNU/Linux 1.1 (buzz) y 1.2 (rex). Formato binario ELF, Kernel de Linux 2.0.

1997 (1)

Fork del GCC por parte de Cygnus Solutions (egcs), al final se vuelve a reunificar.

Presentación de The Cathedral and The Bazaar en el Linux Congress.

1997 (2)

Bruce Perens propone el Debian Social Contract y las Debian Free Software Guidelines para determinar qué software se considera libre y cual no. En principio la distinción entre software 'libre' y 'no-libre' se hace comparando las licencias de los programas con las 'DFSG'.

Debian GNU/Linux 1.3 (bo).

1997 (3)

Problemas con KDE, QT y Troll Tech.

K Destop Environment (KDE) fue el primer intento de un escritorio gráfico para Linux.

1997 (4)

Las aplicaciones se distribuían con licencia GPL pero dependían de una biblioteca gráfica (Qt, desarrollada por Troll Tech), que tenía una licencia que prohibía la modificación o el uso de la misma en cualquier entorno gráfico distinto de X (Troll Tech la comercializaba para MacOS y Windows a un precio elevado).

1997 (5)

Se anuncia el proyecto GNOME (GNU Network Object Model Environment), un escritorio gráfico alternativo a KDE con licencia GPL.

1998 (1)

12 millones de usuarios de Linux.

Aparece el motor de búsqueda Google que funciona con Linux.

Netscape anuncia la futura liberación del código fuente del Netscape Navigator usando una licencia propia.

Oracle e Informix anuncian que soportarán Linux. IBM hace lo mismo con DB2.

1998 (2)

Nace la OSI (Open Source Initiative) y se publica la Open Source Definition, que deriva de las Debian Free Software Guidelines. Se trata sobre todo de una operación de marketing.

1998 (3)

Microsoft publica una carta anti-Linux en Francia.

Publicación de una serie de documentos internos de Microsoft denominados los Halloween Documents en los qué se reconoce que Linux puede ser una amenaza para Microsoft y plantea un estrategia para combatirlo.

1998 (4)

Se publica X11R6.4 con una licencia que impide la adopción del mismo por multitud de vendedores (incluido el Xfree86 Project, Inc.). A finales de año vuelve a publicarse con la licencia tradicional.

1998 (5)

Debian GNU/Linux 2.0 (Hamm). Multiarquitectura (i386 y m68k), libc6, 1500+paquetes y 400+ desarrolladores.

No incluye KDE, ya que la distribución de KDE bajo la GPL es incompatible con la licencia de Qt.

Definición de Open Source (1)

Las condiciones de distribución de un programa open-source deben cumplir con los siguientes criterios:

1. Libre redistribución

La licencia no debe restringir a nadie vender o entregar el software como un componente de una distribución de software que contenga programas de distintas fuentes. La licencia no debe requerir royalties ni ningún tipo de cuota por su venta.

Definición de Open Source (2)

2. Código fuente

El programa debe incluir el código fuente, y se debe permitir su distribución tanto como en forma de código como compilado.

Cuando de algún modo no se distribuya el código fuente junto con el producto, deberá proveerse un medio conocido para obtener el código fuente sin cargo, a través de Internet.

Definición de Open Source (3)

El código fuente es la forma preferida en la cual un programador modificará el programa. No se permite el código fuente deliberadamente ofuscado. Tampoco se permiten formatos intermedios, como la salida de un preprocesador, o de un traductor.

Definición de Open Source (4)

3.Trabajos derivados

La licencia debe permitir modificaciones y trabajos derivados, y debe permitir que estos se distribuyan bajo las mismas condiciones de la licencia del software original.

Definición de Open Source (5)

4. Integridad del código fuente del autor.

La licencia puede restringir la distribución de código fuente modificado sólo si se permite la distribución de “parches” con el código fuente con el propósito de modificar el programa en tiempo de compilación.

Definición de Open Source (6)

La licencia debe permitir explícitamente la distribución de software construido en base a código fuente modificado. La licencia puede requerir que los trabajos derivados lleven un nombre o número de versión distintos a los del software original.

Definición de Open Source (7)

5. No discriminar personas o grupos.

La licencia no debe hacer discriminación de personas o grupos de personas.

6. No discriminar campos de aplicación.

La licencia no debe restringir el uso del programa en un campo especifico de aplicación. Por ejemplo, no puede restringir su uso en negocios, o en investigación genética.

Definición de Open Source (8)

7. Distribución de la licencia.

Los derechos concedidos deben ser aplicados a todas las personas a quienes se redistribuya el programa, sin necesidad de obtener una

licencia adicional.

Definición de Open Source (9)

8. La licencia no debe ser específica a un producto.

Los derechos aplicados a un programa no deben depender de la distribución particular de software de la que forma parte. Si el programa es extraido de esa distribución y usado o distribuido dentro de las condiciones de la licencia del programa, todas las personas a las que el programa se redistribuya deben tener los mismos derechos que los concedidos en conjunción con la distribución original de software.

Definición de Open Source (10)

9. La licencia no debe contaminar otro software.

La licencia no debe imponer restricciones sobre otro software que es distribuído junto con el. Por ejemplo, la licencia no debe insistir en que todos los demás programas distribuidos en el mismo medio deben ser software open source.

10. La licencia debe ser tecnológicamente neutral.

Ninguna parte de la licencia debe emplear una tecnología o estilo de interfaz individual.

1999 (1)

Linux Kernel 2.2.

Debian GNU/Linux 2.1 (slink). Se añaden ports de Alfa y SPARC. Introducción de ‘apt’. Más de 2250 paquetes.

Corel Corporation anuncia que va a lanzar una distribución de Linux basada en Debian y el escritorio de KDE.

1999 (2)

Se publica GNOME 1.0.

En mayo del 99 el X Window System pasa del Open Group a X.Org, una organización sin ánimo de lucro centrada en el mantenimiento y desarrollo del X Window System.

1999 (3)

Un tribunal Norteamericano dictamina que Microsoft es un monopolio. En las conclusiones del juez hay poca fe en que Linux pueda ser una amenaza para Microsoft.

Sun Microsystems compra Star Division, empresa creadora del paquete ofimático StarOffice.

1999 (4)

Red Hat Linux 6.0. DELL vende máquinas con el S.O. preinstalado.

En agosto se produce la Primera Oferta Pública de Red Hat, pasando de 14 dólares por acción a 54 dólares el primer día.

Red Hat compra Cygnus Solutions.

Empresas como IBM, Compaq, Oracle, Novel y SAP invierten en Red Hat.

1999 (5)

En diciembre se produce la Primera Oferta Pública de VA Linux, batiendo marcas, pasa de 30 dólares por acción a 239 dólares el primer día.

2000 (1)

VA Linux anuncia SourceForge, un servicio gratuito para alojar proyectos de código abierto.

IBM realiza grandes inversiones en Linux.

En junio del 2000 sale StarOffice 5.2 como producto gratuito en su versión para Linux.

2000 (2)

Debian GNU/Linux 2.2 (Potato). Se añaden las arquitecturas PowerPC y ARM. Más de 3900 paquetes y 450 desarrolladores.

Red Hat Linux 7.0.

2001 (1)

Primeras versiones de Linux 2.4 con muchos problemas de estabilidad, de hecho no se vuelve a trabajar en una versión de desarrollo hasta finales de año, cuando la versión estable ya está en el número de versión 2.4.15.

Sale la versión 3.0 del GCC.

2001 (2)

VA Linux abandona el negocio del Hardware y se centra en SourceForge.

Apple lanza MacOS X, basado en el OpenStep Unix de NeXT, que en poco tiempo pasa a convertirse en el sistema Unix más extendido del mundo.

2001 (3)

Red Hat Linux 7.2

Acuerdo entre Red Hat e IBM para lanzar soluciones empaquetadas y adaptadas en los productos de las eSeries de IBM.

2002

A mediados de año se publica Mozilla 1.0, a finales ya están en la versión 1.2.1.

Debian GNU/Linux 3.0 (Woody). Publicada para 11 arquitecturas diferentes, más de 9000 paquetes y 1000 desarrolladores. Por primera vez se incluye el KDE 2.2

2003 (1)

En marzo el SCO Group (propietario de los derechos del Unix original) denuncia a IBM alegando que han roto el contrato, han robado secretos industriales y más ...

En agosto IBM denuncia a SCO alegando violaciones de la GPL y de patentes, entre otras cosas.

Décimo aniversario del proyecto Debian.

2003 (2)

En septiembre se aprueba en el Parlamento Europeo la legislación sobre patentes con enmiendas que eliminan la posiblidad de patentar el software en Europa.

En octubre se publica el openoffice.org 1.1.

En diciembre se publica la versión 2.6.0 del núcleo de Linux.

Linux en la industria

1.	Servidor Internet de bajo coste con aplicaciones ‘libres’ como bind, sendmail o apache (ISPs). Modelo de desarrollo LAMP (Linux, Apache, MySQL y PHP).

2.	Empresas comerciales comienzan a portar sus productos (Oracle, Sybase), compite con otros *NIX y WindowsNT.

Linux en las administraciones

Utilizable como sistema de escritorio, empieza su implantación en administraciones (caso de Perú o Linex en Extremadura y Andalucía). En la CCVV probablemente en el 2004.

Recientemente se ha publicado en el BOJA (Boletín Oficial de la Junta de Andalucía) un “Decreto de medidas de impulso de la sociedad de la información en Andalucia” que menciona explicitamente el Software Libre.

Referencias: Libros

Open Sources: http://www.oreilly.com/catalog/opensources/book/toc.html

Free As In Freedom: http://www.oreilly.com/openbook/freedom/

Free For All: http://www.wayner.org/books/ffa/

Referencias: Artículos

The Cathedral and The Bazaar: http://www.catb.org/~esr/writings/cathedral-bazaar/

Open Source Software / Free Software (OSS/FS) References: http://www.dwheeler.com/oss_fs_refs.html

Portraits of Open Source Pioneers: http://www.softpanorama.org/People/index.shtml

Referencias: Organizaciones Internacionales

Free Software Foundation: http://www.fsf.org

Open Source Initiative: http://www.opensource.org/

Software in the Public Interest: http://www.spi-inc.org/

Debian: http://www.debian.org/

Referencias: Organizaciones Nacionales y Locales

Hispalinux: http://www.hispalinux.es/

Valux: http://www.valux.org

Polinux: http://www.polinux.upv.es/

LinUV: http://www.uv.es/linuv/

Referencias: Webs

Linux Weekly News: http://lwn.net/

Wired: http://www.wired.com/

Slashdot: http://slashdot.org/

Barrapunto: http://barrapunto.com/

Freshmeat: http://www.freshmeat.net/

Google: http://www.google.com/

Wikipedia: http://www.wikipedia.org/

Referencias: Películas

Revolution OS: http://www.revolution-os.com/

Breve historia de Linux y el movimiento del Software Libre

Sergio Talens-Oliag

2003-05-13T09:17:54