1.1.1 Общее устройство X Window
1.1.1 Общее устройство X Window
Система X Window представляет совокупность программ и библиотек. Сердцем ее является отдельный UNIX-процесс, существующий на компьютере, к которому присоединен дисплей. Именно сервер знает особенности конкретной аппаратуры, знает, что надо предпринять, чтобы закрасить пиксель на экране, нарисовать линию или другой графический объект. Он также умеет воспринимать сигналы, приходящие от клавиатуры и мыши.
Сервер общается с программами-клиентами, посылая или принимая от них порции (пакеты) данных. Если сервер и клиент работают на разных машинах, то данные посылаются по сети, если же компьютер один, то для передачи данных используется внутренний канал. Например, если сервер обнаруживает, что нажата кнопка мыши, то он подготавливает соответствующий пакет и посылает его тому клиенту, в чьем окне находится курсор мыши. И наоборот, если программе надо что-либо вывести на экран дисплея, то она создает необходимый пакет данных и посылает его серверу.
Состав пакетов и их последовательность определяются специальным протоколом. Но чтобы программировать для X, совсем не обязательно знать детали реализации сервера и протокола обмена. Система предоставляет библиотеку процедур, с помощью которых программы осуществляют доступ к услугам X на высоком уровне. Так для того, чтобы вывести на экран точку, достаточно вызвать процедуру XDrawPoint(), передав ей соответствующие параметры. Последняя выполняет всю черновую работу по подготовке и передачи пакетов данных серверу. Упомянутая библиотека называется Xlib. Она помещается в файле lX11.a (libX11.so), который, как правило, находится в каталоге /usr/X11R6/lib. Прототипы функций библиотеки, используемые ею структуры данных, типы и прочее определяется в файлах-заголовках из директории /usr/include/X11.
На рис. 1.1 представлена схема общения клиентов и сервера.
Рис. 1.1. Общая схема общения программ-клиентов и X-сервера
Посылка порций данных, особенно если она осуществляется через сеть, операция достаточно медленная. Чтобы повысить производительность системы, Xlib не отправляет пакеты сразу, а буферизует их в памяти машины, на которой выполняется программа-клиент. Собственно передача выполняется в тот момент, когда клиент вызывает процедуру, ожидающую получения событий от сервера, например XNextEvent(). Программа может явно инициировать отправку пакетов, обратившись к функциям XFlush() или XSync().
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
7.1. Кроссбраузерный window.onload
7.1. Кроссбраузерный window.onload Отложенная загрузка скриптов волнует общественность уже давно, почти 10 лет, — атрибут defer, призванный ее обеспечить, был добавлен в спецификацию еще в прошлом столетии. Однако проблема так и остается актуальной.Событие window.onload используется
Объект window
Объект window Объект window представляет текущее окно Web-обозревателя или отдельный фрейм, если окно разделено на фреймы.closedВозвращает true, если текущее окно закрыто. Может быть использовано при работе с несколькими окнами.defaultStatusСообщение по умолчанию, отображаемое в строке
7.4. Запуск системы X Window.
7.4. Запуск системы X Window. Запустить X Window можно несколькими способами. Иногда при инсталляции ОС соглашаются с предложением инсталлятора запускать их автоматически. Если при инсталляции все прошло нормально, то вы будете сразу после запуска ОС попадать в графический
11.4. Русификация X Window
11.4. Русификация X Window Так же, как и в текстовом режиме, в графическом русификация определяется таблицей раскладки клавиатуры и файлами шрифтов. Впрочем, о том, как разобраться с клавиатурой, было достаточно сказано в разд. 9.3. Давайте теперь подробно рассмотрим, как
6.2. Русификация системы X Window
6.2. Русификация системы X Window Как ни странно, при выборе русскоязычного варианта установки русские шрифты устанавливаются на диск, но не прописываются в конфигурационных файлах. Конечно, оконная среда KDE (K Desktop Environment), как и Gnome, в большинстве случаев использует эти шрифты,
20.3. Настройка X Window
20.3. Настройка X Window Теперь перейдем к практической настройке X Window. Если вы используете Red Hat Linux, запустите утилиту setup. Вы также можете использовать XF86Setup (нужно установить отдельный пакет) или Xconfigurator. Этапы настройки системы X аналогичны во всех дистрибутивах: выбирается
1.5.8. Не загружается система X Window
1.5.8. Не загружается система X Window Зарегистрируйтесь в системе и введите команду startx. Если при запуске X Window возникла ошибка, запустите конфигуратор системы X
4.1. Графическая система X Window
4.1. Графическая система X Window Работа в графическом режиме под Linux возможна благодаря системе, именуемой X Window (или просто Иксы; только не называйте ее X Windows), разработанной в Массачусетсом технологическом институте (MIT) и ставшей стандартом для всех UNIX-подобных систем. Сами
Window (Рамка)
Window (Рамка) Этот режим служит для выделения объектов, полностью попадающих внутрь прямоугольной рамки. Рамку определяют указанием начальной точки в любом месте области рисования и перемещением указателя мыши вправо. При этом в командном окне выводится приглашение
Window Polygon (Рамка-многоугольник)
Window Polygon (Рамка-многоугольник) Этот режим подобен Window (Рамка), но в отличие от него позволяет указывать область в виде многоугольника. Многоугольник формируется путем последовательного выбора точек около объектов, которые вы хотите выделить. Форма многоугольника может
1. Основы программирования в системе X Window
1. Основы программирования в системе X Window X Window или просто X - это система для создания графического пользовательского интерфейса на компьютерах, работающих под управлением операционной системы UNIX. X была создана в Массачусетском Технологическом Институте (США). В
1.1.4 Графические возможности X Window
1.1.4 Графические возможности X Window Система X Window предназначена для работы на растровых дисплеях. В подобного рода устройствах изображение представляется матрицей светящихся точек - пикселей. Каждый пиксель кодируется определенным числом бит (как правило 2, 4, 8, 16 или 24).
Общее описание
Общее описание Электронный задачник Programming Taskbook предназначен для обучения программированию на языках Pascal, Visual Basic, C++, C#, Visual Basic .NET, Python и Java. Он содержит 1300 учебных заданий, охватывающих все основные разделы базового курса программирования: от скалярных типов и
Общее описание
Общее описание При запуске программы, использующей электронный задачник Programming Taskbook, на экране возникает окно задачника. В зависимости от текущей настройки, окно может отображаться либо в режиме с фиксированной компоновкой, либо в режиме с динамической компоновкой.