X11 и диспетчер окон путаница

555
ell

Какие роли сервер Xorg и менеджер окон - например, metacity - играют в отображении окон? Оконный менеджер общается с ОС или Xorg? Затем Xorg использует OpenGl для отображения вещей?

Может кто-нибудь объяснить точно, что делает сервер Xorg, что делает оконный менеджер и какие различия между ними? Если бы вы могли также показать мне эквивалент Windows, это было бы полезно.

2

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

2
ewindisch

В Windows нет точного эквивалента тому, как работает Xorg.

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

Сам Xorg поддерживает OpenGL через механизм под названием GLX. Существует также функция под названием Compositing, которую поддерживает Xorg, позволяющая писать оконные менеджеры на OpenGL / GLX. В случае композитного оконного менеджера оконный менеджер будет извлекать содержимое окон из Xorg и отображать их через OpenGL / GLX. В этом случае сервер Xorg обычно отображает только графику, предоставленную диспетчером окон.

Наконец, следует отметить, что Xorg просто реализует протокол под названием X11. Все описанное здесь также относится к другим серверам X11, хотя функции могут отличаться, некоторые серверы X11 могут не поддерживать GLX или Compositing.

Похожие вопросы