stringtranslate.com

Administrador de ventanas de composición

Un administrador de composición , o compositor , es un software que proporciona a las aplicaciones un búfer fuera de la pantalla para cada ventana. El administrador de composición compone los buffers de ventana en una imagen que representa la pantalla y escribe el resultado en la memoria de visualización. Un administrador de ventanas de composición es un administrador de ventanas que también es un administrador de composición. [1] [2]

Los administradores de composición pueden realizar procesamiento adicional en ventanas almacenadas en búfer, aplicando efectos animados 2D y 3D como fusión , desvanecimiento , escalado , rotación , duplicación , flexión y contorsión, barajado, desenfoque , redirección de aplicaciones y traducción de ventanas a una de varias pantallas y escritorios virtuales . La tecnología de gráficos por computadora permite representar efectos visuales en tiempo real, como sombras paralelas , vistas previas en vivo y animaciones complejas. [3] [4] Dado que la pantalla tiene doble buffer , no parpadea durante las actualizaciones.

Los administradores de composición y administradores de ventanas de composición más utilizados incluyen:

Contraste con los administradores de ventanas apilables

El administrador de ventanas envía a cada ventana un mensaje para que se vuelva a pintar cuando sea necesario. Las ventanas pueden superponerse. Cuando se mueve una ventana del frente, puede revelar un área de la ventana de atrás que anteriormente estaba oculta. Los administradores de ventanas se clasifican ampliamente según su estrategia para hacer que el área recién revelada se muestre al usuario. En la estrategia de "apilamiento", el administrador de ventanas le dice a la ventana trasera que se vuelva a pintar. En la estrategia de "composición", el administrador de ventanas mantiene un búfer de memoria fuera de la pantalla que contiene la apariencia completa de cada ventana, incluida la ventana posterior.

Con un administrador de apilamiento, el proceso de repintado puede corromperse cuando un programa que es lento, no responde o tiene errores no responde a los mensajes de manera oportuna. [5] [6] Un programa malicioso puede hacer que el sistema parezca inestable simplemente por no volver a pintar su ventana. Entonces, pueden resultar una o más de las siguientes condiciones:

Con un administrador de composición, si una ventana deja de pintarse sola cuando el administrador de ventanas lo solicita, su último repintado permanecerá mostrado y la ventana podría atenuarse. A menudo, el título cambia para reflejar el estado de la ventana que no responde. Un programa puede impedir que su ventana se mueva o desasigne, pero generalmente no causará problemas al volver a pintar.

Historia

Uno de los primeros sistemas con un sistema de ventanas de composición fue el Commodore Amiga , lanzado en 1985. Las aplicaciones podían primero solicitar una región de memoria fuera de la región de visualización actual para usarla como mapa de bits. El sistema de ventanas Amiga luego usaría una serie de bits blits usando el hardware del sistema para construir un compuesto de los mapas de bits de estas aplicaciones, junto con botones y controles deslizantes, en la memoria de visualización, sin requerir que estas aplicaciones vuelvan a dibujar ninguno de sus mapas de bits. [10]

Administrador de ventanas Metacity , parte de GNOME 2

El 24 de marzo de 2001, Mac OS X v10.0 se convirtió en el primer sistema operativo convencional en ofrecer composición y efectos 3D basados ​​en software, proporcionados por su componente Quartz . Con el lanzamiento de Mac OS X v10.2 y Quartz Extreme , el trabajo de composición podría trasladarse al hardware de gráficos dedicado . [2] [11]

En 2003, Sun Microsystems demostró un ambicioso sistema de gráficos 3D llamado Project Looking Glass para colocarlo encima de su kit de herramientas Swing . Se mostró por primera vez en la LinuxWorld Expo de 2003 . Aunque Apple amenazó con demandar a Sun por violación de derechos de propiedad intelectual , otros administradores de ventanas han implementado algunas de las funciones en Looking Glass. En 2006, Sun interrumpió el desarrollo, cuyo negocio principal era la transición de estaciones de trabajo Unix orientadas gráficamente a la venta de mainframes empresariales . [12]

Microsoft presentó por primera vez el Desktop Window Manager en Project Longhorn en la Conferencia de Ingeniería de Hardware de Windows de 2003 , demostrando ventanas tambaleantes. [13] Los graves retrasos en el desarrollo de Longhorn hicieron que Microsoft no presentara su administrador de ventanas de composición 3D hasta el lanzamiento de Windows Vista en enero de 2007. [14]

