El sistema X Window

33
El sistema X Window Realizado por : Adrián Macías Casado Argelia Esther Martín Martín

description

El sistema X Window. Realizado por : Adrián Macías Casado Argelia Esther Martín Martín. ÍNDICE. Introducción XFree86 Entornos de escritorio y gestores de ventanas Entornos de escritorio Gestores de ventanas Archivos de configuración del servidor xfree86 xf86config Fuentes fontconfig - PowerPoint PPT Presentation

Transcript of El sistema X Window

Page 1: El sistema X Window

El sistema X Window

Realizado por :

Adrián Macías CasadoArgelia Esther Martín Martín

Page 2: El sistema X Window

• Introducción• XFree86• Entornos de escritorio y gestores de ventanas

• Entornos de escritorio• Gestores de ventanas

• Archivos de configuración del servidor xfree86• xf86config

• Fuentes• fontconfig• sistema de fuentes base de x

• Niveles de ejecución• Nivel de ejecución 3• Nivel de ejecución 5

ÍNDICE

Page 3: El sistema X Window

Introducción

• El sistema X Window (x) proporciona la cara del S.O. GUI

• Entorno gráfico para Red Hat Linux suministrado por XFree86 (open source de X).

• XFree86 presenta amplia gama de soporte para != dispositivos y arquitecturas gráficas && posibilidad de ejecutarse en != S.O. y plataformas

• El sistema X Window utiliza una arquitectura cliente –servidor

Page 4: El sistema X Window

Introducción

• Servidor de X: escucha por conexiones desde la aplicaciones Cliente X por medio de la red o una interfaz local de loopback.

• El proceso Servidor gestiona la comunicación con el HW.

• Las aplicaciones cliente de X existen en el espacio del usuario creando una GUI y pasando peticiones al servidor.

Page 5: El sistema X Window

Introducción

Page 6: El sistema X Window

XFree86• Versión 4.x :base del sistema X Window• Incluye mejoras de tecnología para XFree86:

- soporte para la aceleración de HW 3D- la extensión XRender para fuentes anti-alias- diseño basado en controladores modular- soporte para HW de video y disp. de E.

• Los archivos residen principalmente en:- /usr/X11R6/ contiene: 1 servidor X algunas aplicaciones cliente archivos de cabecera X librerías, módulos y documentación- /etc/X11/ contiene: archivos de configuración para cliente y servidor de X. (servirdor X, el viejo servidor xfs , los manejadores de display de X y otros componentes base)

Page 7: El sistema X Window

XFree86

Programa de instalación : instala y configura XFree86

Si la tarjeta de video o el monitor cambia entonces reconfigurar XFree

La reconfiguración del servidor puede requerir /etc/X11/XF86Config

Page 8: El sistema X Window

Entornos de escritorio y gestores de ventanas

• Servidor XFree86 ejecutándose las aplicaciones de cliente X pueden crear su GUI

• Para crear la GUI se deben conectar las 2 clases de GUI más avanzadas de aplicaciones cliente X al servidor XFree86:

•Un entorno de escritorio•Un gestor de ventanas

Page 9: El sistema X Window

Entorno de escritorio

Une diferentes clientes de X, los cuales cuando se usan juntos,crean un ambiente de usuario gráfico común y una plataforma de desarrollo.

- Permiten a los clientes X y a otros procesos comunicarse unos con otros- Permiten a todas las aplicaciones escritas que funcionan en ese ambiente a que realicen tareas avanzadas.

2 entornos de escritorio:•GNOME: herramientas gráficas GTK+ 2•KDE: herramientas gráficas Qt 3

Page 10: El sistema X Window

Gestores de ventanas

• Son programas clientes de X que pueden formar parte del entorno de escritorios o standalone.

• Controlan la forma en que las ventanas son posicionadas, redimensionadas o movidas

• Controlan las barras de los títulos, el comportamiento del foco, los vínculos del botón del ratón y teclas especificadas por el usuario.

