versiones pagina oficial historia definicion caracteristicas linux-kernel linux-distro

linux-kernel - pagina - unix



¿Cuál es la relación entre un sistema operativo Linux y un kernel? (4)

"kernel" y "shell" son los términos originales, como digamos "core" y "shell". "Shell" es el intérprete de comandos. "Distro" es un término que significa un shell (s) personalizado (s) + programas específicos incluidos en esa distribución. Una distribución puede tener varias conchas sin embargo. Desde la perspectiva del usuario, esto está cerca del concepto de lenguaje humano. Es el idioma que tiene que hablar con el terminal que hablará con shell. Shell lo leerá y buscará un archivo dentro del almacén de archivos (aún dentro de la shell / distro). Una vez que se encuentra el archivo (ejecutable), el shell lo envía al kernel que realiza el trabajo (proceso). Piense en un automóvil que tendrá el mismo motor básicamente no modificado durante muchos años, pero que cambiará su chasis / carrocería. Creo que necesito detenerme aquí ...

He estado usando Linux durante varios años, pero nunca he ido más allá de la instalación desde un CD / DVD. Si el administrador de aplicaciones no tenía lo que buscaba en el software, entonces era una causa perdida.

Pero ahora mismo estoy tratando de entender qué es "Linux".

La primera palabra que aparece en mi cabeza es "kernel". Después de leer en Wikipedia, entiendo que un kernel es un software que se ejecuta para dar acceso a hardware (CPU, RAM +++) a otro software (aplicaciones OS +). También maneja la memoria, pero ¿no es eso lo que se supone que debe hacer el sistema operativo (lo que recuerdo de la clase del sistema operativo)?

¿Es la distribución de Linux solo una lista de programas?

Toma mi distro favorita: fedora. Ahora está en la versión 14 y se envía con el kernel 2.6.35.

¿El núcleo viene de algún lugar central y es el núcleo de cada distribución de Linux? Si esto es cierto, ¿es la distribución de Linux solo una forma de hacer que la computadora con el kernel sea más fácil de usar? De esa manera, la distribución + kernel es el sistema operativo porque la una sin la otra no es utilizable (tal vez el kernel puro, pero ¿quién se sienta en eso?).


Bastante correcto Para mí, "linux" es solo el kernel. Pero es bastante común referirse a distribuciones enteras como linux. Eso es lo que molesta tanto a RMS. Él sostiene que debería llamarse GNU / Linux, ya que ve a las distribuciones como el kernel de Linux más el software adicional del proyecto GNU. Esto también tiene sentido, pero nunca uso el término GNU / Linux. Estoy hablando del kernel linux, o "distribuciones de linux", o una distribución específica.

Entonces sí. Una distribución es solo el núcleo (que puede incluir parches específicos de distribución) más todos los programas adicionales que lo hacen utilizable.

El kernel es un proyecto central, y es nominalmente el mismo en cada distro, pero la mayoría de las distros lo personalizan un poco.

Y el software adicional no solo hace que el kernel sea más fácil de usar, sino que también lo hace utilizable. Un kernel es simplemente interruptores de controladores, controladores de dispositivos y llamadas al sistema. Básicamente, virtualiza el hardware y proporciona un entorno estándar para que los programas funcionen.

En cuanto a la frase "sistema operativo", puede ser confuso. Algunas personas pueden decir que el kernel ES el sistema operativo, y todo lo demás es una utilidad o una aplicación o algo más. Otras personas pueden decir que el kernel y algunos otros paquetes conforman el sistema operativo, pero la mayoría del software no es parte del sistema operativo. Otros pueden decir que todo el software en la distribución forma parte del sistema operativo.


Linux es el núcleo (me encuentro canalizando RMS aquí). Eso es lo que escribió Linus y eso es en lo que los desarrolladores del kernel continúan trabajando hoy. Controla el hardware.

Un sistema operativo es algo que incluye un kernel además de bastantes "aplicaciones" de nivel inferior que le permiten a usted como usuario hacer cosas útiles con su computadora (piense en el administrador de archivos, el panel de control, etc.).

Una distro es un sistema operativo empaquetado con un paquete completo de aplicaciones de alto nivel, como herramientas de autoría de DVD, navegadores web, suites de oficina, etc., casi infinito. Incluso Windows hace esto hasta cierto punto, con la inclusión de Wordpad, Calculator y Paint, aunque no al nivel increíblemente prolífico al que se extienden las distribuciones de Linux. ¿Realmente necesitamos 472 administradores de archivos diferentes? La elección es buena, sí, pero solo hasta cierto punto :-)

Ahora hay áreas grises entre kernel / OS e incluso OS / distro, pero creo que ese es un buen punto de partida para entender cómo funciona.


OS es solo kernel y shell que funcionan de la mano.

Distro es una combinación de shell (s) personalizados que trabajan en un kernel. Esto significa, por ejemplo, Kali, Ubuntu, fedora, Mint, etc., son diferentes distribuciones que funcionan en el kernel de Linux.

Shell actúa como una interfaz entre el usuario y el kernel. Shell puede ser una interfaz de línea de comandos o una interfaz gráfica de usuario. Bash, sh, Windows GUI son algunas shells.

El kernel es el centro del sistema operativo. Asigna tiempo y memoria a los programas y maneja el almacén de archivos, etc.

Para explicar con más detalle shell y Kernel, supongamos que escribe cd. El shell busca en el almacén de archivos el archivo que contiene el cd del programa, y ​​luego solicita al kernel, a través de llamadas al sistema, que ejecute el cd del programa en myfile.

Para tomar un ejemplo simple, la GUI de Windows es un Shell, el sistema operativo Windows es una distribución por parte de Microsoft.

De manera similar, el sistema operativo Ubuntu o el sistema operativo fedora, etc., son una distribución que funciona en varios shell utilizando el kernel de Linux.

Shell o una distro no hacen que Kernel sea más fácil de usar, pero lo hace utilizable para el usuario.

Así que ahora, simplemente puedes decir que Linux es un kernel. Linux + shell (Bash, Gnome, etc.) es una distribución de Linux, por ejemplo, Ubuntu, Mint, Kali, etc., y cada uno de ellos es un sistema operativo.