El nacimiento del software libre, la GNU:
En 1971, cuando Richard Stallman comenzó su carrera en el MIT (Instituto
de Tecnología de Massachusetts), trabajó en un grupo que usaba software
libre exclusivamente, incluso compañías informáticas frecuentemente distribuían
software libre.
Los programadores eran libres de cooperar unos con otros, y frecuentemente
lo hacían.
En los 80, casi todo el software era propietario, lo cual significa que
tenía dueños que prohibían e impedían la cooperación entre usuarios. Esto
hizo necesario el Proyecto GNU.
Cada usuario de computadoras necesita un sistema operativo; si no existe un
sistema operativo libre, entonces no puedes ni siquiera comenzar a usar una
computadora sin recurrir a un software propietario. Así que el primer elemento
en la agenda del software libre es un sistema operativo libre.
Un sistema operativo no es sólo el núcleo; sino que también incluye
compiladores, editores, formateadores de texto, software de correo y muchas
otras cosas. Por todo esto, escribir un sistema operativo completo es un trabajo
bastante grande. Se necesitaron muchos años.
Se decidió hacer el sistema operativo compatible con Unix porque el diseño
en general ya estaba probado y era portable, y porque la compatibilidad
hacía fácil para los usuarios de Unix cambiar de Unix a GNU.
El objetivo inicial de un sistema operativo libre parecido al Unix ha sido
alcanzado. En los 90, ya se había encontrado o escrito los componentes
principales, excepto uno: el núcleo o kernel.
Entonces Linux, un núcleo libre, fue desarrollado por Linus Torvalds.
Combinando Linux con el ya casi completo sistema GNU se consiguió un sistema
operativo completo: un sistema GNU/Linux.
Linux sigue con el modelo de "desarrollo abierto".
Se desarrolla por un grupo no estructurado de programadores de todo el
mundo unidos a través de la Internet.
Todas las nuevas versiones se liberan al público, se consideren o no con
"calidad de producción".
El método que se sigue para determinar si se tiene una versión estable
o no es el siguiente: Las versiones se numeran como x.y.z; aquellas con
'y' par son versiones estables; aquellas con 'y' impar son versiones de
desarrollo. Por ejemplo, la versión 1.2.13 es estable; la 2.1.44 es de
desarrollo.
Sin embargo, este modelo de desarrollo abierto mantiene siempre la última
versión disponible, y las nuevas versiones se liberan cada pocas semanas.
En ocasiones las funciones nuevas contienen errores, pero con cientos de
personas en Internet probando y leyendo el código fuente suelen corregirse
en cuestión de horas.
Todo esto resulta en un sistema de alta calidad tecnológica, con menos errores que los sistemas comerciales, a un costo cero o muy bajo y con la disponibilidad del código fuente que permite aprender, modificar o ayudar al desarrollo del sistema.
Existen otros SO y kernels como el Hurd de GNU, o FreeBSD de la universidad
de Berkeley que siguen la misma filosofía de desarrollo libre.
Pagar por un Sistema Operativo y por una serie de aplicaciones absolutamente
básicas para el funcionamiento de un elemento tan corriente y tan indispensable
hoy en día como es el PC cada vez tiene menos sentido.
Si no hubiese surgido Linux con toda probabilidad habría surgido otro Sistema
Operativo libre.
En la actualidad hay varios aunque Linux es el más popular de todos y al
ser multiplataforma está disponible no solo en el entorno PC sino en muchas
otras máquinas en las cuales también destaca por sus extraordinarias cualidades
técnicas.