Servidor de las X (X Window System)

Unix ha sido un sistema multitarea, multiusuario y de tiempo compartido desde sus inicios. Además la tecnología de red que incorpora proporciona la capacidad de conectarse al ordenador de forma remota (Telnet). Al momento de desarrollar el sistema de interfaz gráfica de usuario estos conceptos se tomaron en cuenta y formaron parte del diseño.

El sistema de ventanas X también llamado Servidor de las X, es el encargado de los entornos visuales en los sistemas operativos basados en UNIX. Fue el resultado de un proyecto académico llamado “Athena” en el Instituto de Tecnología de Massachusetts (MIT) a mediados de los 80. Las implementaciones principales actualmente son Xfree86 y X.org. La versión actual del protocolo es 11 por lo cual se le suele llamar X11.

X fue diseñado con una arquitectura cliente-servidor. El Servidor X es el que mantiene el control exclusivo de la pantalla y es el encargado de comunicarse con el dispositivo utilizado para la visualización de los gráficos. El cliente se comunica con el servidor y le indica cosas básicas como: “Trazar una línea de aquí para acá”, “Colar un punto aquí”.

Lo grandioso de esta arquitectura radica principalmente que no se limita a un cliente que este en el mismo equipo que el servidor, sino, a clientes remotos por medio de protocolos de comunicación como el TCP/IP.

Al contrario de lo que pareciese, el usuario (mouse, teclado) se comunica directamente con el Servidor X y este se comunica con el Cliente X, ésta comunicación se hace a través del Protocolo X (XProtocol) implementado en la librería Xlib.

Arquitectura X Windows System
Arquitectura X Windows System

El Servidor X reside en la máquina local y es el encargado de recibir las señales del hardware de entrada los envía al cliente X y luego el cliente X indica al Servidor X que se debe hacer.

Window Manager (Gestor de Ventanas) es otro cliente X, sin embargo, este cuenta con algunos privilegios especiales, también llamado meta-cliente, es decir un cliente que gestiona a otros clientes. Existe gran variedad de Window Manager cada uno de los cuales definen un estilo de diseño de ventana, decoración, etc.

Cuando instalamos X Window System en una máquina, este instalará tres componentes:

  1. Servidor X: (paquete xorg)
  2. Display Manager: (paquete x-display-manager) se encarga del login grafico y es el encargado de iniciar el windows manager. Algunos display Manager, para cada entorno de escritorio:
    • Gdm (paquete gdm): display manager de GNOME. Se configura desde Sistema / Administración / Ventana de entrada (comando gdmsetup).
    • Kdm (paquete kdm): display manager de KDE. Se configura desde Inicio / Preferencias del sistema / Administrador de acceso.
    • Wdm (paquete wdm): display manager de WindowMaker.
    • Xdm (paquete xdm): display manager del X Window System.
  3. Window Manager (paquete x-window-manager) cómo se ha dicho, el Window Manager es un cliente X. Se encarga de:
    • Mmanejar las ventanas: crearlas, moverlas, cerrarlas, minimizarlas, qué ventana está encima, cuál tiene el foco, cuál recibe las entradas del teclado, etc.
    • La apariencia de las ventanas (look and feel): bordes, color, tamaño, etc.
    • El fondo del escritorio (background), el menú contextual, el panel (barras de herramientas, barra de tareas, accesos directos), los atajos de teclado (shortcuts) y los escritorios virtuales (workspaces).
    • Lanzar programas cuando el entorno gráfico se inicia, ya sea por medio de un script o mediante un directorio de autoinicio.
    • El window manager no dibuja los iconos del escritorio: de eso se encarga el desktop icon manager(otro cliente X).
En Linux hay gran cantidad de entornos de escritorio:

1. Entornos de escritorio pesados: además del window manager traen numerosas herramientas integradas entre sí que proporcionan todo lo necesario para trabajar en el entorno gráfico, como iconos, session manager (que se encarga de guardar el estado de las aplicaciones cuando hacemos logout y restaurar la sesión cuando nos logueamos de nuevo), file manager, framework (entorno de desarrollo, protocolos para que se comuniquen entre sí las aplicaciones y librerías gráficas) y aplicaciones como editor de textos, navegador, multimedia, gráficos, etc.

Los entornos de escritorio pesados necesitan más recursos para ejecutarse que los entornos de escritorio ligeros (al menos 128 MB de RAM), se configuran mediante herramientas gráficas y los más utilizados son:

  • GNOME: el window manager es Metacity.
  • KDE: el window manager es Kwin.
  • Xfce: el window manager es Xfwm.

2. Entornos de escritorio ligeros: constan del window manager y poco más. Son rápidos, ligeros y estables, con un consumo muy bajo de recursos (sólo necesitan 32-64 MB de RAM), no tienen iconos y normalmente se configuran editando manualmente los archivos de configuración. Algunos son:

  • IceWM.
  • FluxBox y otros derivados de BlackBox, como OpenBox y Waimea.
  • WindowMaker y similares (Twm, Vtwm, Fvwm, Fvwm-Crystal, AfterStep).
  • Enlightenment.

3. Entornos de escritorio 3D: si tenemos una tarjeta gráfica con aceleración y queremos efectos impactantes disponemos de Compiz Fusion, un entorno de escritorio con efectos 3D espectaculares.

Ventajas

1.  La posibilidad de escoger el mejor entorno de escritorio que se adapte a nuestras necesidades.

2.  Desarrollar nuestro propio entorno de escritorio, mejorar o adaptar a nuestras necesidades los entornos de escritorio existentes.

3.   Aprovechar la arquitectura cliente-servidor a través de la red. En donde solo se cuenta con computadoras de muy bajos recursos que podrían funcionar como terminales y tener centralizado el Sistema X.

Desventajas

1.  Gran cantidad de entornos de escritorio, que se hace difícil seleccionar el más adecuado.

2.  Se suele pensar el entorno de escritorio es el Sistema Operativo (Windows), al principio la arquitectura X resultará muy confusa y difícil de comprender.

Bibliografía

http://tldp.org/HOWTO/XWindow-Overview-HOWTO/
http://tldp.org/HOWTO/XWindow-User-HOWTO/
http://es.wikipedia.org/wiki/X_Window_System
http://www.estrellateyarde.es/so/x-window-system
http://gersoft.wordpress.com/2009/02/18/servidor-x/
http://www.freebsd.org/doc/es_ES.ISO8859-1/books/handbook/x11.html

Lecturas recomendadas
http://tldp.org/HOWTO/XWindow-Overview-HOWTO/
http://tldp.org/HOWTO/XWindow-User-HOWTO/

Anuncios

Un comentario sobre “Servidor de las X (X Window System)

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s