Xinerama

редактировать
Четырехголовая Xinerama Пример современной Xinerama

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

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

Содержание

  • 1 Общая теория работы
  • 2 Расширение XINERAMA
    • 2.1 Использование в средах, отличных от XINERAMA
  • 3 Известные проблемы
    • 3.1 Общая глубина цвета
    • 3.2 Аппаратный рендеринг
    • 3.3 Статическая конфигурация
    • 3.4 Поддержка оконного менеджера
    • 3.5 Мертвое пространство
  • 4 См. Также
  • 5 Ресурс
  • 6 Примечания
  • 7 Ссылки
  • 8 Внешние ссылки

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

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

Расширение XINERAMA

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

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

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

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

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

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

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

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

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

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

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

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

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

xmonad : поддержка xinerama: одновременное отображение трех экранов.

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

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

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

См. Также

Ресурс

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

Примечания

Ссылки

Внешние ссылки

Последняя правка сделана 2021-06-22 08:00:13
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте