Estado Del Arte De Los Gestores De Ventanas En GNU/Linux TFC – GNU/Linux
Total Page:16
File Type:pdf, Size:1020Kb
UOC Universitat Oberta de Catalunya Estado del arte de los gestores de ventanas en GNU/Linux TFC – GNU/Linux Raúl Gómez Sánchez 2012-2013-1 Estado del arte de los gestores de ventanas en GNU/Linux Raúl Gómez 1 Estado del arte de los gestores de ventanas en GNU/Linux Raúl Gómez Índice 1 Introducción a los gestores de ventanas ................................................................... 4 1.1 Metáfora del escritorio ............................................................................................ 6 1.2 WIMP ............................................................................................................................ 7 1.3 Tipos de gestores .................................................................................................... 8 1.3.1 Gestores de ventanas de composición ............................................................ 8 1.3.2 Gestores de ventanas de pila ............................................................................ 10 1.3.3 Gestores de ventanas de mosaico .................................................................. 11 2 El sistema X Window ..................................................................................................... 12 2.1 Características principales .................................................................................. 13 2.2 Arquitectura ............................................................................................................. 15 2.3 Protocolo ICCCM .................................................................................................... 18 2.4 Librerías de interfaces de usuario para el entorno X Window ................... 19 3 Evolución de los Gestores de ventanas GNU/Linux ............................................. 21 3.1 WayLand ................................................................................................................... 21 3.2 MicroXwin ................................................................................................................. 23 3.3 Metisse ...................................................................................................................... 24 3.4 Xynth .......................................................................................................................... 25 3.5 DirectFB .................................................................................................................... 25 4 Análisis práctico de Gestores de ventanas en GNU/Linux ................................. 26 4.1 KWIN............................................................................................................ 28 4.2 Enlightenment ............................................................................................ 33 4.3 Mutter + Compiz ......................................................................................... 37 4.4 Fluxbox ....................................................................................................... 41 4.5 Openbox ...................................................................................................... 44 4.6 Xfwm............................................................................................................ 48 5 Conclusiones ................................................................................................................... 52 6 Bibliografía ....................................................................................................................... 54 2 Estado del arte de los gestores de ventanas en GNU/Linux Raúl Gómez Tabla de ilustraciones Figura 1. Esquema cliente-servidor del gestor X ........................................................................... 5 Figura 2. Escritorio del Xerox Star ................................................................................................. 6 Figura 3. Evolución de los paradigmas .......................................................................................... 8 Figura 4. Gestor de ventana de composición con efecto cubo ..................................................... 9 Figura 5. Gestor de ventana de pila ............................................................................................ 10 Figura 6. Gestor de ventana de mosaico ..................................................................................... 11 Figura 7. Esquema de comunicación del sistema X Window ...................................................... 14 Figura 8. Arquitectura X .............................................................................................................. 16 Figura 9. Pasos del funcionamiento de la arquitectura del sistema X Window .......................... 17 Figura 10. Esquema de módulos de Qt y relación con C++ y Java .............................................. 20 Figura 11. Arquitectura Weyland ................................................................................................ 21 Figura 12. Escritorio ejecutando Weyland .................................................................................. 22 Figura 13. Relación entre módulos de MicroXWin ..................................................................... 23 Figura 14. Ejemplo de efectos en Metisse .................................................................................. 24 Figura 15. Esquema del funcionamiento de DirectFB ................................................................. 25 Figura 16. Selección de gestores de ventanas en Kubuntu ......................................................... 27 Figura 17. Ejemplos de decoración de Kwin ............................................................................... 28 Figura 18. Escritorio ejecutando KWin con efecto cubo (OpenSuse – KDE) ............................... 29 Figura 19. Monitor del sistema con proceso Kwin ...................................................................... 30 Figura 20. Características del proceso Kwin ................................................................................ 31 Figura 21. Escritorio de equipo ejecutando Enlightenment ....................................................... 33 Figura 22. Pstree de equipo ejecutando Enlightenment ............................................................ 34 Figura 23. Monitor de sistema de equipo ejecutando Enlightenment ....................................... 35 Figura 24. Características del proceso enlightenment ................................................................ 36 Figura 25. Escritorio Mutter + Compiz con efectos de transparencia ......................................... 37 Figura 26. Ejemplo de efectos en Compiz (Fedora) .................................................................... 38 Figura 27. Instalación de drivers dedicados para la ejecución de Compiz .................................. 39 Figura 28. Pstree con Mutter y Compiz ...................................................................................... 39 Figura 29. Monitor del sistema con detalle del proceso Compiz ................................................ 40 Figura 30. Escritorio fluxbox con selector de gestores ............................................................... 41 Figura 31. Top y pstree de equipo ejecutando fluxbox ............................................................... 42 Figura 32. Monitor de sistema y detalle del proceso fluxbox ..................................................... 43 Figura 33. Escritorio ejecutando Openbox .................................................................................. 44 Figura 34. Pstree de equipo ejecutando Openbox ...................................................................... 45 Figura 35. Monitor de sistema ejecutando Openbox ................................................................. 46 Figura 36. Propiedades del proceso Openbox en ejecución. ...................................................... 47 Figura 37. Escritorio ejecutando Xfwm realizando selección de escitorios virtuales. ................ 48 Figura 38. Pstree de equipo ejecutando Xfwm ........................................................................... 49 Figura 39. Monitor del sistema de equipo ejecutando Xfwm ..................................................... 50 3 Estado del arte de los gestores de ventanas en GNU/Linux Raúl Gómez 1 Introducción a los gestores de ventanas Un gestor de ventanas es un programa informático que controla la ubicación y apariencia de las ventanas bajo un sistema de ventanas en una interfaz gráfica de usuario. Originalmente, cada aplicación diseñaba y codificaba su propio interfaz de usuario y sus componentes. Después, fueron desarrolladas librerías con subrutinas para simplificar la escritura de la parte de los programas destinada al usuario de interfaz. Finalmente, se produjeron kits de herramientas que fueron ampliamente distribuidas y que permitieron a algunas de ellas convertirse en estándar de facto. Las acciones asociadas al gestor de ventanas suelen ser, abrir, cerrar, minimizar, maximizar, mover, escalar y mantener un listado de las ventanas abiertas. Es también muy común que el gestor de ventanas integre elementos como: el decorador de ventanas, un panel, un visor de escritorios virtuales, iconos y un tapiz, por lo que hablaremos a continuación de las metáforas del escritorio y el paradigma WIMP, para explicar el sistema de relación entre el usuario y el computador. Las plataformas Windows y Mac OS X ofrecen un gestor de ventanas estandarizado por sus vendedores e integrado en el propio sistema