La implementación de la composición en el sistema X Window requirió cierto rediseño, que se llevó a cabo de forma incremental. [15] Metacity 2.8.4 se lanzó en agosto de 2004. [16] Sin embargo, el primer administrador de ventanas de composición para X ampliamente publicitado fue Xfwm , lanzado en enero de 2005. [17] El 26 de enero de 2005 se lanzó Compiz , que presenta 3D totalmente acelerado. -composición a la plataforma Linux. [18] KWin de KDE también soporta la composición.

Composición y efectos 3D en sistemas operativos

En la composición, se podrían aplicar efectos 3D en ventanas para proporcionar efectos 3D en el escritorio. Los administradores de ventanas de composición modernos utilizan aceleración de hardware 3D. El software de gestión de ventanas de composición se comunica con el hardware de gráficos a través de interfaces de programación como OpenGL o Direct3D .

Las primeras implementaciones generalizadas que utilizaron esta técnica se lanzaron para Mac en Mac OS X 10.2 y para Linux en un prototipo Luminocity . Actualmente, los administradores de ventanas que usan OpenGL incluyen Compiz, KWin y Quartz Compositor, mientras que Desktop Window Manager actualmente usa DirectX 9. OpenGL aún no es totalmente compatible con el hardware, por lo que el rendimiento de la composición basada en OpenGL debería continuar mejorando a medida que mejora el hardware [ cita necesario ] .

X11 y Wayland

El apilamiento de administradores de ventanas que se ejecutan en el sistema X Window (X11) requería una codificación cromática o una extensión de detección verde . [ cita requerida ] La composición se introdujo a través de Composite Extension . Los administradores de composición utilizan la aceleración de hardware a través de esta extensión, si está disponible.

Ubuntu 8.04 Hardy Heron ejecutando Shift Switcher de Compiz en modo Flip

En X11, la capacidad de realizar una composición acelerada en 3D completa requería cambios fundamentales en el protocolo del sistema de ventanas para poder utilizar la aceleración de hardware. Originalmente, comenzaron a aparecer una serie de implementaciones X11 modificadas diseñadas en torno a OpenGL , incluido Xgl . La introducción de AIGLX eliminaría la necesidad de usar Xgl y permitiría a los administradores de ventanas realizar composiciones aceleradas en 3D en un servidor X estándar, al mismo tiempo que permitiría la renderización directa . Actualmente, las tarjetas NVIDIA , Intel y ATI son compatibles con AIGLX.

Compiz introdujo un efecto de cubo, que permite al usuario ver hasta 6 escritorios virtuales a la vez. Cada escritorio se convierte en una textura superficial del cubo, que se puede girar a voluntad. Compiz muestra una amplia gama de efectos 2D y 3D y tiene requisitos de hardware relativamente bajos. [19] En 2012, Compiz se incluyó en Ubuntu Linux y se habilitó automáticamente cuando el hardware y los controladores compatibles estaban disponibles y el usuario no había seleccionado el modo 2D. [20]

Mutter (Metacity + Clutter ) ha reemplazado a Metacity como administrador de ventanas predeterminado para GNOME . Aparece en el componente GNOME Shell de GNOME 3.0. Utiliza el motor de visualización Clutter, que ha sido adaptado a todos los principales sistemas operativos, netbooks y teléfonos inteligentes .

Desde la versión 4, el administrador de ventanas de KDE, KWin, tiene capacidades de composición. KWin presenta gran parte de la misma funcionalidad que también está presente en Compiz .

Con el protocolo Wayland , un administrador de ventanas de composición es también un servidor de visualización ; no hay un servidor de visualización separado del administrador de ventanas. El administrador de ventanas/servidor de visualización combinado se llama compositor Wayland . Weston es una implementación de referencia de un compositor Wayland; KWin y Mutter también son compositores de Wayland, además de administradores de ventanas de composición X11.

Java

Project Looking Glass era un administrador de ventanas que combinaba renderizado 3D y el lenguaje de programación Java multiplataforma . Ahora está inactivo y publicado bajo la Licencia Pública General GNU . La distribución en vivo de Granular Linux incluye Looking Glass como administrador de ventanas opcional.

Después de su interrupción, algunas de sus funciones, como el cambio de portada y las vistas previas en vivo en miniatura, han llegado a otros administradores de ventanas. Sus características más originales incluían inclinación de ventanas, marcos de ventanas de dos lados y fondos de desplazamiento de paralaje .

