Algo de teoría:

X-window es una arquitectura de ventanas diseñada a mediados de los ochenta para poder disponer de un entorno gráfico en estaciones de trabajo.
A diferencia de otros entornos de ventanas, la arquitectura X-Window se diseñó para ser independiente de plataforma, de manera que se pudiera instalar en cualquier ordenador que corriera un sistema tipo UNIX.
Actualmente se utiliza, mayoritariamente, la implementación que ha desarrollado el proyecto XFree86 Inc, llamada XFree86.
Esta implementación se distribuye con licencia open source.

X-Window está diseñado con una arquitectura cliente/servidor.
Este tipo de arquitectura significa que el software está estructurado en dos partes totalmente independientes (cliente y servidor) que se comunican a partir de un enlace de comunicación.
Aunque esto implica que el diseño y la codificación es un poco más compleja, esta arquitectura proporciona una flexibilidad total en el sentido que cliente y servidor pueden estar ubicados en diferentes sitios y utilizando diferentes plataformas y/o sistemas operativos.
Naturalmente, esta arquitectura también nos permite trabajar con X-Window de forma local en la máquina donde está situado el cliente.
Los componentes de los que está compuesto X-Window son: cliente, servidor y enlace de comunicación.
Cliente y servidor están diseñados para ser independientes de plataforma y, en el caso del enlace de comunicación, para ser independiente del protocolo de red.

A medida que las tarjetas gráficas han ido evolucionando, cada vez más aplicaciones y juegos necesitan de un procesamiento en 2D o 3D más rápido.
Si bien la arquitectura de ventanas X-Window aporta muchas ventajas, cuando queremos utilizar este tipo de aplicaciones el diseño cliente/servidor no es el más adecuado, ya que no aprovechamos las funciones de procesamiento 2D y 3D extremadamente rápido de las tarjetas gráficas instaladas en el servidor.
Para solucionar este problema, a partir de 1998 apareció una tecnología llamada DRI (Direct Rendering Infrastructure), que permite aprovechar los chips de procesamiento de las tarjetas para ahorrar trabajo al cliente X-Window.
De esta forma, continuamos teniendo todas las ventajas de X-Window aprovechando los elementos específicos de las tarjetas gráficas.

Para poder configurar el servidor X adecuadamente hay que conocer los siguientes datos.

1. Tarjeta gráfica:

El driver de la tarjeta gráfica se encarga de la comunicación entre la tarjeta y el núcleo, para saber cual es podemos hacer 'discover --xdriver video'.
El indentificador es cualquier nombre para identificar a la tarjeta o tarjetas que tengamos instaladas.
La cantidad de memoria es imprescindible para conocer la resolución que es soportada.
El uso del framebuffer, no es imprescindible pero proporciona más rendimiento.

2. Teclado:

La regla XKB: Para poder manejar bien el teclado el servidor debe saber que tipo de reglas tiene que aplicar, normalmente es 'xfree86' para los PC y 'sun' para las estaciones Sun.
El modelo del teclado, para los PCs se indica con 'pc' mas el numero de teclas, normalmente 101 o 104 ('pc101' o 'pc104').
Keyboard layout: en esta sección debemos identificar el país del teclado con su referencia ISO 3166: En el caso de España es 'es', para Francia 'fr', etc.
Keyboard options: opción para personalizar algunas de las teclas del teclado.

3. Ratón:

El puerto, para los ratones PS/2 el puerto es /dev/psaux y para los COMx es /dev/ttySx (COM1 : /dev/ttyS1).
Tipo: Hay que escoger el tipo, el modelo y el fabricante de una lista.
Emulación: Cuando el ratón tiene 2 botones se puede emular un tercero pulsando los dos botones a la vez.

4. Monitor:

Identificador: Un nombre cualquiera que identifique al monitor.
Monitor LCD: Se pregunta si el monitor es LCD.
Características: Resolución, frecuencia...

Toda esta información es guardada en /etc/X11/XF86Config-4.

Cuando se esta en las Xs se puede alternar a las diferentes consolas con Ctrl-Alt-Nº, donde Nº es el numero de la consola (el 7 es el de las Xs), para ir a la consola Nº1 habrá que pulsar Ctrl-Alt-1 y para volver a las Xs: Alt-7.

Para controlar que usuarios podrán entrar en el sistema X-Window existe el archivos /etc/X11/Xwrapper.config, donde se encuentra la directiva 'allowed users', con la cual especificamos quién está autorizado para arrancar X-Window con los valores:

  • 'console' : cualquier usuario que esté en un consola local puede iniciar X-Window.
  • 'rootonly' : sólo el root puede iniciar X-Window.
  • 'anybody' : cualquier usuario del sistema puede iniciar X-Window (aunque no esté conectado localmente).