Fink

Использование X11 - 1. Введение

1.1 Что такое X11?

X Window System, версия 11 (или сокращенно X11) является системой графического отображения с прозрачной для сети архитектурой клиент-сервер. Она позволяет приложениям графически создавать на экране пиксели, линии, тексты, изображения и т.п. X11 также имеет дополнительные библиотеки, благодаря которым приложения могут свободно рисовать интерфейсы пользователя - кнопки, поля для текста и т.п.

X11 фактически является стандартной системой графического отображения в мире Unix. Она поставляется вместе с Linux, *BSD и большинством коммерческих вариантов Unix. На ее основе работают такие виды среды рабочего стола, как CDE, KDE и GNOME.

1.2 Что такое Mac OS X?

Mac OS X - операционная система, производителем которой является Apple. Как и предшествующие NeXTStep и OpenStep, она основана на BSD и таким образом входит в семейство операционных систем Unix. Но при этом она выпускается с системой графического отображения, являющейся частной собственностью. Графический процессор называется Quartz, а интерфейс Aqua, хотя оба названия часто используются как взаимозаменяемые.

1.3 Что такое Darwin?

Darwin по сути является упрощенной версией Mac OS X, которую можно получить бесплатно с полным исходным кодом. Она не содержит Quartz, Aqua и прочую сопутствующую технологию. По умолчанию она предлагает только текстовую консоль.

1.4 Что такое XFree86?

XFree86 - реализация X11 на основе исходного кода. Первоначально она была разработана для применения на ПК Intel x86, отсюда и ее название. В настоящее время применяется во многих архитектурах и операционных системах, в т.ч. OS/2, Darwin, Mac OS X и Windows.

1.5 Что такое Xtools?

Xtools - продукт Tenon Intersystems. Это версия X11 для Mac OS X, основанная на XFree86.

1.6 Клиент и сервер

X11 имеет архитектуру клиент-сервер. Есть одна центральная программа, которая фактически создает графику и координирует доступ через несколько приложений; это сервер. Приложение, желающее создать графику с применением X11, соединяется с сервером и дает указание, что именно надо нарисовать. В контексте X11 приложения называются клиентами.

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

1.7 Что означает "бескорневой" ("rootless")?

Немного предыстории: X11 моделирует экран в виде иерархии окон, находящихся одно в другом. В верхней части иерархии находится специальное окно размером с экран, вмещающее все другие окна. Оно содержит фон рабочего стола и называется "корневым окном".

Теперь вернемся к нашей теме: Как и любая графическая среда, X11 написана для самостоятельной работы и полного управления экраном. В Mac OS X Quartz уже управляет экраном, т. обр. для одновременной работы обеих систем надо совершить определенные действия.

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

Другое действие - комбинирование окон двух видов среды. Это устраняет необходимость перемещения между экранами, а также избавляет от корневого окна X11, т.к. Quartz уже берет на себя заботу о фоне рабочего стола. Поскольку нет корневого (видимого) окна, данный режим называется "бескорневым". Это наиболее удобный способ использования X11в Mac OS X.

1.8 Что такое менеджер окон?

В большинстве видов графической среды вид рамок окон (строка заголовка, кнопка закрытия и т.д.) определяется системой. В X11 это решается иначе. Рамки окон (также называемые "декоративными обрамлениями") в X11 обеспечиваются отдельной программой - менеджером окон. Во многих отношениях менеджер окон является просто еще одним клиентом; он запускается и общается с сервером X через те же каналы.

Существует большой выбор разных менеджеров окон. На сайте xwinman.org имеется исчерпывающий список. Наиболее популярные из них позволяют пользователю настроить вид через т. наз. темы. Многие менеджеры окон также обеспечивают такие дополнительные функции, как всплывающие меню в корневом окне, стыковки и кнопки запуска.

Для Fink скомпилированы многие менеджеры окон - см. текущий список.

1.9 Что такое Quartz/Aqua, Gnome и KDE?

Это виды среды рабочего стола, в числе многих других. Их цель - обеспечение дополнительных границ для приложений, чтобы их вид и поведение были визуально последовательными. Пример:

графический процессор : X11

менеджер окон : sawfish

рабочий стол : Gnome

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

Многие приложения разработаны для интеграции с отдельным рабочим столом. Чаще всего после инсталляции библиотек среды рабочего стола (и других базовых библиотек) разработанное для данной среды приложение работает с небольшими функциональными потерями или вовсе без них. Примером служит растущий выбор приложений GNOME, которые можно инсталлировать и использовать без применения GNOME. К сожалению, это достижение пока не распространяется на приложения KDE.

Следующий: 2. История создания продукта