AmigaOS 4 y MorphOS

Si bien pueden ejecutarse en hardware con capacidad 3D, AmigaOS 4 y MorphOS están diseñados para ejecutarse en computadoras Amiga antiguas , comenzando con la Amiga 1200 . Como tal, sus administradores de ventanas tienen principalmente capacidades de renderizado plano que incluyen capas compuestas, combinación alfa, gradientes, alta resolución y múltiples escritorios ("pantallas") que pueden recortarse parcialmente entre sí.

Microsoft Windows

Si bien el administrador de ventanas en Windows 2000 realiza composición, no realiza transformaciones como un alfa por píxel. Pocas aplicaciones comerciales aprovecharon la combinación alfa; Los programas gratuitos estuvieron entre los primeros en experimentar con él, aunque a través de configuraciones opcionales. [21] [22] La composición se introdujo con Desktop Window Manager en Windows Vista . [1]

Windows Vista y Windows 7 permiten al usuario desactivar el Administrador de ventanas del escritorio seleccionando la configuración de apariencia básica de Windows. Además, Windows lo desactiva automáticamente para realizar la superposición de hardware a través del filtro del mezclador de superposición .

Usabilidad y atractivo visual

El enfoque de composición facilita la implementación de una serie de funciones que hacen que la interfaz de usuario sea más accesible, más sencilla de usar o con elementos llamativos.

Lupas

El efecto de ampliación en Compiz (haga clic en la imagen para verla en escala)

Los gráficos vectoriales , como las fuentes TrueType y los elementos acelerados en 3D, se pueden expandir sin degradación (generalmente debido al aliasing ). Una lupa de pantalla amplía un área de la pantalla, haciendo que partes del texto sean más fáciles de leer, ya sea para evitar la fatiga visual , para personas con discapacidad visual o simplemente a distancia. Los efectos de zoom , como la lupa de ojo de pez y los efectos de zoom de escritorio, proporcionan esta funcionalidad.

Vista previa en vivo

Se puede mostrar una vista previa de una ventana en una miniatura emergente cuando el usuario coloca el cursor sobre el botón asociado de la barra de tareas . Esto permite al usuario identificar y administrar varios programas que se ejecutan simultáneamente.

Cambio de ventana

Cambio de ventana básico en Xgl

Las ventanas con nombres e íconos similares tienden a causar confusión, especialmente cuando sus barras de título se superponen; Es necesario memorizar la posición de cada una de estas ventanas en la barra de tareas. Cuando hay muchas ventanas abiertas de esta manera, el usuario a menudo tiene que recurrir a prueba y error (hacer clic en cada botón de la barra de tareas uno por uno) antes de continuar. El cambio de ventana permite obtener una vista previa rápida de varias ventanas a la vez reorganizándolas temporalmente sobre un fondo decorativo. Después de realizar una selección, las ventanas se restauran a su disposición original.

La selección comienza cuando el usuario ingresa una combinación de teclas de acceso rápido , mueve el puntero del mouse a un punto de acceso rápido en la pantalla o, en algunas situaciones, usa la rueda de desplazamiento del mouse . La navegación por los elementos se realiza mediante el teclado o el ratón. Un elemento se selecciona soltando la tecla de acceso rápido, presionando la tecla Intro o haciendo clic en él con el mouse.

Cambio de volteo

Cambio de volteo en Compiz

El conmutador de giro es una mejora de la función de cambio Alt-Tab . Las ventanas en ejecución están dispuestas en una pila, similar a un selector de estilo abatible en una máquina de discos de los años 50 o un Rolodex . En algunos sistemas, el usuario puede presionar Alt-Shift-Tab para navegar hacia atrás. Se aplican transiciones visuales a cada elemento mientras navega.

Las implementaciones comunes de cambio de giro incluyen Flip 3D en Windows y Shift Switcher en Compiz.

Cambio de cubierta

Tapa interruptor en KWin

El cambio de portada es como el cambio de volteo con algunas diferencias, en su mayoría visuales. En lugar de una pila con la selección en la parte superior, se muestran dos pilas simétricas con la selección actual al frente y al centro (similar a la función de inclinación de la ventana en Looking Glass).

