X Window - это сетевая система, т.е. если операционная система не поддерживает сеть, то и X Window работать не будет. Ни это не недостаток, а преимущество X Window, ведь в этой системе приложения могут выполняться на одной машине, а их интерфейс отображаться на другой. Другими словами, используя X Window, очень легко создать X-терминал - гак называемый "тонкий клиент", когда пользователь видит только результат (окно программы), а все вычисления выполняет сервер, обсуживающий терминалы. Благодаря такому решению можно использовать старые и никому не нужные компьютеры.
Сама система X Window более "древняя", чем вы можете себе представить. Первая версия X Window была разработана для UNIX в 1984 году в Массачусетсском технологическом институте (МIТ). На Linux перенос этой системы стал возможен, когда Linux стала поддерживать сеть, а это произошло в 1992 году. Протокол X11 который используется системой X Window до настоящего времени, появился в 1987 году.
Проект Х возглавляет фонд X.Org Foundation. Сейчас бесплатно распространяемая реализация системы X11 называется именно X.Org. Хотя название сути не меняет - возможности системы те же, как и конфигурационные файлы.
B книге мы будем называть графическую подсистему X.Org или X Window - знайте, что имеется в виду одно и то же. Также X Window System часто называют X11, или просто X. Основные этапы развития X Window представлены в табл. 4.1.
Некоторые бывшие пользователи никак не могут отвыкнуть от Windows и неправильно называют X Window System X Windows. Не нужно употреблять это название!
Таблица 4.1. Основные этапы развития X Window
Дата | Версия | Событие/Описание |
---|
июнь 1984 | X1 | Вышла первая версия X Window, впервые используется обозначение "X" |
Январь 1985 | X6 | Первая версия, лицензированная внешними компаниями |
Сентябрь1985 | X9 | Поддержка цвета (первые версии были черно-белыми) |
Февраль 1986 | X10R3 | Первый выпуск системы в свет. т.е. за пределы MIT. Оконным менеджером по умолчанию становится uwm |
15 сентября 1987 | X11 | Первая версия текущего протокола - X11 |
25 октября 1988 | X11R3 | Создан XDM (X Display Manager) |
22 декабря 1989 | X11R4 | Используется стандартный менеджер twm (рис. 4.1), появились новые шрифты, улучшения в приложениях |
5 сентября 1991 | X11R5 | Расширенное управление цветом Xcms, появился сервер шрифтов, сервер X386 (сервер X для IBM PC-совместимых компьютеров) |
Апрель 1992 | X11R5 | Система X Window импортирована на Linux |
16 мая 1994 | X11R6 | Много новых расширений: Inter-Client Exchange; X Session Management; X Synchronization; X Image; XTEST; X input; X Big Requests; XC-MISC |
23 декабря 1996 | X11R6.3 | Последний выпуск под руководством X Consortium |
1999 | X11R6.5 | Внутренний выпуск X.Org (для внутpенного пользования), недоступен широким массам |
6 апреля 2004 | X11R6.7.0 | Первый официальный выпуск от X.Org Foundation |
8 сентября 2004 | X11R6.8.0 | Появилась прозрачность окон и много других дополнительных расширений |
10 февраля 2005 | X11R6.8.2 | То же, что и R6.8.0, но добавлена поддержка новых драйверов и устранены ошибки и уязвимости 8-й версии |
21 декабря 2005 | X11R7.0 | Версия 7.0 |
15 февраля 2007 | X11R7.2 | Текущая версия |
Рис. 4.1. Оконный менеджер twm
4.1.1.2. Основные принципы построения системы X
Еще в далеком 1984 году разработчиками X Window были определены основные принципы построения этой Системы.
• Новая возможность должна добавляться в систему только в том случае, если без неё нельзя создать какое-нибудь реальное приложение.
• Не нужно пытаться удовлетворить все мыслимые потребности, но нужно сделать систему расширяемой, чтобы она могла удовлетворять новые потребности.
• Если до конца не ясна суть проблемы, то лучше вообще отказаться от решения такой проблемы.
• Нужно использовать более простые решения, не усложнять систему. Можно решить 90% проблемы, затратив 10% сил, или решить все 100%, но затратив при этом все 100% сил. 6 этом случае нужно выбрать первый вариант (90/10).
• Нужно "изолировать" сложные места.
• Политика интерфейса пользователя должна быть "в руках" клиентов, т.е. оконных менеджеров.
С тех пор проект X придерживается этих принципов. Может быть, поэтому трехмерный рабочий стол в Linux нормально работает при 512 Мбайт операторной памяти и не требует сверхмощную видеокарту? Для сравнения: чтобы только запустить Windows Aero, нужно как минимум 1 Гбайт оперативной памяти…
4.1.1.3. Системы Х.Org и ХFrее86
Довольно часто встречается наименование XFree86. Проект XFree86 возник в 1992 году из проекта сервера Х286 (это сервер X для IВМ PC-совместимых компьютеров), Х386 разработан Томасом Роэллом и Марком Снитили. Его "пожертвовала" Консорциуму X компания Snitily Graphics Consulting Services (SGCS). С тех пор XFree86 превратился в самую популярную реализацию системы для архитектуры х86.
В мае 1999 года группа The Open Group основала проект X.Org, который должен был контролировать выпуск версий X11R6.5.1 и выше. Если вы посмотрите на табл. 14.1, то заметите, что в это время разработка X практически остановилась. Все технические инновации происходили в рамках проекта XFree86. Но в 1999 году команда XFree86 вошла в состав X.Org, чему способствовали различные компании-производители аппаратного обеспечения, которое были заинтересованы в использовании ХFrее86 вместе с Linux.
До 2003 года команда Х.Org практически бездействовала, но за это время популярность Linux (как и X) выросли. Проекты X.Org и XFree86 (последний окончательно не слился с X.Org, а вошел в организацию X.Org на правах почетного члена) стали обсуждать дальнейшее развитие X. Но XFree86 в феврале 2004 года выпустил версию 4.4. Все бы ничего, но данная версия была выпущена под ограниченной лицензией. Многие проекты, например, FSF и Debian, посчитали этот пункт несовместимым с условиями GNU GPL. Другие заявили, что такая лицензия противоречит духу Х. Одним словом, XFree86 стал более закрытым, чем он был до этого…
4.1.2. Конфигурирование Х.Оrg
Сначала ми рассмотрим настройку X.Org вручную - с помощью конфигурационного файла, а потом с помощью программы-конфигуратора.