¿Qué es un Sistema Operativo Linux?

Sistema Operativo Linux

En esta ocasión vamos a ver qué es un Sistema Operativo Linux, un concepto tan obvio que a veces algunos lo podemos pasar por alto. Muchos hablamos de distribuciones, pero, ¿Sabemos qué diferencia a una distribución basada en UNIX a una basada en Linux??

Sistema Operativo Linux - Kernel

 

¿Qué es un Sistema Operativo Linux?

Todos conocemos las famosas distribuciones Linux, las nombramos, y seguro que conocemos unas cuantas de ellas destinadas a servidores, distribuciones de escritorio, distribuciones de seguridad informática (como Kali Linux), etc.. Pero… ¿Realmente sabes qué es una distribución Linux? O mejor dicho, ¿Una distribución GNU/Linux? Vamos a verlo a continuación.

 

¿Qué es Linux?

Aparentemente una pregunta demasiado obvia, pero no es tan obvia si te pones a pensarlo. Linux es básicamente el núcleo de nuestra distribución, el corazón, el kernel. Éste es el que hace que funcione todo lo que nosotros utilizamos en nuestra distribución; Las aplicaciones, los periféricos, la tarjeta de red, etc… Se podría decir que el Kernel Linux es un software que sirve principalmente para interactuar con el hardware. Como ya hemos dicho, en un Sistema Operativo Linux no necesitamos drivers.

Esto se debe a que están integrados en el kernel. Cuando nosotros conectamos, por ejemplo, una Webcam, al contrario que en Windows, no necesitamos instalar los drivers específicos de dicho periférico, ya que éstos se encuentran integrados en el Kernel Linux. Bien es cierto que opcionalmente podemos instalar otros tipos de drivers (privativos, por ejemplo) y esto lo sabrá el usuario principiante-medio ya que la mayoría de distribuciones cuentan con un asistente que nos permite utilizar drivers de código abierto o privativos para nuestra tarjeta gráfica. Resumidamente podríamos decir que Linux es el núcleo de nuestra distribución. La base sobre la que se construye todo. GNU y Linux hacen una distribución, ya que GNU es la colección de Software que le da funcionalidades a nuestra distribución, y Linux es la base sobre la que se construye todo ese software.

 

Sistema Operativo Linux - Diagrama del Kernel
Diagrama del funcionamiento del Kernel Linux

 

¿Qué Kernels existen en Linux?

Si aún no lo sabías, Linux es tan maravilloso que tiene dos kernel principales a disposición del usuario: el Kernel genérico y el Kernel de Baja Latencia (RT). ¿Cuáles son sus características?

  • Kernel Genérico: Se podría decir que es el kernel “de fábrica” que te viene por defecto en cualquier distribución. Éste es de uso genérico y se adapta a cualquier usuario, a no ser que requieras un kernel diferente para llevar a cabo tareas mas específicas, como por ejemplo, conectar instrumentos a tu distribución Linux y escuchar el sonido en tiempo real. Éstos kernel se diferencian de los de baja latencia porque, los procesos no se pueden interrumpir para cambiar a otro diferente en cualquier momento, si no que tienen que esperar a que lleguen a ciertos puntos de ejecución donde ya se pueden pausar para ejecutar otros procesos. Esto es la llamada latencia.

 

  • Kernel de Baja Latencia (Real Time): Los Kernel de baja latencia se diferencian de los genéricos básicamente porque dan una mayor respuesta. Imagináos que queremos utilizar nuestra distribución GNU/Linux para conectar una guitarra y emular efectos de amplificadores en nuestra distro. Cuando toquemos una cuerda, como es normal, querremos una respuesta inmediata, no nos hará nada de gracia que toquemos una cuerda y el audio vaya con un retraso de 50 milisegundos porque nos daríamos cuenta de que algo va mal. Pues básicamente para eso son los kernel de Baja Latencia: Nos permiten una respuesta instantánea, ¿Cómo? Interrumpiendo procesos sin necesidad de llegar a un punto específico de la ejecución. A diferencia del genérico, en vez de esperar a que algún proceso llegue a un punto específico (como un punto de control por así decirlo), lo interrumpe sin más para pasar a otra tarea con más prioridad. Además de todo esto, éstos Kernel cuentan con un sistema de prioridades mucho más estricto, donde las tareas prioritarias prácticamente destituyen a las tareas con menos prioridad.