Cover Flow es una implementación del cambio de cobertura en macOS. Las versiones más recientes utilizan el desenfoque para restar importancia a los elementos no seleccionados. Cover Flow también se ha implementado en otro software publicado por Apple como iTunes .

Esto también se conoce como "vista de libro instantáneo".

Cambio de anillo

Cambio de anillo en Compiz Fusion

El cambio de anillo es como el cambio de volteo, excepto que las ventanas se mueven en círculo, con la selección actual al frente, generalmente en la parte inferior. La mayoría de los administradores de ventanas de composición incluyen esta característica lista para usar y también están disponibles aplicaciones de terceros , como 3d-desktop.

Agrupamiento

El usuario puede agrupar ventanas, de modo que solo una ventana a la vez sea visible en cada grupo. En Compiz, el marco de la ventana se voltea para indicar cuándo se ha cambiado la ventana activa en su grupo.

Exponer

macOS muestra una vista previa de cada ventana en la pantalla al colocarlas en mosaico. Otros sistemas con funcionalidad similar (Microsoft Windows, Compiz, KWin, aplicaciones de terceros) se denominan clones de Exposé. La tecla de acceso rápido para activar Exposé no es Alt-Tab, sino F3.

Control de la misión

Mac OS X 10.7 combina varias otras funciones de composición desarrolladas por Apple, como Exposé, Dashboard y Spaces , en un programa más grande llamado Mission Control .

Motores de widgets

En macOS, pueden aparecer "widgets" ( applets de un solo propósito ), como un reloj, un bloc de notas y una calculadora, presionando una tecla de acceso rápido . Los motores de widgets aceleran el trabajo al mantener accesibles y discretos los widgets de uso común. Son manejados por el programa Dashboard en macOS.

Compiz comienza con una capa de widgets en blanco, lo que permite al usuario agregar aplicaciones haciendo clic en ellas. Se admite una variedad de widgets, incluidos Screenlets , gDesklets y SuperKaramba . [23]

Windows Vista proporciona gadgets que el usuario puede colocar en la barra lateral de Windows (gadgets de la barra lateral), una página de inicio de Windows Live (gadgets web) o una pantalla externa, como el teléfono móvil del usuario ( gadgets SideShow ). La barra lateral de Windows era una partición visible en Windows Vista y se eliminó en Windows 7, junto con los gadgets de la barra lateral que se cambiaron a Gadgets de escritorio .

Transiciones y otros efectos

Antes de que se desarrollaran los administradores de ventanas de composición, las ventanas aparecían y desaparecían instantáneamente, lo cual es incongruente con la metáfora de la interfaz (y con un entorno físico de oficina ). Algunos sistemas, como el Mac OS clásico, evitaron este problema con ZoomRects, animando el contorno de las ventanas "haciendo zoom" hacia su posición final. [24] Pero en la mayoría de los sistemas, la aparición y desaparición repentinas de elementos de la GUI pueden parecer confusas o incluso caóticas para los usuarios inexpertos. [ cita necesaria ] Las transiciones visuales proporcionan contexto y ayudan a distinguir las relaciones causales de los elementos de la GUI. En lugar de simplemente desaparecer, una ventana puede desaparecer o reducirse visiblemente a la barra de tareas. Un menú desplegable en el que se ha hecho clic puede irradiarse suavemente hacia afuera desde la barra de menú, lo que facilita la determinación de su origen y propósito.

Las transiciones graduales y naturales pueden ser [¿ investigación original? ] especialmente útil para usuarios mayores o con discapacidad visual que notan los cambios en la pantalla más lentamente y con menos claridad. Por ejemplo, un usuario sin experiencia puede hacer clic impulsivamente en un menú que se activó por accidente, provocando que pierda su trabajo. El breve retraso necesario para mostrar una transición visual puede darle al usuario tiempo suficiente para tomar una decisión consciente y evitar tales errores.

Fachadas de interfaz de usuario

Metisse implementa fachadas de interfaz de usuario, un sistema que proporciona a los usuarios formas sencillas de adaptar, reconfigurar y recombinar interfaces gráficas existentes, mediante el uso de técnicas de manipulación directa . [25]

Lista de administradores de ventanas de composición

Lista de administradores de composición independientes

Sistemas operativos con administradores de ventanas de composición.

Ver también

