GNU, LINUX ó GNU/LINUX?

Desde que descubrí que en este mundo de la informática existen una gran cantidad de Sistemas operativos aparte del tan mundialmente conocido y vulnerable a virus WINDOWS, me llamo mucho la atención uno, el cual es incluso tan famoso y utilizado que el S.O. de la ventanita uno al que en blogs, periódicos, videos, etc. llaman LINUX…

Linux…si, se que suena como a alguna marca de impresora o a una paleta con centro de chicle… pero no es así… se que muchos en alguna ocasión o en mas de una hemos podido escuchar que linux es un sistema operativo que se maneja bajo una licencia de software libre, que no es vulnerable a virus, que se implementa en servidores debido a la característica que mencione con anterioridad… todo ello es cierto, excepto su nombre.

Si así es muchos de nosotros tenemos la equivocada idea de que ese sistema operativo del tan famoso pingüinito fue desarrollado por completo por Linus Torvalds lo cual es completa y totalmente incorrecto. La verdadera historia (y no digo que Linus no tuviera nada que ver en desarrollar este S.O) comienza por su nombre, el S.O. que muchos conocemos por Linux tiene el nombre abreviado por así decirlo, su nombre verdadero y correcto es:

GNU/LINUX

sé que muchos se preguntarán: ¿que?, ¿comó?,¿Donde? pero la realidad es esa, en muchos lugares se refieren al S.O. GNU/LINUX como solo Linux y eso es mas o menos como si nosotros tuviéramos un nombre y no un apellido o viceversa… algo un poco complicado no?

El nombre GNU, GNU’s Not Unix (GNU no es Unix), viene de las herramientas básicas del sistema operativo creadas por el proyecto GNU (este tema es para otra nota) , iniciado por Richard Stallman en 1983 y mantenido por la FSF (fundación de Software Libre, también es un tema aparte). El nombre Linux viene del núcleo Linux, inicialmente escrito por Linus Torvalds en 1991.

La contribución de GNU es la razón por la que existe controversia a la hora de utilizar Linux o GNU/Linux para referirse al sistema operativo formado por las herramientas de GNU y el núcleo Linux en su conjunto.

Pero quien mejor para poder explicarles el por que es GNU/LINUX y no solamente Linux sino el Creador de GNU Richard Stallman quien desde su pagina nos explica por que ese nombre:

Linux y el Proyecto GNU
escrito por Richard Stallman

 [ Imagen de un ñu bebé ]

Muchos usuarios de computadoras usan una versión modificada del sistema GNU (18.000 caracteres) a diario, sin darse cuenta. Debido a un particular giro de acontecimientos, la versión de GNU más ampliamente usada hoy es, con frecuencia, más conocida como «Linux», y muchos usuarios no son conscientes del alcance de su conexión con el Proyecto GNU.

Efectivamente hay un Linux, y esta gente lo usa, pero no es el sistema operativo. Linux es el núcleo: el programa del sistema que asigna los recursos de la máquina a los otros programas que usted ejecute. El núcleo es una parte esencial de todo sistema operativo, pero inútil por sí solo; sólo puede funcionar en el contexto de un sistema operativo completo. Linux se usa normalmente en combinación con el sistema operativo GNU: el sistema completo es básicamente GNU, con Linux actuando de núcleo.

Muchos usuarios no son plenamente conscientes de la diferencia entre el núcleo, que es Linux, y el sistema completo, al que también llaman «Linux». El uso ambiguo del nombre no facilita la comprensión. A menudo, estos usuarios piensan que Linus Torvalds desarrolló todo el sistema operativo en 1991, con un poco de ayuda.

Los programadores generalmente saben que Linux es un núcleo. Pero como generalmente han oído llamar también «Linux» a todo el sistema, frecuentemente se imaginan una historia que justifique que todo el sistema se llame como el núcleo. Por ejemplo, muchos creen que una vez que Linus Torvalds terminó de escribir Linux, el núcleo, sus usuarios buscaron más software libre que lo acompañara, y encontraron que (sin ninguna razón en particular) casi todo lo necesario para hacer un sistema de tipo Unix estaba ya disponible.

Lo que encontraron no fue una casualidad: era el sistema GNU. El software libre disponible conformaba un sistema completo porque el Proyecto GNU había estado trabajando desde 1984 en hacer uno. El Manifiesto GNU (31.000 caracteres) había definido la meta de desarrollar un sistema libre de tipo Unix, llamado GNU. El Anuncio Inicial del Proyecto GNU también bosqueja algunos de los planes originales para el sistema GNU. Para cuando se escribió Linux, el sistema estaba casi terminado.

La mayoría de los proyectos de software libre tienen el objetivo de desarrollar un programa particular para una tarea particular. Por ejemplo, Linus Torvalds se propuso escribir un núcleo de tipo Unix (Linux); Donald Knuth se propuso escribir un formateador de textos (TeX); Bob Scheifler se propuso desarrollar un sistema de ventanas (el Sistema de Ventanas X). Es natural medir la contribución de este tipo de proyectos en base a los programas específicos que hayan producido.

