domingo, 22 de abril de 2012

Componentes del servidor grafico en Ubuntu

Componentes del servidor gráfico en Linux

Para crear nuestro media center debemos modificar el inicio del entorno gráfico para que se arranque la aplicación xbmc, y además será necesario que en caso de que esta provoque errores, que se reinicie de forma automática.
Como puedes imaginar, deberemos conocer que componentes gráficos forman el entorno de escritorio de Linux.

Servidor gráfico (Xserver)

Por debajo de todo el entramado de pantallas que vemos cuando usamos Linux en modo gráfico, hay un programa llamado servidor gráfico (Xserver), que en versiones muy antiguas de linux seria el servidor Xfree, y que para el caso de las últimas distribuciones (a partir del 2005 aproximadamente) sería el proporcionado por Xorg.
El servidor gráfico solamente se va a encargar de mostrar por un layout (o diseño de pantalla) todo lo que le envien los clientes que a el se conecten. El layout estará formado por una o varias pantallas (de forma que puedo crear un escritorio compuesto), y uno o varios teclados y ratones.
Pero, el servidor gráfico no se encarga de mover las ventanas, cambiar su tamaño, Mostrar un escritorio con iconos, etc: Estas tareas son realizadas por otros componentes, como son el gestor de ventanas o el gestor de escritorios.
El servidor gráfico en Linux tiene una potencia inusitada, ya que los clientes que se conectan al servidor pueden ser procesos locales al servidor (es decir, procesos que están ejecutándose en el mismo ordenador), o procesos que pueden ejecutarse remotamente.
Pero esta potencia tiene su coste: Es un entorno gráfico más lento que el usado por Microsoft en Windows.

Aplicaciones gráficas

Las aplicaciones gráficas son aplicaciones que conectan con el servidor gráfico para mostrar un area rectangular llamado ventana, y dentro de el una serie de controles que forman la aplicacion.
Un ejemplo de ventana lo vemos a continuación:
Una aplicación gráfica no tiene bordes de ventana, ya que los bordes son dibujados por el gestor de ventanas, que veremos a continuación. Es decir, la aplicación no es más que la ventana sin bordes.

Bibliotecas de controles

Una aplicación se diseña usando controles que pertenecen a una biblioteca de controles, que no es más que un conjunto de controles (como cuadros de texto, botones, etc) que podemos usar al programar una aplicación.
Actualmente Linux usa profusamente una de las dos siguientes bibliotecas de controles:
  1. gtk: Son los controles usados en el escritorio gnome.
  2. qt: Son los controles usados en el escritorio KDE.

Entorno de escritorio

Un entorno de escritorio no es más que una serie de programas que nos van a permitir usar aplicaciones gráficas en el entorno gráfico de forma cómoda. Este nos va a proveer de una interfaz de usuario gráfica completa, incluyendo iconos,  ventanas, barras de herramientas, etc... , así como la posibilidad de mover las ventanas o modificar sus tamaños. Sus componentes más importantes son el gestor de ventanas y el gestor de escritorio.

Gestor de Ventanas

Una aplicación para el servidor gráfico no dispone de bordes de ventana, ni de botón maximizar, etc.
Para que podamos mover las ventanas, cambiar su tamaño y resto de tareas a las que estamos habituados debemos tener instalado un gestor de ventanas, que no es más que un programa que se va a encargar de dibujar bordes a nuestras ventanas, y nos va a permitir realizar tareas tan habituales con estas, que serían imposibles si solo dispusiéramos del servidor gráfico.
Como en puntos anteriores, en función del entorno de escritorio, tendremos distintos gestores de ventanas:
  1. Para KDE disponemos de Kwin.
  2. Para gnome disponemos de Metacity.

Gestor de archivos

El gestor de archivos nos va a proveer de la posibilidad de poder manejar carpetas y archivos mediante el uso de iconos, usualmente dibujando un/os escritorio/s donde también podremos dejar nuestros iconos.
  1. En KDE el gestor de archivos es el propio navegador Web Conqueror.
  2. Nautilis: Gestor de archivos para Gnome.

Gestor de Sesiones

La forma tradicional de iniciar el entorno gráfico en Linux era iniciar una consola y lanzar el comando startx.
Startx se encargaba de arrancar para el usuario el entorno de escritorio (gnome, KDE, etc) que tuviera configurado.
Pero posteriormente, surgió la necesidad de crear un entorno que nos permitiera arrancar el equipo de una forma similar a como lo hacia Windows: Pidiéndonos nuestro usuario y contraseña. Eso es un gestor de sesiones.
Además de pedirnos nuestro usuario y contraseña, el gestor de sesiones nos va a permitir iniciar la sesión en uno de los entornos de escritorio que tengamos instalados en el equipo, ya sea Unity, KDE, Gnome, etc.
Los gestores de sesiónes más habituales son los siguientes:
  1. xdm: Xdm fue el primer gestor de sesiones para el mundo linux y actualmente está en desuso. Además es muy limitado ya que no permite escoger el entorno de escritorio al usuario.
  2. gdm: Es el gestor de sesiones de Gnome. Gdm nos permitirá iniciar sesiones, tanto locales como remotas. También permite apagar y reiniciar el equipo, escoger el entorno de escritorio al usuario, el idioma del teclado y los mensajes, etc. Es un entorno muy completo, aunque está empezando a caer en desuso.
  3. kdm: Es el gestor de sesiones oficial de KDE. Es similar a gdm.
  4. lightdm: Es un gestor de sesiones nuevo. Su objetivo es ser un gestor de sesiones ligero, y muy adaptable. Es el que usa Ubuntu desde hace algunos años.

Resumen

Cuando iniciamos Linux, se arranca el servidor gráfico Xorg, que nos mostrará un programa llamado Gestor de Sesiones, donde podremos iniciar sesión.
Tras el inicio de sesión, se descarga el gestor de sesiones, y se carga un gestor de escritorio, que nos mostrará el escritorio y las barrás de herramientas que forman el entorno.
En Linux actualmente, el gestor de sesiónes más usado es lightdm.

No hay comentarios:

Publicar un comentario