Ксинерама

Расширение для X Window System
Четырехголовая Ксинерама
Современный пример Xinerama

Xinerama — это расширение X Window System , позволяющее приложениям X и оконным менеджерам использовать два или более физических дисплея как один большой виртуальный дисплей.

Разработанное под названием PanoramiX Маделин Т. Асмус из группы Unix X Server Engineering Group корпорации Digital Equipment , программное обеспечение было передано в The Open Group для X11 Release 6.4 (X11R6.4) и переименовано в Xinerama. Затем оно было включено в выпуск XFree86 4.0 в 1998 году и выпуск Solaris 7 11/99. По словам руководителя проекта X Server Роба Лембри, название было навеяно широкоэкранным театральным процессом Cinerama . «Мы были разочарованы тем, что у нас были большие машины Alpha с несколькими дисплеями, и мы не могли перемещать приложения с одного на другой. Оно было разработано как из-за разочарования, так и из-за конкурентного преимущества». Преимущества Xinerama включают в себя возможность разворачивать окна только до размеров активного физического дисплея и разрешать новые всплывающие окна на активном физическом дисплее.

Общая теория работы

Когда Xinerama включена на X-сервере, несколько X-экранов могут быть объединены в единое рабочее пространство. Эта унифицированная рабочая область позволяет переносить окна между X-экранами.

Расширение XINERAMA

Расширение Xinerama предоставляет клиентам информацию о расположении видовых экранов в едином рабочем пространстве. Его информация о смещении и размере позволяет клиентам принимать разумные решения о размещении окон, максимизации окон и других событиях взаимодействия с пользователем.

Использование в средах, отличных от XINERAMA

Архитектура клиент/сервер X-сервера позволяет серверу предоставлять информацию Xinerama клиенту независимо от того, активна ли инфраструктура Xinerama. RandR и TwinView от NVidia используют эту функцию для предоставления оконным менеджерам и клиентам информации о выходной компоновке относительно кадрового буфера.

Известные проблемы

Общая глубина цвета

Xinerama требует, чтобы все физические экраны имели одинаковую битовую глубину. Например, 8-битный экран не может быть объединен с 16-битным экраном.

Аппаратный рендеринг

В некоторых [ каких? ] реализациях прямой рендеринг OpenGL работает только на одном экране. Окна, которые должны показывать 3D-графику на других экранах, как правило, выглядят черными, проблема, которая чаще всего встречается в 3D-хранителях экрана. Реализация OpenGL для Solaris SPARC и проприетарные драйверы Linux от ATI и nVidia поддерживают аппаратно-ускоренный рендеринг всех экранов в режиме Xinerama.

Статическая конфигурация

Физические экраны нельзя добавлять или удалять динамически, и нет возможности изменить разрешение экрана. Это особенно сложно для пользователей мобильных компьютеров, которые могут использовать внешний физический дисплей в дополнение к встроенному экрану компьютера, но только в определенных местах. В таких случаях рекомендуется использовать метод RandR или ATI или nVidia с одним графическим процессором. Отсутствие поддержки Xinerama для добавления или удаления экранов вызывает несколько проблем:

  • Окна могут быть нарисованы на экране, который не подключен к компьютеру. Пользователь должен перетащить эти окна на главный экран, но не может их увидеть.
  • Видеосигналы, отправляемые на отключенные дисплеи, потребляют ненужную энергию и могут сократить срок службы батареи.
  • Становится сложно использовать устройство в нескольких местах, где доступные внешние экраны, скорее всего, будут настроены по-разному.

Эти проблемы связаны с реализацией Xinerama, а не с ее дизайном, и могут быть исправлены в ходе дальнейшей разработки.

Поддержка оконного менеджера

Поддержка xinerama в xmonad : размещение на трех экранах одновременно.

Некоторые [1] оконные менеджеры и среды рабочего стола имеют ограниченную осведомленность об отдельных физических экранах в Xinerama, так что рабочий стол просто растягивается на физические экраны, а не организован как один большой рабочий стол. Оконный менеджер может поместить новое окно на неожиданный экран, что может сбивать с толку и раздражать. Тем не менее, Xinerama предлагает преимущество в том, что окна можно перемещать между экранами.

Мертвое пространство

Физические дисплеи не обязательно должны иметь одинаковое разрешение, а виртуальная область отображения не обязательно прямоугольная, если физические дисплеи компонентов не имеют одинакового размера. Некоторые менеджеры окон предполагают прямоугольную область отображения и обеспечивают это, создавая избыточное «мертвое пространство» по краям дисплея. Менеджеру окон необходимо знать о Xinerama, чтобы не размещать новые окна в этом мертвом пространстве.

Смотрите также

Ресурс

Асмус, Мадлен Т. (декабрь 1995 г.) « Расширение PanoramiX » THE X RESOURCE 16: Практический журнал системы X Window. стр. 59–73 ISBN  1-56592-166-6 .

Примечания

  1. ^ fvwm (30 мая 2003 г.). "FVWM - Man page - fvwm2". Официальная домашняя страница FVWM . fvwm. Архивировано из оригинала 14 марта 2012 г. Получено 29 мая 2012 г.

Ссылки

  • Обзор X11R6.8 (X.Org)
  • Использование Xinerama для MultiHead XFree86 V. 4.0+ - HOWTO из Linux Documentation Project .
  • Использование нескольких мониторов с XFree86 — простые примеры конфигурации.
Retrieved from "https://en.wikipedia.org/w/index.php?title=Xinerama&oldid=1188114838"