Referencias

  1. ^ ab "Administrador de ventanas de escritorio". Microsoft aprende . 23 de agosto de 2019 . Consultado el 25 de abril de 2023 .
  2. ^ ab "Mac OS X 10.4 Tiger: página 13". Arstechnica.com. 28 de abril de 2005 . Consultado el 21 de noviembre de 2008 .
  3. ^ "Compiz.org :: Inicio/Inicio - Compiz". Compiz.org. Archivado desde el original el 12 de octubre de 2006 . Consultado el 21 de noviembre de 2008 .
  4. ^ "Plano:" Gestión de ventanas de composición (compiz/beryl)"". Planos.launchpad.net. 17 de octubre de 2006 . Consultado el 21 de noviembre de 2008 .
  5. ^ "Varias instancias de Internet Explorer no vuelven a dibujar la pantalla correctamente". Microsoft. 9 de octubre de 2003 . Consultado el 17 de diciembre de 2010 .
  6. ^ "Preguntas frecuentes sobre soporte técnico de fotos" . Consultado el 17 de diciembre de 2010 .
  7. ^ "Corrupción del cursor del mouse en xinerama". Canonical Ltd. 2 de agosto de 2006 . Consultado el 17 de diciembre de 2010 .
  8. ^ "Archivado de grupos: microsoft.public.windowsxp.video". Grupo Bestofmedia. 18 de julio de 2004. Archivado desde el original el 19 de julio de 2011 . Consultado el 17 de diciembre de 2010 .
  9. ^ "Mustang: las aplicaciones Swing se congelan y luego se corrompen". Oráculo. 1 de mayo de 2006. Archivado desde el original el 26 de julio de 2011 . Consultado el 17 de diciembre de 2010 .
  10. ^ "Manual de bibliotecas Amiga RKM".
  11. ^ "Una breve historia de Mac OS X". Kernelthread.com. Archivado desde el original el 22 de enero de 2009 . Consultado el 21 de noviembre de 2008 .
  12. ^ Markoff, John (26 de abril de 2007). "Sun e IBM ofrecerán una nueva clase de servidores de alta gama". Los New York Times .
  13. ^ "IU Longhorn 3D de Microsoft: surge más información". Tecnología extrema.
  14. ^ "Historial de Microsoft Windows". Computerhope.com . Consultado el 21 de noviembre de 2008 .
  15. ^ "La (re) arquitectura del sistema X Window". Keithp.com . Consultado el 21 de noviembre de 2008 .
  16. ^ "Metaciudad 2.8.4". Compatible con Linux . 30 de agosto de 2004 . Consultado el 13 de junio de 2023 .
  17. ^ "¡Lanzamiento de Xfce 4.2.0!". foo-projects.org. 16 de enero de 2005 . Consultado el 25 de febrero de 2009 .
  18. ^ "Historial de versiones: preferencias Ocultar y buscar". Hideseek.sourceforge.net . Consultado el 21 de noviembre de 2008 .
  19. ^ "Instalar/ejecutar Compiz en GeForce2 MX/MX 400".
  20. ^ "¿De qué es responsable la aplicación" compiz "en ubuntu 12.04?".
  21. ^ "Ejemplo de utilidad de transparencia alfa".
  22. ^ "Ventanas de combinación alfa (transparentes)". CodeGuru. Archivado desde el original el 30 de junio de 2008 . Consultado el 26 de julio de 2008 .
  23. ^ "Complementos/Widget - Compiz Wiki". Compiz. Archivado desde el original el 23 de diciembre de 2010 . Consultado el 26 de diciembre de 2010 .
  24. ^ "Binoculares de alta tecnología". 11 de enero de 2017.
  25. ^ "Metisse: fachadas de interfaz de usuario". Metisse. Archivado desde el original el 30 de agosto de 2011 . Consultado el 3 de agosto de 2011 .
  26. ^ 3Dwm - Acerca de, 23 de enero de 2004, archivado desde el original el 6 de febrero de 2004 , consultado el 4 de febrero de 2010
  27. ^ 3Dwm - Acerca de - Preguntas frecuentes - Acerca del proyecto, 3 de diciembre de 2003, archivado desde el original el 24 de febrero de 2004 , recuperado 4 de febrero de 2010
  28. ^ Administrador de ventanas 3D, archivado desde el original el 17 de julio de 2011 , recuperado 16 de diciembre 2010
  29. ^ Yeargin, Ray (31 de marzo de 2005), 3DWM: una captura de pantalla del escritorio 3D , consultado el 16 de diciembre de 2010

enlaces externos