Основной протокол X Window System
Материал из Википедии — свободной encyclopedia
Основной (корневой) протокол X Window System (англ. X Window System core protocol) — формат взаимодействия системы X Window, сетевой оконной системы для растровых видеотерминалов. X Window основана на клиент-серверной модели, то есть один сервер управляет всем вводом-выводом, таким как экран(ы), клавиатура и «мышь», все приложения работают как клиенты, взаимодействуя с пользователем и другими клиентами через сервер. Это взаимодействие и обеспечивается корневым протоколом. Существуют также другие протоколы, которые являются как «надстройками» над корневым, так и совершенно независимыми.
В статье не хватает ссылок на источники (см. рекомендации по поиску). |
Корневой протокол системы X Window предусматривает только 4 типа пакетов данных, посылаемых асинхронно через сеть: запросы, отклики, события и сообщения об ошибках. Запросы посылаются клиентом в сторону сервера для выполнения последним какого-либо действия (например, создать новое окно) и/или указания серверу послать назад какие-либо данные. Отклик сервера обеспечивает пересылку этих данных клиенту. События рассылаются сервером для уведомления его клиентов о пользовательской активности или другой деятельности на стороне сервера, в которых заинтересован тот или иной клиент. Сообщения об ошибках рассылаются сервером его клиенту в случае ошибок обработки запросов клиента. Запросы могут порождать отклики, события или сообщения об ошибках. Протокол не устанавливает обязательной последовательности передачи пакетов по сети. Существуют расширения корневого протокола со своими запросами, откликами, событиями или сообщениями об ошибках.
Система X появилась в МИТ в 1984 году (текущая версия X11 — в сентябре 1987 года). Её разработчик Боб Шифлер и Джим Гетис в ходе её разработки руководствовались правилом, что корневой протокол должен устанавливать «механизм, а не набор правил-политик». В результате корневой протокол не специфицирует взаимодействие между клиентами, а также между клиентом и пользователем. Они являются предметом дополнительных спецификаций [1], таких как ICCCM и Freedesktop.org и они обычно выполняются автоматически с использованием предзаданного набора виджетов.