Tabla de contenidos
“"Dios observ� todo lo que hab�a hecho, y vio que era muy bueno"” -- Versi�n de la Biblia del Rey James. G�nesis 1:31
En este cap�tulo se proporciona una visi�n general de un sistema GNU/Linux. En primer lugar se describen los principales servicios que ofrece el sistema operativo. A continuaci�n, se explican con una considerable falta de detalle los programas que implementan dichos servicios. El prop�sito de este cap�tulo es hacer posible la comprensi�n del sistema en su conjunto, por lo cual cada parte en concreto se encuentra descrita en profundidad en cap�tulos posteriores.
Un sistema operativo tipo UNIX consiste en un n�cleo (o Kernel) y algunos programas de sistema. Existen tambi�n diversos programas de aplicaci�n con los que podemos trabajar. El n�cleo es el coraz�n del sistema operativo: Mantiene el control de los archivos sobre el disco, inicia los programas y los ejecuta de forma concurrente, asigna memoria y otros recursos a los distintos procesos, recibe y env�a paquetes desde y hacia la red, etc. El n�cleo hace muy poco por si solo, pero proporciona las herramientas b�sicas con las que se pueden construir los dem�s servicios. [1] Adem�s, evita que se pueda acceder al hardware directamente, forzando a todos a utilizar las herramientas provistas. Esta manera de trabajar del n�cleo otorga cierta protecci�n a los usuarios entre s�. Las herramientas del n�cleo se utilizan a trav�s de las llamadas al sistema. Se puede encontrar informaci�n adicional sobre este tema consultando la secci�n 2 de este manual.
Los programas de sistema utilizan las herramientas provistas por el n�cleo para implementar varios servicios requeridos en un sistema operativo. Los programas de sistema (y todos los dem�s programas), se ejecutan 'por encima del n�cleo', en lo que se denomina modo usuario. La diferencia entre los programas de aplicaci�n y los de sistema es su finalidad: las aplicaciones tienen el prop�sito de realizar tareas �tiles a los usuarios (o de jugar, si se tratara de un juego), mientras que los programas de sistema son necesarios para que el sistema funcione. Un procesador de textos es una aplicaci�n; mount es un programa de sistema. La diferencia a menudo es confusa, y de cualquier manera, es solo importante para los categorizadores compulsivos.
Un sistema operativo tambi�n puede contener compiladores y sus correspondientes librer�as (GCC y la librer�a de C en particular para GNU/Linux), aunque no todos los compiladores de todos los lenguajes de programaci�n son necesariamente parte del sistema operativo. Tambi�n puede haber documentaci�n, y en algunas ocasiones juegos. Tradicionalmente, el sistema operativo est� definido por el contenido de los discos o cintas de instalaci�n; con GNU/Linux esta definici�n no puede aplicarse, debido a que se encuentra repartido sobre distintos sitios FTP del mundo.
[1] De hecho, a menudo es considerado err�neamente como el sistema operativo en s�, aunque no lo es. Un sistema operativo proporciona muchos m�s servicios que el n�cleo por s� mismo.