В вычислении , в конвенции Inter-Client Руководство по связи ( ICCCM или I39L короткий для «I», 39 букв и «L») [1] является стандартным протоколом для системы X Window . Он определяет соглашения для клиентов из общего сервера Х о выборе и срезанных буферах , связи с менеджером окон и менеджером сеансов , манипулированием общих ресурсов и цветовой характеристикой.
Он был разработан Дэвидом Розенталем из MIT X Consortium с 1987 по 1989 год. Черновая версия появилась в марте 1988 года в X11R2 . Это было удалено из X11R3 . Версия 1.0 была выпущена в июле 1989 года как часть X11R4 . Три оконных менеджера в каталоге contrib X11R4 реализовали поддержку ICCCM: gwm , olwm и tekwm . Версия 1.1 содержит обновление для определения цвета и появилось в X11R5 . Версия 2.0 имеет много изменений в области управления окнами, выбора , управления сеансом.и совместное использование ресурсов. Он был выпущен в мае 1994 года в составе X11R6 .
X намеренно определяет «механизм, а не политику» взаимодействия окон. Таким образом, для взаимодействия с клиентом требовалась дополнительная спецификация помимо самого протокола X.
ICCCM определяет буферы вырезания и вставки, взаимодействие оконного менеджера, управление сеансами, способы управления общими ресурсами и способы управления цветами устройства. Эти низкоуровневые функции обычно реализуются в наборах инструментов виджетов или средах рабочего стола . Это изолирует прикладных программистов от работы непосредственно с ICCCM, поскольку эта функциональность делегирована набору инструментов реализации.
ICCCM подвергся некоторой критике за двусмысленность и сложность в правильной реализации. [1] [2] Это было признано в предисловии к версии 2.0, где говорилось, что она направлена на «исправление проблем с более ранними черновиками и улучшение читаемости и понятности».
Кроме того, некоторые части могут быть устаревшими или более непригодными для реализации.[3] В Extended Window Manager подсказки (EWMH) является более новым стандартом, который, в соответствии с его введения:. «Основывается на ICCCM, который определяет менеджера окон взаимодействия на более низком уровне ICCCM не обеспечивает способы реализации множество функций чего ожидают современные пользователи настольных компьютеров ". Но в нем также говорится: «Клиенты, которые стремятся выполнить эту спецификацию, ДОЛЖНЫ придерживаться ICCCM, на котором основана эта спецификация». постольку, поскольку EWMH не отменяет.
Freedesktop.org отмечает, что «исторически клиенты X не обрабатывали операции вырезания и вставки согласованным образом», и формулирует дополнительные рекомендации в спецификации буфера обмена .