En informática , un escritorio virtual es un término utilizado en relación con las interfaces de usuario , generalmente dentro del paradigma WIMP , para describir las formas en que el espacio virtual del entorno de escritorio de una computadora se expande más allá de los límites físicos del área de visualización de la pantalla mediante el uso de software. Esto compensa los límites del área del escritorio y es útil para reducir el desorden de las aplicaciones gráficas en ejecución .
Existen dos enfoques principales para expandir el área virtual de la pantalla. Los escritorios virtuales conmutables permiten al usuario hacer copias virtuales de la ventana gráfica de su escritorio y cambiar entre ellas, con ventanas abiertas existentes en escritorios virtuales individuales. Otro enfoque es expandir el tamaño de una sola pantalla virtual más allá del tamaño del dispositivo de visualización físico. Por lo general, se utiliza el desplazamiento o la panorámica de una subsección del escritorio virtual para visualizarlo y navegar por un escritorio virtual de gran tamaño.
Los escritorios conmutables fueron diseñados e implementados en Xerox PARC como "Rooms" por Austin Henderson y Stuart Card en 1986 [1] y (sin que los autores lo supieran hasta su publicación) eran conceptualmente similares a un trabajo anterior de Patrick Peter Chan en 1984. Este trabajo estaba cubierto por una patente estadounidense. [2]
Los escritorios conmutables fueron presentados a un público mucho más amplio por Tom LaStrange en swm (el Administrador de ventanas Solbourne, para el Sistema X Window ) en 1989. ("Virtual Desktop" era originalmente una marca registrada de Solbourne Computer ). [3] En lugar de simplemente ubicarse en una posición x, y en la pantalla de la computadora, las ventanas de las aplicaciones en ejecución se ubican en posiciones x, y en un "contexto" de escritorio virtual dado. Luego, solo son accesibles para el usuario si ese contexto particular está habilitado. Un escritorio conmutable proporciona un buscapersonas para que el usuario cambie entre "contextos", o páginas de espacio de pantalla, de los cuales solo uno puede mostrarse en la pantalla de la computadora en un momento dado. Varios administradores de ventanas X proporcionan escritorios conmutables.
Otros tipos de entornos de escritorios virtuales no ofrecen pantallas virtuales discretas, sino que permiten desplazarse por un escritorio más grande que el que el hardware disponible puede mostrar. Esta función a veces se denomina desplazamiento, escritorios con desplazamiento o ventana gráfica. Por ejemplo, si una tarjeta gráfica tiene una resolución máxima superior a la resolución de pantalla del monitor, el administrador de escritorios virtuales puede permitir que las ventanas se coloquen "fuera del borde" de la pantalla. El usuario puede desplazarse hacia ellas moviendo el puntero del mouse hacia el borde de la pantalla. La parte visible de la pantalla virtual más grande se denomina ventana gráfica .
Los administradores de escritorios virtuales están disponibles para la mayoría de los sistemas operativos con interfaz gráfica de usuario y ofrecen varias funciones, como colocar diferentes fondos de pantalla para cada escritorio virtual y el uso de teclas de acceso rápido u otros métodos convenientes para permitir al usuario cambiar entre las diferentes pantallas.
La primera plataforma que implementó la visualización de múltiples escritorios como una característica de hardware fue Amiga 1000, lanzada en 1985. Todos los Amigas admitían múltiples pantallas en memoria mostradas simultáneamente mediante el uso del coprocesador gráfico, también conocido como "Copper". El Copper era un procesador simple que podía esperar una posición de pantalla y escribir en registros de hardware. Usando la GUI implementada en las API de ROM del sistema, los programas podían mostrar de manera transparente múltiples pantallas independientes, desde memoria no consecutiva, sin mover la memoria. Este desplazamiento basado en hardware no usa blitting, sino algo más parecido a lo que a veces se llama desplazamiento de hardware. A la salida de video simplemente se le dice (una o muchas veces) dónde mostrar (scanline) y desde qué dirección de memoria de pantalla. Una pantalla puede moverse a cualquier posición, o mostrar cualquier porción, modificando la posición de espera o de búsqueda. Normalmente un valor de un solo byte. La lista Copper necesitaba ser ordenada en posición de espera vertical y horizontal para poder funcionar. Nota: Consulte http://www.faqs.org/faqs/amiga/books/ para obtener una lista de material de referencia.
Cada escritorio o "pantalla" podría tener su propia profundidad de color (número de colores disponibles) y resolución, incluido el uso de entrelazado. El chipset de la pantalla ("tarjeta gráfica" en una PC) podría cambiar entre estos modos de escritorio sobre la marcha y durante el dibujo de una sola pantalla, generalmente con una línea de tres píxeles de profundidad entre cada escritorio que se muestra en la pantalla. Sin embargo, si se mostraba un escritorio entrelazado (parpadeante), todos los escritorios en pantalla se verían afectados de manera similar.
Esto también permitió que el sistema operativo mezclara perfectamente aplicaciones de estilo "pantalla completa" y "escritorio" con ventanas en un único entorno.
Algunos programas, como por ejemplo VWorlds [4] (un simulador de astronomía), utilizaban la función de múltiples escritorios para superponer un conjunto de controles sobre la pantalla principal. Los controles se podían arrastrar hacia arriba y hacia abajo para mostrar más o menos de la pantalla principal.
Casi todos los sistemas Unix y similares utilizan el sistema X Window o el protocolo Wayland para proporcionar su entorno de ventanas, y este último se volvió más frecuente en los sistemas basados en Linux a principios de la década de 2020. Estos sistemas son únicos en el sentido de que la decoración, la colocación y la gestión de las ventanas son manejadas por un programa separado y reemplazable conocido como administrador de ventanas en el primero o compositor en el segundo. Esta separación permitió a los desarrolladores externos introducir una serie de diferentes características del administrador de ventanas, lo que resultó en el desarrollo temprano de capacidades de escritorio virtual en X. La primera implementación de escritorios virtuales para Unix fue vtwm en 1990. Panorama de IXI Limited fue un ejemplo temprano de un producto de escritorio virtual comercial para Unix. [5] Muchos de los administradores de ventanas X y compositores Wayland actuales ahora incluyen capacidades de escritorio virtual.
Las configuraciones varían desde tan solo dos escritorios virtuales hasta varios cientos. Los entornos de escritorio más populares , GNOME y KDE , utilizan múltiples escritorios virtuales llamados espacios de trabajo . Estos pueden existir en un número fijo o crearse sobre la marcha a medida que se llenan. Algunos administradores de ventanas, como FVWM , ofrecen "escritorios" separados que permiten al usuario organizar las aplicaciones aún más. Por ejemplo, un usuario puede tener escritorios separados etiquetados como "Trabajo" y "Hogar", con los mismos programas ejecutándose en ambos escritorios, pero cumpliendo diferentes funciones. Algunos administradores de ventanas como dwm y Sawfish admiten "etiquetado" (o reglas de ventana para KDE) donde las aplicaciones se pueden configurar para que siempre se inicien en un escritorio, pantalla y posición en particular, lo que admite la organización automática y la navegación consistente.
El sistema operativo OS/2 para ordenadores personales de IBM incluía varios escritorios (hasta 4 de forma nativa) en la versión OS/2 Warp 4 de 1996. Esta funcionalidad también ha sido proporcionada por el proyecto de código abierto XWorkplace, con soporte para hasta 100 escritorios virtuales. XWorkplace está incluido en la distribución ArcaOS de OS/2. [6]
Windows 10 y 11 ofrecen escritorios virtuales a través de un sistema conocido como “ Vista de tareas ”. [7] [8]
Antes de Windows 10, Microsoft Windows no implementaba escritorios virtuales de forma nativa y accesible para el usuario. Existen objetos en la arquitectura de Windows conocidos como "objetos de escritorio" que se utilizan para implementar pantallas separadas para el inicio de sesión y la secuencia de escritorio seguro ( Ctrl+ Alt+Delete ). No existe una forma nativa y sencilla para que los usuarios creen sus propios escritorios o los llenen con programas. [9] Sin embargo, existen muchos productos de terceros (por ejemplo, VirtuaWin , Dexpot y otros) y algunos productos de Microsoft parcialmente compatibles que implementan escritorios virtuales en distintos grados de completitud.
Microsoft ofrece una utilidad llamada Desktops que permite a los usuarios que ejecutan sistemas operativos Windows Vista o Windows Server 2008 o posteriores ejecutar aplicaciones en hasta 4 escritorios virtuales. A diferencia de casi todas las demás soluciones de escritorios virtuales para Windows, esta utilidad en realidad utiliza "objetos de escritorio" nativos, como se mencionó anteriormente. Debido a esto, no ofrece la posibilidad de mover programas entre escritorios o, de hecho, de dejar de usar escritorios virtuales en absoluto, a menos que cierre la sesión [10], y Windows Aero solo funciona en el objeto de escritorio principal.
Microsoft ya había proporcionado anteriormente un PowerToy de escritorio virtual para Windows XP, que simula muchos escritorios con el método más común de ocultar y mostrar ventanas en grupos, siendo cada grupo un escritorio diferente. Sin embargo, la funcionalidad proporcionada es menos completa que la de muchas otras soluciones de escritorios virtuales (por ejemplo, mantener una ventana en un escritorio determinado incluso cuando el botón de la barra de aplicaciones parpadea, etc.). Como ocurre con todas las utilidades de escritorios virtuales que funcionan ocultando y mostrando ventanas, los problemas de compatibilidad de aplicaciones son comunes, porque los desarrolladores de aplicaciones no esperan que se utilicen escritorios virtuales en la plataforma Windows.
Históricamente, el software incluido con algunos controladores de tarjetas de video brindaba la funcionalidad de escritorio virtual, como en el producto nView de Nvidia (este producto ha sido descontinuado para los propietarios de tarjetas GeForce desde Vista). Algunos de estos programas brindan funciones atractivas similares a las disponibles en Compiz .
Muchos reemplazos de shell de escritorio para Windows, incluidos LiteStep , Emerge Desktop y otros, también admiten escritorios virtuales a través de módulos opcionales.
En el sistema operativo Mac OS clásico , los escritorios con desplazamiento se pusieron a disposición de los usuarios de Macintosh mediante una extensión de terceros llamada Stepping Out, creada por Wes Boyd (el futuro fundador de Berkeley Systems ) en 1986. El código de esta extensión fue integrado por Apple en una versión posterior del sistema operativo Mac OS, aunque se eliminó la capacidad de crear escritorios virtuales más grandes que la pantalla. El código se utilizó en cambio como una ayuda para que los usuarios con discapacidad visual pudieran hacer zoom en partes del escritorio y verlas como imágenes más grandes y más fáciles de distinguir.
A pesar de su base Unix, macOS no utiliza el sistema X Window para su interfaz gráfica de usuario y las primeras versiones no tenían ninguna disposición para escritorios virtuales. A partir de Mac OS X 10.5 Leopard a finales de 2007, macOS se ha distribuido con soporte nativo para escritorios virtuales, llamados Spaces , que permiten hasta 16 escritorios virtuales. Permite al usuario asociar aplicaciones con un "Espacio" en particular. A partir de OS X 10.7 Lion , esta funcionalidad se ha trasladado a Mission Control .
BeOS incluía una implementación de escritorios virtuales denominados "Workspaces". Se admitían hasta 32 Workspaces diferentes.