Si intentásemos medir la contribución del Proyecto GNU de esta manera, ¿qué conclusión obtendríamos? Un vendedor de CD-ROM encontró que en su «Distribución Linux», el software GNU constituía el contingente único, alrededor del 28% del total de código fuente, y esto incluía varios de los principales componentes esenciales sin los cuales no habría sistema. El propio Linux era alrededor del 3%. Así que si usted fuera a elegir el nombre del sistema basándose en quién escribió los programas que lo forman, la opción única más adecuada sería «GNU».

Pero no pensamos que ésa sea la manera correcta de enfocar la cuestión. El Proyecto GNU no era, y no es, un proyecto para desarrollar paquetes de software específicos. No era un proyecto para desarrollar un compilador de C, aunque lo hicimos. No era un proyecto para desarrollar un editor de textos, aunque desarrollamos uno. El propósito del Proyecto GNU era desarrollar un sistema libre de tipo Unix completo: GNU.

Mucha gente ha hecho importantes contribuciones al software libre del sistema, y todas ellas merecen reconocimiento. Pero la razón por la que es un sistema integrado –y no sólo una colección de programas útiles– es que el Proyecto GNU se había propuesto hacerlo así. Hicimos una lista de los programas necesarios para hacer un sistema libre completo, y sistemáticamente encontramos, escribimos, o buscamos gente para escribir todo lo que había en la lista. Escribir componentes esenciales pero poco divertidos (1) porque no se puede tener un sistema sin ellos. Algunos de nuestros componentes del sistema, las herramientas de programación, se hicieron populares por sí mismas entre los programadores, pero escribimos muchos componentes que no son herramientas (2). Incluso desarrollamos un juego de ajedrez, GNU Chess, porque un sistema completo necesita también buenos juegos.

A principios de los años 90 habíamos preparado todo el sistema salvo el núcleo (y también estábamos trabajando en un núcleo, el GNU Hurd, que funciona sobre Mach). El desarrollo de este núcleo fue mucho más duro de lo que esperábamos; el GNU Hurd empezó a funcionar de manera fiable en 2001. Ahora estamos empezando a preparar el lanzamiento real del sistema GNU, con el GNU Hurd.

Afortunadamente, no hubo que esperar al Hurd, porque Linux ya estaba disponible. Cuando Linus Torvalds escribió Linux, rellenó la última laguna importante. La gente pudo entonces poner Linux junto al sistema GNU para obtener un sistema libre completo: una versión basada en Linux del sistema GNU; el sistema GNU/Linux, para abreviar.

Juntarlos suena sencillo, pero no fue un trabajo trivial. Algunos componentes de GNU (3) necesitaron cambios sustanciales para funcionar con Linux. Integrar un sistema completo en forma de una distribución que funcionara sin más que «desembalarla» fue también un gran trabajo. Esto precisó resolver la cuestión de cómo instalar y arrancar el sistema (un problema que no habíamos atacado, porque todavía no habíamos alcanzado ese punto). La gente que desarrolló las diversas distribuciones del sistema hicieron una contribución sustancial.

El Proyecto GNU apoya tanto a los sistemas GNU/Linux como al sistema GNU (incluso económicamente). Financiamos la reescritura de las extensiones relacionadas con Linux de la biblioteca de C de GNU, de modo que ahora se integran bien, y los sistemas GNU/Linux modernos usan la versión actual de la biblioteca sin necesidad de hacerle modificaciones. También financiamos las primeras etapas del desarrollo de Debian GNU/Linux.

A día de hoy usamos sistemas GNU basados en Linux para la mayor parte de nuestro trabajo, y esperamos que usted también lo haga. Pero por favor, no confunda a la gente usando el nombre «Linux» de manera ambigua. Linux es el núcleo, uno de los principales componentes del sistema. El sistema en su conjunto es más o menos el sistema GNU, con Linux añadido. Cuando hable de esta combinación, por favor, llámela «GNU/Linux».

Pues si no sabias que Linux en realidad se llamaba GNU/LINUX ahora ya lo sabes, y no te preocupes ni te sientas triste por no saberte el nombre completo de este S.O. ya que te apuesto que muchos de nosotros también acabamos de descubrirlo con esta nota!.

Si te interesa el Proyecto GNU/LINUX puedes visitar esta pagina: http://www.gnu.org/gnu/thegnuproject.es.html

Apéndice: Además de GNU, otro proyecto ha producido independientemente otro sistema operativo libre de tipo Unix. Este sistema es conocido como BSD, y fue desarrollado en la Universidad de California, Berkeley. En los 80 no era libre, pero se volvió libre a principios de los 90. Cualquier sistema operativo libre hoy día es casi con toda seguridad una variante del sistema GNU, o algún tipo de sistema BSD.

La gente pregunta a veces si BSD es también una versión de GNU, como GNU/Linux. Para hacer su código libre, los desarrolladores de BSD se inspiraron en el ejemplo del Proyecto GNU, y hubo llamamientos explícitos de activistas de GNU que ayudaron a persuadirlos, pero su código se superponía poco con el de GNU. Los sistemas BSD de hoy en día usan algunos programas GNU, del mismo modo que el sistema GNU y sus variantes usan algunos programas de BSD; sin embargo, tomados en su conjunto, son dos sistemas diferentes que evolucionan por separado. Los desarrolladores de BSD no escribieron un núcleo y lo añadieron al sistema GNU, así que un nombre como GNU/BSD no encajaría en esta situación.

De BSD hablare en otro capitulo más…

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s