Sistema Operativo Linux

 

 

¿Cuál es el adecuado para mí?

Si no vas a hacer ninguna tarea que requiera una respuesta en tiempo real, te aconsejo que no te compliques la vida y dejes el Kernel por defecto. Por el contrario, si eres músico y dispones de los conectores necesarios para conectar tu instrumento al ordenador y te gustaría usar tu Sistema Operativo Linux como una especie de amplificador, entonces te recomiendo un Kernel de Baja Latencia, por la sencilla razón de que la respuesta que te va a dar en cuanto toques una cuerda de la guitarra va a ser instantánea. Aunque parezca una tontería, pero cuando la respuesta no es inmediata se nota bastante y eso nos puede resultar bastante molesto, ya que puede desincronizarnos.
Por otra parte, independientemente de si eres músico o no, también puedes utilizar un Kernel de Baja Latencia si necesitas un Sistema de Prioridades muy estricto. Si lo que quieres es que nuestra tarea de alta prioridad no se interrumpa por nada del mundo, entonces también deberías considerar utilizar un Kernel RT. Imaginaos que estáis utilizando un programa para medir los decibelios de sonido, y no quieres que se produzca ni el más mínimo microcorte en el programa. Lo ideal sería utilizar un Kernel RT y aumentar la prioridad del programa para asegurarnos de que no se interrumpe la ejecución ni por el momento más minimo.

 

Sistema Operativo Linux
Así interactúa el Kernel con el hardware y el software

 

¡Extra! Cómo instalar un Kernel de Baja Latencia

Para instalar un Kernel de Baja Latencia, bastará con instalarlo con el gestor de paquetes del Sistema Operativo Linux que usemos. Muy importante: recordad que hay que actualizar las entradas de nuestro cargador de arranque, ya que si no, no nos iniciará el Sistema y podemos llevarnos un pequeño sustillo.

Para instalar el Kernel RT en Archlinux y derivados bastará con escribir lo siguiente:

yaourt -S linux-rt && sudo update-grub

 

Para instalar el Kernel RT en Ubuntu y derivados y actualizar las entradas del GRUB, escribiremos lo siguiente:

sudo apt-get install linux-headers-lowlatency
sudo apt-get install linux-lowlatency

sudo update-grub

 

Si por el contrario usas Syslinux en vez de GRUB, escribe lo siguiente en ambos casos:

sudo syslinux-install_update

¡Todo listo por aquí! Disfruta de tu Kernel de Baja Latencia 😉

Conclusión

Personalmente, a mi siempre me ha bastado con usar un Kernel genérico, ya que, hasta día de hoy, no he requerido una mayor respuesta por parte de mi Sistema GNU/Linux. Me gustaría destacar que, aunque no lo haya mencionado antes, el Kernel RT consume más memoria que el normal. Si no eres músico utilizas Linux para el día a día sin pedirle mayores exigencias, entonces con un Kernel normal es más que suficiente. En mi caso, sólo he sufrido el retardo del audio una vez cuando conecté unos cascos con una tarjeta de sonido integrada por USB, pero en mi caso, cambiarme a ALSA solucionó ese pequeño lag que notaba.

Y tú, ¿Necesitas un Kernel de Baja Latencia?

About Kevin 26 Articles
Fanático de Linux ante todo. Técnico en Sistemas Microinformáticos y redes. Soy curioso por naturaleza, me gusta investigar sobre aquello que no sé, en especial sobre tecnología. La sabiduría es poder.

1 Comment on ¿Qué es un Sistema Operativo Linux?

Leave a Reply

Tu dirección de correo no será publicada.


*