Организация X Window

Разработка системы X Window началась в первой половине 80-х годов про- шлого века в Массачусетском технологическом институте (MIT) в рамках проекта Athena, который финансировался фирмами IBM и DEC. Целью про- екта являлось построение распределенной графической среды, позволяющей единообразно работать с различным оборудованием и разными операцион- ными системами. Сейчас используется 11-я версия X (выпуски 6 или 7), по- этому протокол называется X11.

Система X Window построена в рамках архитектуры "клиент — сервер". Сервер предназначен для работы с устройством отображения, например, ви- деоадаптером.

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

Клиентские программы взаимодействуют с X-сервером с помощью X-про- токола. Он представляет собой обычный протокол прикладного уровня TCP/IP, которому присвоен порт 6000 TCP. Поэтому X-клиент и X-сервер могут с успехом работать по сети. То есть программы клиент и сервер вполне могут находиться на различных машинах и никаких дополнительных про- грамм для этого не требуется.


 

X-клиенты могут быть условно подразделены на четыре категории:

r обычные X-приложения (X applications). Примерами таковых являются браузер mozilla, программа просмотра PDF xpdf, текстовый редактор emacs;

r оконные менеджеры (Window Managers). Они предназначены для обеспе- чения возможности управления окнами с помощью устройств ввода и предоставления удобного пользовательского интерфейса. Примерами оконных менеджеров являются Window Maker (исполняемый файл wmaker), Ice WM (icewm) и Xfwm;

r графические рабочие окружения (Desktop Environment), представляющие собой большие комплексы программного обеспечения, включающие в се- бя собственные оконные менеджеры, файловые менеджеры, средства офисной работы и иное пользовательское прикладное программное обес- печение. X-приложения, созданные для работы в составе рабочей среды, обеспечивают единообразный пользовательский интерфейс. Наиболее распространены KDE (K Desktop Environment), GNOME (GNU Objects Model Environment) и Xfce;

r менеджеры сеанса (X Session Managers). Программы особого рода, пред- назначенные для обеспечения возможности непосредственного запуска X- сеанса без необходимости предварительного входа в обычный неграфиче- ский сеанс Shell. Кроме этого, менеджеры X-сеанса отвечают за переза- пуск X-сервера в случае его остановки. Наиболее распространены xdm, kdm и gdm. Менеджеры X-сессий используют протокол XDMCP (X Display Manager Control Protocol). Запуск X-сеанса осуществляется иначе, чем при использовании обычного текстового терминала. При обычном входе в се- анс запускается Shell, связанный с текстовым терминалом, а в X — ме- неджер окон, рабочая среда (desktop) или иное X-приложение.

X-протокол открыт, и поэтому существует множество его реализаций, пред- назначенных, прежде всего, для запуска на различных аппаратных платфор- мах. На платформе IA-32 могут быть использованы различные X-системы, например:

r XFree86 — до выпуска 4.4rc2 применялась в GNU/Linux повсеместно (в настоящее время используется редко из-за ограничительных условий лицензии);

r Xorg — реализация X-системы (ответвление от XFree86 4.4rc2 в 2004 г.).

Написание программ для X-системы обычно требует интенсивного использо- вания инструментальных библиотек. Различные библиотеки предоставляют


 

разные средства и требуют использования разных прикладных интерфейсов программирования (Application Program Interface, API). Несмотря на то, что X-протокол является стандартным, существует множество несовместимых платформ для X-системы.

В GNU/Linux две X-платформы получили наибольшее распространение:

r Qt — эту платформу использует KDE;

r Gtk+ — используется множеством X-приложений, средами GNOME и Xfce.

В GNU/Linux требования стандарта FHS предписывают размещать про- граммное обеспечение X-сервера в каталоге /usr/X11R6 или /usr/X11. Оконные менеджеры и иные X-приложения часто также размещаются в этом каталоге. Традиционно X-сервер — это исполняемый файл X или Xorg (пример 32.1).

 

Пример 32.1. X-сервер

 

$ ls -l `which X`

lrwxrwxrwx 1 root root 4 Nov 30 2009 /usr/bin/X -> /usr/bin/Xorg

 

Вместе с X Window может работать сервер шрифтов X Font Server (xfs), ко- торый управляет шрифтами, установленными в системе, предоставляя их X- серверу для отображения. Если X-сервер использует в работе сервер шриф- тов, то X-сервер является для сервера шрифтов клиентом.

 








Дата добавления: 2015-06-12; просмотров: 563;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.006 сек.