• xinit –e <path-to-window-manager>, (donde <path-to-window-manager> el la ubicación del archivo binario de gestor de ventanas (encontrado con which <window-manager-name> )

Page 11: El sistema X Window

Gestores de ventanas

Hay cinco gestores de ventanas:

• kwin: manejador por defecto para KDE. Soporta temas personalizados

• metacity: manejador por defecto para GNOME. Ventanas simples y eficientes que también soporta temas personalizados

• mwm: (Motif) diseñado para ser un gestor standaloneno utilizarlo en conjunto con los entornos KDE y GNOME

• sawfish: era el manejador por defecto de GNOME (8.0). Se puede usar bien sea standalone o con un entono de escritorio

• twm: miniminalista. Proporciona el conjunto de herramientas más básicas de cualquier gestor de ventanas. Es instalado como parte de XFree86.

Page 12: El sistema X Window

Archivos de configuración del servidor XFree86

- /usr/X11R6/bin/XFree86 : carga dinámicamente cualquier módulo de servidor X necesario en el momento de ejecución desde el directorio /usr/X11R6/lib/modules/

- /etc/X11/ : almacena el servidor XFree y los archivos de conf.asociados - /etc/X11/XFree86Config

Cuando se instala Red Hat Linux, los archivos de configuración para XFree86 son creados usando información necesaria reunidasobre el hardware del sistema durante el proceso de instalación

Page 13: El sistema X Window

La estructura de XFree86

/etc/X11/XFree86Config: está formado por secciones que hacen referencia a aspectos específicos del hw del sistema

Sección: comienza con <section-name> y termina con EndSection

Dentro sección: opciones y al menos un valor de opción entre comillas.

# : no son leídas por el servidor XFree86. (comentarios)

Algunas opciones aceptan un swich booleano el cual activa o desactiva la característica. Los valores son:

• Activa la opción: 1, on, true, yes• Desactiva la opción: 0, off, false, no

Page 14: El sistema X Window

ServerFlags

Contiene parámetros globales del servidor XFree86 los cuales puedenser sobreescritos por opciones colocadas en la sección ServerLayout

Section “ServerFlags”Option “DontZap” “true”

EndSection

• “DontZap” “<boolean>” : cuando está a verdadero, previene el uso de [Ctrl]-[Alt]-[Backspace]

•“DontZoom” “<boolean>” : cuando está a verdadero, previene moverse a lo largo de las resoluciones de video configuradas usando las combinaciones de teclas el uso de [Ctrl]-[Alt]-[Keypad-Plus] y [Ctrl]-[Alt]-[Keypad-Minus]

Page 15: El sistema X Window

ServerLayout

Vincula los disp.de entrada y salida controlados por el servidor XFree86Uno de salida y dos de entrada como mínimo (ratón y monitor).

Section “ServerLayout”Identifier “Default Layout”Screen 0 “Screen0” 0 0InputDevice “Mouse0” “CorePointer”InputDevice “Keyboard0” “CoreKeyboard”

EndSection

• Identifier : nombre sección ServerLayout• Screen: nombre sección Screen.

Si tarjeta de video tiene más de una salidaotra entrada Screen • InputDevice: nombre sección InputDevice• Option “<option-name>”: parámetros extra para esta sección.

Es posible crear más de una sección ServerLayout. Sin embargo el servidor sólo leerá la 1ª sección que aparezca.

Page 16: El sistema X Window

Files

Configura la ruta para servicios vitales al servidor XFree86, como la ruta de la fuente.

Section “Files”RgbPath “/usr/X11R6/lib/X11/rgb”FontPath “unix/ :7100”

EndSection

• RgbPath : ubicación de la base de datos de colores RGB• FontPath :Especifica dónde le servidor debe ser conectado para obtener las fuentes desde el servidor de fuentes xfs• ModulePath : especifica directorios alternativos el cual almacena módulos de servidor XFree86

Page 17: El sistema X Window

Module

Especifica cuales son los módulos del directorio /usr/X11R6/lib/modules/ quecargará el servidor XFree86. Los módulos añaden funcionalidad adicional al servidor Xfree86

Section “Module” Load “dbe” Load “extmod” Load “fbdevhw” Load “glx” Load “record” Load “freetype” Load “type1” Load “dri”

EndSection

Page 18: El sistema X Window

InputDevice

Cada sección de InputDevice configura un dispositivo de entrada para el servidor XFree86.

Section “InputDevice” Identifier “Mouse0” Driver “mouse” Option “Protocol” “IMPS/2” Option “Device” “/dev/input/mice” Option “Emulate3Buttons” “no”

EndSection

• Identifier: nombre sección InputDevice. Entrada requerida.• Driver: nombre del controlador del dispositivo que XFree86 debe cargar para el dispositivo.• Option: opciones del dispositivo.

Page 19: El sistema X Window

Monitor

Cada sección Monitor configura un tipo de monitor usado por el sistema.

Section “Monitor” Identifier “Monitor0” VendorName “Monitor Vendor” ModelName “DDC Probed Monitor - ViewSonic G773-2” DisplaySize 320 240 HorizSync 30.0 – 70.0 VertRefresh 50.0 – 180.0

EndSection

• Identifier : nombre para esta sección Monitor • VendorName: nombre del fabricante• ModelName: nombre del modelo del monitor• DisplaySize: tamaño en mm del área de dibujo del monitor• HorizSync: rango de la frecuencia de sincr. horiz. Compatible con el monitor en KHz. • VertRefresh: rango frecuencias de refresco verticales en Hz.• Modeline: modos de video adicionales

Page 20: El sistema X Window

Device

Device

Configuran una tarjeta de vídeo del sistema.

Section "Device” Identifier "Videocard0” Driver "mga” VendorName "Videocard vendor” BoardName "Matrox Millennium G200” VideoRam 8192 Option "dpms”EndSection

• Identifier : nombre para esta sección• Driver: Controlador para la tarjeta de vídeo. (Listados en /usr/ X11R6/lib/X11/ /Cards) • VendorName: Especifica el fabricante de la tarjeta de vídeo.• BoardName: Nombre de la tarjeta de vídeo.• VideoRam: Cantidad de RAM de la tarjeta de vídeo (KB). (Sólo cuando el servidor no puede detectarla)• BusID: Ubicación del bus de la tarjeta de vídeo. Esta opción es necesaria solamente para sistemas con múltiples tarjetas.

Page 21: El sistema X Window

Device

•Screen: Especifica qué salida de la tarjeta de vídeo configura esta sección. (Sólo para tarjetas con múltiples salidas. Deben existir secciones Device separadas y cada una de estas secciones debe tener un valor Screen diferente.)

• Option "<option-name>": Parámetros extra para la sección. ("dpms” activa la conformidad de energía Service Star para el monitor)

Page 22: El sistema X Window

Device

Screen

Vincula una tarjeta de vídeo (Device) con un monitor.

Section "Screen” Identifier "Screen0” Device "Videocard0” Monitor "Monitor0” DefaultDepth 16 SubSection "Display” Depth 24 Modes "1280x1024" "1280x960" "1152x864" "1024x768” \ "800x600" "640x480” EndSubSection SubSection "Display” Depth 16 Modes "1152x864" "1024x768" "800x600" "640x480” EndSubSection EndSection

Page 23: El sistema X Window

Screen

• Identifier : nombre para esta sección.• Device: Especifica una sección Device.• Monitor: Especifica una sección Monitor.• DefaultDepth: Profundidad de color por defecto.• SubSection "Display”: Especifica los modos de la pantalla (resolución) disponibles para cada profundidad de color.

• Depth: Especifica la profundidad de color de la subsección• Modes: Lista los modos disponibles.

Page 24: El sistema X Window

DRI

Parámetros para Direct Rendering Infrastructure (DRI). Permite aceleraciónHardware.

Section "DRI” Group 0 Mode 0666EndSection

Los parámetros establecen los permisos sobre /dev/dri/card? que tienen los usuarios al hacer uso de DRI

Page 25: El sistema X Window

Fuentes

RedHat incluye 2 sistemas de fuentes:

• Fontconfig: Sistema más nuevo, con más características. Es usado por los entornos más actuales

• Sistema de fuentes base de X: Sistema antiguo, basado en xfs. Se conserva por compatibilidad

Page 26: El sistema X Window

Fontconfig

• Permite a las aplicaciones acceder directamente a las fuentes, y usar Xft o similares para dibujar las fuentes en pantalla.

• Algunas aplicaciones usan su propio sistema de fuentes (Abiword y OpenOffice)

• Para la configuración incluye el fichero /etc/fonts/fonts.conf (sustituye a /etc/X11/XftConfig)

Page 27: El sistema X Window

Fontconfig

Para añadir fuentes:

1. Copiar el fichero de la fuente• Para todo el sistema: /usr/share/ fonts/local/• Para un usuario: .fonts/ del usuario

2. Actualizar la información de caché• fc-cache <path>

En GNOME existe una forma gráfica (Instalación para un usuario):1. Abrir Nautilus (explorador de ficheros)2. Ir a fonts:///3. Copiar la fuente allí

Page 28: El sistema X Window

Sistema de fuentes base X

• Conservado por compatibilidad

• Hace uso de xfs (demonio que sirve fuentes)

• Xfs debe estar iniciado (/etc/rc.d/init.d/xfs start)

• Atiende a la configuración en las líneas FontPath

Page 29: El sistema X Window

Sistema de fuentes base X

Configuración de xfs:

•alternate-servers: Lista de servidores alternativos de fuentes separados por comas. •catalogue: Lista ordenada de rutas que contienen las fuentes a utilizar.•client-limit: Número de clientes máximo.•clone-self: Permite al servidor de fuentes clonarse para superar client-limit.•default-point-size: Tamaño de punto por defecto para cualquier fuente que no especifique este valor.•default-resolutions: Lista de resoluciones soportadas por el servidor XFree86.•deferglyphs: Especifica si retrasar la carga de glyphs (el gráfico usado para visualmente representar una fuente).•error-file: Ruta para los informes de error.•no-listen: Evita que xfs use conexiones del protocolo especificado (ej: tcp).•port: Puerto empleado•use-syslog: Especifica si utilizar el registro de errores del sistema.

Page 30: El sistema X Window

Sistema de fuentes base X

Añadir fuentes:

1. Añadir /usr/share/fonts/local/ a la ruta xfs:• chkfontpath --add /usr/share/fonts/local/

2. Copiar el archivo de fuente al directorio3. Actualizar la información de la fuente:

• ttmkfdir -d /usr/share/fonts/local/ -o /usr/share/fonts/local/fonts.scale 4. Reiniciar el servidor xfs:

• service xfs reload

Page 31: El sistema X Window

Niveles de ejecución

• Por defecto, RedHat arranca en modo gráfico (nivel 5)

• Existe un modo similar, pero sin modo gráfico (nivel 3)• Existe una forma de cargar las X desde aquí

Page 32: El sistema X Window

Nivel de ejecución 3

• Arranque de las X:1. Comando startx2. startx llama a xinit con los ficheros de configuración:

• .xinitrc (del home del usuario)• Ó /etc/X11/xinit/xinitrc• Contienen opciones de entorno

3. xinit busca configuración de xmodmap (mapeo del teclado)• .Xmodmap y .Xkbmap (del home del usuario)• Ó Xmodmap y Xkbmap (del directorio /etc/X11)

4. xinit busca la configuración de otras aplicaciones X• .Xresources (home del usuario)• /etc/X11/Xresources

5. xinit ejecuta el contenido de /etc/X11/xinit/xinitrc.d/6. xinit ejecuta las aplicaciones cliente:

• .Xclients (home del usuario)• /etc/X11/xinit/Xclients

Page 33: El sistema X Window

Nivel de ejecución 5

• Permite hacer login gráfico (display manager)• Hay tres implementaciones:

• Gdm - Display manager de GNOME• Kdm - Display manager de KDE• Xdm - Display manager de XFree86

• Para seleccionar cuál se carga, se usa el comando prefdm (que modifica /etc/sysconfig/desktop)

• Proceso de inicio:1. Script /etc/X11/xdm/GiveConsole

• Asigna la propiedad de la consola al usuario2. Script /etc/X11/xdm/Xsession

• Ejecuta gran parte del proceso xinit (entorno, cargar clientes,…)

• Hará uso de .xsession y .Xclients para decidir el entorno de escritorio o gestor de ventanas a ejecutar

3. Script /etc/X11/xdm/TakeConsole• Vuelve a asignar la propiedad al root