Mucho se ha hablado de Linux, de los sistemas operativos Unix-like y de muchas otras cosas relacionadas al pingüino. Pero ¿por qué Linux no es un sistema operativo?











Un sistema operativo es el conjunto de programas que gestionan los recursos de hardware de un sistema informático y ofrecen servicios comunes al resto de las aplicaciones. Un ordenador sin un sistema operativo no es más que un montón de hojalata y componentes electrónicos inútiles.


La palabra clave entonces es conjunto. Si bien el sistema operativo puede ser un sólo programa, generalmente está conformado por un conjunto y entre ellos el más importante es el kernel.


El kernel o núcleo es el software responsable de gestionar el acceso al hardware del ordenador. Entre sus funciones más importantes están la administración de la memoria, del tiempo de procesador y del acceso a los periféricos del sistema. Un ordenador puede ejecutar muchos programas a la vez, por eso el kernel también es el encargado de decidir qué programa hace uso de qué recurso o dispositivo y durante cuánto tiempo.


Entonces, técnicamente hablando, Linux es un kernel de código abierto, basado en Minix y encargado de gestionar el hardware de un ordenador. Es parte fundamental de un sistema operativo tipo Unix pero por sí sólo no es un sistema operativo.



A inicios de los 90, el proyecto GNU comenzó el desarrollo de un sistema operativo tipo Unix usando el kernel Hurd y todo el conjunto de aplicaciones desarrolladas por ellos mismos. Sin embargo, el diseño ambicioso de este kernel hizo que su salida se demorara más de lo previsto y es aquí cuando la popularidad de Linux juega un papel importante, pues el proyecto GNU decide usarlo como reemplazo de Hurd mientras terminaban su desarrollo. Se combinaron las aplicaciones de GNU con el kernel de Linux y se dio origen a lo que hoy se conoce como sistema operativo GNU/Linux.


Desde ese entonces, la FSF ha insistido en que los sistemas operativos que usen el kernel Linux y las aplicaciones GNU sean llamados GNU/Linux y de esta manera dar crédito a ambos proyectos.


¿Y por qué esto ya no importa? Principalmente porque con el paso del tiempo el proyecto GNU ha cambiado su enfoque hacia otras tareas bajándole prioridad al desarrollo. En consecuencia muchas de las aplicaciones de GNU han sido reemplazadas por otras creando así un amplio ecosistema de alternativas; tanto así que en todas las distribuciones la pieza constante es el kernel. Entonces por facilidad, pragmatismo o simplemente pereza preferimos llamar Linux a todo el sistema operativo y no sólo al kernel.