Вы часто натыкаетесь на названия Xorg, X11, Wayland и есть понимание, что они имеют отношение к графике, но вы хотели бы все таки узнать больше, тогда читаем дальше. Будем разбираться вместе.
Что такое графический сервер в Linux?
Графический сервер в операционной системе Linux представляет собой программное обеспечение, которое отвечает за управление отображением графики на экране компьютера.
Графический сервер выполняет множество функций, связанных с управлением отображением графики на экране компьютера. Он обеспечивает взаимодействие пользователя с операционной системой через графический интерфейс, позволяя использовать различные приложения и инструменты для работы с графикой. Без него вы были бы ограничены только интерфейсом командной строки.
Важно не путать сервер отображения со средой рабочего стола. Среды рабочего стола (Gnome, KDE, Xfce, MATE и т.д.) используют серверы отображения.
Графический сервер взаимодействует со своими клиентами по протоколу сервера отображения. В Linux доступны несколько таких протоколов сервера отображения. В этой статье поговорим о двух из них X11 и Wayland. Есть еще Mir, разработанный canonical. Но от него canoncial отказался в 2017 году и сейчас он поддерживается сообществом энтузиастов и не стоит особого внимания.
X Window System, Xorg, X11.
X Window System
X Window System, часто называемая просто X, уже давно устарела. Впервые появившись в 1984 году, представляла из себя оконную систему, по умолчанию, для большинства UNIX-подобных операционных систем, включая Linux.
X.Org
X.Org server — это бесплатная реализация сервера отображения X Window System с открытым исходным кодом, которой управляет X.Org Foundation. Это приложение, которое взаимодействует с клиентскими приложениями по протоколу X11 для рисования объектов на дисплее и отправки событий ввода, таких как движения мыши и нажатия клавиш.
Обычно, X-сервер запускается первым, после чего ожидает, пока клиентские приложения подключатся к нему. Xorg основан на модели клиент / сервер и, таким образом, позволяет клиентам использовать его как локально так и удаленно на другом компьютере.
То есть, в X11 подразумевается, что приложение и дисплей не обязательно должны находиться на одном компьютере. Когда X был разработан, было широко распространено мнение, что X-сервер будет работать на рабочей станции, а пользователи будут запускать приложения на удаленном компьютере с большей вычислительной мощностью.
X11
X11 — это сетевой протокол. Он описывает, как осуществляется обмен сообщениями между клиентом (приложением) и дисплеем (сервером). Эти сообщения обычно содержат примитивные команды рисования, такие как “нарисуйте прямоугольник”, ‘напишите эти символы в этом месте”, ‘была нажата левая кнопка мыши” и т.д.
Но X11 устарел, и обладает кучей уязвимостей, которые не пересматривались уже более 30 лет. А большая часть функций этого протокола более не используются вовсе.
Вся работа, выполняемая X11, была переподчинена отдельным приложениям и оконному менеджеру. Но несмотря на это, старые функции по-прежнему существуют, отягощая все эти приложения, снижая производительность и безопасность.
Wayland, графический сервер следующего поколения
Wayland был основан Кристианом Хогсбергом, разработчиком X.Org, в качестве личного проекта в 2008 году. Это протокол связи, который определяет связь между дисплейным сервером и его клиентами.
Wayland разработан как бесплатный проект с открытым исходным кодом, управляемый сообществом, для замены системы X Window (также известной как X11 или Xorg) современной, безопасной и более простой оконной системой.
Ключевым элементом архитектуры Wayland является Wayland Compositor, отвечающий за управление окнами, их размещение и взаимодействие с пользователем. Wayland compositor управляет тем, какие окна будут видны на экране, каким образом они будут размещены и как пользователь будет с ними взаимодействовать ( перемещать, изменять размер, сворачивать и т.п.).
Wayland предоставляет улучшенную модель безопасности по сравнению с X11. В частности, он ограничивает доступ приложений к экрану и другим ресурсам системы. Например, одно приложение не может получить доступ к окнам другого приложения без явного разрешения пользователя.
Wayland лучше справляется с управлением несколькими экранами благодаря своей архитектуре. Он позволяет каждому приложению работать с отдельным буфером, что упрощает управление окнами и их размещением на разных экранах.
Кроме того, Wayland поддерживает современные функции, такие как HDR, масштабирование DPI и плавную анимацию. Он также обеспечивает лучшую безопасность, так как каждое приложение работает в своем собственном изолированном пространстве.
На данный момент Wayland активно развивается и используется в таких дистрибутивах, как Fedora, Ubuntu и Arch Linux. Многие разработчики считают, что Wayland станет стандартным графическим сервером для всех Linux-систем в будущем. С каждым обновлением добавляются новые функции и улучшаются существующие, что делает Wayland все более привлекательным вариантом для пользователей.
Таким образом, Wayland представляет собой перспективную замену устаревшему X11 и обещает стать основой графических систем будущего.
Заключение
Несмотря на все вышесказанное, X Window по-прежнему имеет много преимуществ перед Wayland. Хотя Wayland устраняет большинство конструктивных недостатков Xorg, у нее есть свои проблемы.
Большинство видеоигр и графических приложений для Linux по-прежнему пишутся для X11. Кроме того, многие графические драйверы с закрытым исходным кодом, например, для графических процессоров NVIDIA, пока не предлагают полной поддержки Wayland.
Но, я думаю, X не может существовать вечно, и Wayland во многих отношениях является все таки улучшением. Но на данный момент подавляющее большинство приложений было написано для Xorg. Пока все эти приложения не будут портированы, Xorg будет продолжать поддерживаться сообществом.
Was this helpful?
0 / 0