Interfaz gráfica de usuario en Linux

Los sistemas operativos basados en Unix existieron antes de que se hiciera masivo el uso de las interfaces gráficas de usuario (GUI o Graphical User Interface). Sin embargo, este componente ha llegado a ser con el tiempo una parte esencial de los sistemas operativos de escritorio. En este post explicaremos de qué hablamos al referirnos a la interfaz gráfica de usuario.

Interfaz gráfica de usuario

En Linux, la GUI estándar es el X Window System, más comúnmente conocido como X o X11 (llamada de esta manera por la versión actual de la misma). La implementación de X11 que utilizan la mayoría (si no todas) de las distribuciones modernas es Xorg, una iniciativa de código abierto y conjunta entre la fundación que lleva el mismo nombre y la comunidad Freedesktop.

Términos clave

Antes de continuar, es importante hacer las siguientes distinciones:

X11 se implementa siguiendo una arquitectura cliente-servidor, aunque no en el sentido en que estamos acostumbrados a tal término.

  • Un servidor X por sí solo no proporciona la interfaz de usuario.
  • El servidor X se ejecuta siempre en el equipo al cual está conectado el monitor. Una aplicación (o más de una) que se ejecuta en el mismo sistema o en uno remoto actúa como cliente X. Cada cliente le indica al servidor qué mostrar en la pantalla (ventanas, barras de desplazamiento, formas, etc).
  • Algunos ejemplos de clientes X son un navegador web (como Firefox o Google Chrome), aplicaciones de oficina como LibreOffice Writer o Calc, y un emulador de terminal.
  • Los gestores de ventanas y los entornos de escritorio son dos tipos especiales de clientes X. Los primeros facilitan la interacción del usuario con el sistema y controlan la apariencia básica de las aplicaciones. Son responsables de los bordes, tamaño de las ventanas, y la posibilidad de modificar el mismo. Por otro lado, los entornos de escritorio proporcionan una GUI completa (íconos, ventanas, barras de herramientas, fondos de pantalla y widgets de escritorio, etc). Además, incluyen un gestor de ventanas. Como es de esperar, un gestor de ventanas individual consume mucho menos recursos del sistema que un entorno completo.
  • El gestor de pantalla o display manager, es una interfaz gráfica que forma parte del entorno de escritorio y se muestra al final del proceso de arranque para permitirnos iniciar sesión (en vez de hacerlo a través de nuestra shell por defecto).
Componentes de la interfaz gráfica de usuario en Linux: un gestor de ventanas y el entorno de escritorio
Componentes de la interfaz gráfica de usuario en Linux: un gestor de ventanas y el entorno de escritorio

Tres entornos de escritorio muy utilizados actualmente son GNOME, KDE, y XCFE. Metacity es un gestor de ventanas muy conocido y es empleado por defecto en GNOME. Otros gestores de ventanas de uso extendido son IceWM, Fluxbox y Enlightenment.

Para instalar un gestor de ventanas o un entorno de escritorio es necesario disponer de un servidor X funcionando previamente. Trataremos ese tema en próximos posts, comenzando por aquí.

¡Nos leemos en breve!