Desde su kernel 0.02 hasta hoy el camino ha sido muy largo y plagado de obstáculos de los más variados. Una evolución constante, una base de usuarios cada vez mayor y gran cantidad de alternativas hacen de Linux “el” sistema operativo del futuro. Pasa, ponte cómodo y ve como se gestó.
Si eres un usuario recientemente “convertido” a Linux, es muy probable que no conozcas la historia completa aunque seguro la has escuchado por partes, y te han contado que fue desarrolado por un estudiante finlandés. Claro que el no hizo todo el trabajo: hubo quienes antes que el "pavimentaron el camino" y luego quienes lo recorrieron junto a el.
Sin embargo el mérito (enorme por cierto) de Linus Torvalds es el de haber tenido un sueño, un objetivo, y haber ido por el. Y además no haber tenido vergüenza de hacerlo público y abrir su proyecto a la participación de otros. Pero no vamos a repasar aquí la conocida historia de los mensajes de Linus en los grupos de noticias de Minix (aunque la mencionaremos brevemente más adelante) sino que vamos a intentar enlazar todos los componentes que han logrado hacer de Linux lo que es hoy.
En muchas historias hay un “comienzo antes del comienzo”, y esta no es la excepción, porque hay que ser justos y decir que Linux no sería lo que es (o tal vez jamás hubiera llegado a existir) si no fuera por Richard Stallman y el movimiento GNU. Tal vez hayas escuchado hablar alguna vez de Stallman, o RMS como le gusta que le llamen.
Stallman es el creador del movimiento GNU, algo que surgió gracias a su espíritu libre y a su visión del software como algo que debería unir a la gente en lugar de separarla. Es probable que esas palabras te suenen un tanto exageradas, pero hay que tener en cuenta el contexto en el que fueron dichas. Allá por comienzos de los años 70 todavía estaban muy frescos el movimiento hippie de los 60, y las protestas estudiantiles del 68 en París o México DF en las que idealistas dieron su vida luchando por una causa. Equivocados o no, eran los jóvenes de aquellos tiempos, y así de idealista era (y sigue siendo) Stallman.
RMS ingresó en el año 71 al MIT, más precisamente al laboratorio de Inteligencia Artificial, donde su trabajo era el de programador. En el MIT, al igual que en casi todas las universidades, Unix era el sistema operativo utilizado, lo que seguramente ayudó a que muchos estudiantes fueran volviendose muy afines al mismo. El código fuente estaba disponible ya que muchas veces era necesario realizar ajustes de todo tipo para lograr que Unix corriera en los ordenadores de la época, y no han sido pocas las veces en que los estudiantes han logrado resolver problemas que Unix manifestaba. Y los estudiantes, afines a esa tendencia, solían compartir sus desarrollos de código, que eran principalmente utilizados para periféricos o para aplicaciones de uso académico. Así nacieron los hackers, que eran aquellos que desarrollaban software. Como ves, el significado del término era muy distinto al actual.
Pero para 1980, gracias a la madurez alcanzada por el lenguaje C y el hardware, se logró la portabilidad, que no era otra cosa que la posibilidad de ejecutar programas en diferentes plataformas sin (casi) modificaciones al código. Esto que a primera vista debiera haber sido fantástico solo logró separar a las partes interesadas, pero las compañías que vendían Unix a las universidades, bibliotecas, hospitales o Ejército se dieron cuenta que la portabilidad no era buena para su negocio, y el software se volvió un modelo cerrado.
A muchos “académicos” no les gustó, entre ellos Stallman, quien decidió comenzar un proyecto para crear alterntivas de software libre a las de modelo cerrado, algo que inició en 1983.
El nombre surgió en torno a Unix pero haciendo mención al hecho de ser libre: “GNU´s Not Unix” y según cuenta Stallman su nombre surgió cuando vio un documental sobre el Gnu o Ñu, un animal africano. La Free Software Foundation fue fundada en 1985 con el manifesto GNU, la declaración de principios.
Su primera aplicación fue Emacs, el popular editor que aún hoy sigue siendo usado por miles de fanáticos, luego siguió el compilador GCC: con un editor y un compilador C el camino ya estaba iniciado. Con ellos fue posible desarrollar otras aplicaciones y con el tiempo y esfuerzo de muchos GNU se estaba volviendo realidad.
Pero faltaba algo, un componente esencial, el kernel. Corazón del sistema operativo, es el que realiza las llamadas a procedimentos y organiza el funcionamiento general del sistema, y solo eso faltaba para poder tener un sistema operativo completamente funcional. Y aquí es donde entra en acción Linus Torvalds, el joven estudiante finlandés que quería un sistema operativo libre y basado en Unix.
O Minix, que en esa época se utilizaba en la mayoría de las universidades europeas, y que había sido escrito por Andrew Tanenbaum para utilizar en sus cátedras de universidad y para complementar la parte teórica de su libro Sistemas Operativos Modernos, que aún hoy sigue siendo material de estudio.
Linus pidió a Tanenbaum permiso para modificar el código fuente de Minix, pero éste lo rehusó. El código fuente en si mismo estaba disponible ya que era material de estudio, pero no podía ser modificado, por ello el joven comenzó a pensar en crearlo por su cuenta. Y lo hizo, todo sin ayuda.
Aquí quiero detenerme un poco en la personalidad de Linus, un muchacho extrovertido pero que sin embargo gustaba mucho de pasar largas horas en su casa, estudiando y desarrollando software.
Sus comienzos en la informática podrían remitirse a fines de los años 70 cuando su abuelo le regaló un Commodore Vic 20 y Linus, que al poco tiempo se aburrió de los juegos que traía, comenzó a desarrollar sus cosas en el lenguaje de programación Basic.
Torvalds es hijo de dos finlandeses con un pensamiento bien de izquierda, y de hecho su padre era un confeso comunista que se fue a Moscú a realizar parte de sus estudios allí. Como vemos, se conjugaron en el joven varios factores que incidieron para lograr lo que logró: talento, espíritu soñador, obstinación…
En Agosto de 1991 Torvdalds envió un mensaje al foro comp.os.minix avisando sobre su creación, y pidiendo a quienes quisieran que pidieran características para implementarlas, en un sistema que no sería “grande y profesional” como GNU.
Ese “hobbie” como lo definía Linus se convertiría en el fenómeno que hoy conocemos. Linux comenzó a existir gracias a que Torvalds tuvo a mano herramientas GNU como Emacs y el compilador Gcc, sin las cuales probablemente no hubiera podido comenzar.
Por ello, y porque Linus abrazó la Free Software Foundation, el verdadero nombre del sistema operativo es GNU/Linux, aunque sea más conocido solo por Linux por una cuestión de velocidad de escritura y pronunciación. Luego, en 1992 el kernel 0.12 fue liberado como GNU, y adoptado por la comunidad libre, que ya tenía todo completo para armar un sistema operativo totalmente configurable.
Alan Cox, un personaje muy importante en el mundo del pingüino, tomó contacto con el naciente sistema operativo en 1992 y lo instaló en un viejo ordenador de la Universidad de Swansea, en Gales, donde el trabajaba. Allí descubrió errores en la implementación de la capa TCP/IP y los arregló. Una vez que envió el código fue rápidamente abrazado por la comunidad, que le brindó la pesada tarea de mantener el kernel estable, mientras Linus se dedicaba al desarrollo y prueba del nuevo kernel, los de número impar, siempre conocidos como inestables o unstable.
El pequeño hobby de Linus estaba demostrando sus virtudes, y el disponer de código fuente ayudaba a que muchos hackers pudieran mejorarlo y contribuir.
Dado que era libre de ser modificado y adaptado a gusto, llegaron las primeras distribuciones, Slackware apareció en 1993 y fue en los primeros tiempos la distribución más popular y emblemática, y en lo personal la primera que instalé allá por 1996. Luego llegaron Debian (la preferida de los linuxeros de ley), Suse y Red Hat, y para 1996 Linux estaba comenzando a tener mucha presencia en los medios, y todos los aficionados y estudiantes de informática querían probarlo: el fenómeno había explotado.
Gracias a la disponibilidad de su código fuente Linux pudo ser adaptado para su uso como servidor web con Apache, y debido a su capacidad de entorno multiusuario y multitarea verdadero obtuvo rápidamente gran reconocimiento en el mundo de la joven internet de los 90. El resto es historia ya por todos conocida, por ello quisimos comenzar desde lo que consideramos el verdadero comienzo del gran sistema operativo libre.
Ahora que ha llegado a ocupar un lugar cada vez más notorio, Linux deberá mostrar su evolución. Seguir recorriendo el camino hacia las interfases de usuario más amigables sin sacrificar estabilidad y seguridad. Seguir volviendose más fácil para todos, algo que ha costado mucho pero se ha logrado a pesar de la resistencia inicial de los “linuxeros” más conservadores.
La gran escalabilidad de Linux, que puede ser instalado en dispositivos tan diversos como móviles, consolas de videojuegos, ordenadores, superordenadores, ordenadores de a bordo de coches y aviones, y lo que te imagines, ha sido clave en su éxito. Pero no es momento para detenerse, lo que se necesita es, a mi criterio, más y más aplicaciones, ya que es lo que el usuario precisa para su uso diario.
Más compatibilidad con videojuegos, para que ya nadie tenga que resignar ese costado que, admitamoslo, también es importante para muchos. Pero sobre todo aplicaciones de escritorio, de las que usamos día a día, algo que cada vez está más cubierto en Linux. Mucho del futuro de Linux ha sido discutido y te lo contamos hace poco.
Esta es una historia que podríamos denominar de “pre” Linux, porque son muchos los que han contribuido para que este fenomeno explote. Sin Stallman y todas las herramientas que puso a disposición del mundo seguramente no hubiera sucedido jamás, como así tampoco sin la ayuda de Alan Cox, el “segundo jefe” de Linux durante mucho tiempo, hasta que declinó esa reponsabilidad para para realizar sus estudios de posgrado.
Hace pocos días vimos la historia de los comienzos de Apple y muchos seguramente se enteraron de la historia de Jobs, Wozniak, el dinero que Jobs le “birló” a Woz, y una casualidad que dio inicio a una gran empresa.
La de Linux es la historia de un soñador como Stallman, otro como Linus, un talentoso y desinteresado hacker como Cox, y muchos otros habilidosos y anónimos que han contribuido a lo largo de los años. Hay en la historia de la informática varias historias como esta, en la que casualidades, desinterés por el dinero y espíritus soñadores dieron orígen a grandes cosas, y ya veremos algunas de ellas.
Y si piensas que no tienes el talento de Linus o Stallman puede que tengas razón, y no hay nada de que sentirse avergonzado ya que son muy habilidosos y no es nada fácil estar a su altura. Pero si lo deseas igual puedes colaborar, como beta tester, como traductor de documentación, siempre habrá lugar para quienes quieran colaborar y seguir escribiendo la historia.
Historia que será el futuro, y bien distinta de la que acabamos de ver.