Inferno OS Wiki
(Добавление категорий)
мНет описания правки
Строка 9: Строка 9:
 
'''ОПИСАНИЕ'''
 
'''ОПИСАНИЕ'''
   
Plumber предоставляет возможность высокоуровнего обмена сигналами между приложениями через `порты`, аналогичные портам ввода-вывода, только реализованные логически, кроме того, сигналы посылаются не напрямую между приложениями, апосредством протокола plumber, который обрабатывает их, согласно правилам, указанным в конфигурационном файле, после чего манипулирует указателями, портамии адресами в памяти тех или иных процессов и приложений.
+
Plumber предоставляет возможность высокоуровнего обмена сигналами между приложениями через `порты`, аналогичные портам ввода-вывода, только реализованные логически, кроме того, сигналы посылаются не напрямую между приложениями, а посредством протокола plumber, который обрабатывает их, согласно правилам, указанным в конфигурационном файле, после чего манипулирует указателями, портами и адресами тех или иных процессов и приложений в памяти.
   
Протокол запускаетсяна старте системыпосле [[wm(1)]] и смотрит доступный конфигурационный файл(по умолчанию: /usr/имя_пользователя/lib/plumbing). Каждый такой файл содержит правила, описанные специальной формой (см.[[plumbing(6)]]); правила описывают назначение сигнала, который plumber получает от приложения-отправителя, и инструкции, указывающие что именно необходимо выполнить. После запуска, Plumber остается резидентно, ожидая запроса либо от сигнального модуля [[plumbmsg(2)]], либо от открытых приложений (в результате кликов мышью, нажатия кнопок или перетаскивания из окна/в окно), либо от модуля [[plumb(1)]].
+
Протокол запускается на старте системы после [[wm(1)]] и смотрит доступный конфигурационный файл (по умолчанию: /usr/имя_пользователя/lib/plumbing). Каждый такой файл содержит правила, описанные специальной формой (см.[[plumbing(6)]]); правила описывают допустимый вид, назначение сигнала, который plumber получает от приложения-отправителя, и инструкции, указывающие: что именно необходимо выполнить. После запуска, plumber остается резидентно, ожидая запроса либо от сигнального модуля [[plumbmsg(2)]], либо от открытых приложений (результаты кликов мышью, нажатия кнопок или перетаскивания из окна/в окно), либо от модуля [[plumb(1)]].
   
 
Как только поступает сигнал, plumber реализует правила, перенаправляя сигнал в логический порт-ввода указанного приложения; если порт отсутствует, то plumber создает его. Если для указанного приложения отсутствует правило (или в случае иной ошибки), plumber возвращает сообщение об ошибке, отправителю сигнала.
 
Как только поступает сигнал, plumber реализует правила, перенаправляя сигнал в логический порт-ввода указанного приложения; если порт отсутствует, то plumber создает его. Если для указанного приложения отсутствует правило (или в случае иной ошибки), plumber возвращает сообщение об ошибке, отправителю сигнала.
   
Опция `-v` позволяет вести логи содержимого полученных протоколом сигналов, облегчая контроль и настройку правил. Кроме того, обычно Plumber работает с приложениями напрямую, однако, если имеется специализированный проводник или менеджер окон, отличный от [[wm(1)]], то опция`-w` указывает протоколу работать через канал/chan/wm (по сути, скидывать все правила и инструкции в файл), откуда этот проводник или менеджер окон может черпать все необходимое для нормального функционирования. Опция `-c` позволяет для тех же целей создать собственный канал с именем ''wmchan'' вместо/chan/wm.
+
Опция `-v` позволяет вести логи содержимого полученных протоколом сигналов, облегчая контроль и настройку правил. Кроме того, обычно plumber работает с приложениями напрямую, однако, если имеется специализированный проводник или менеджер окон, отличный от [[wm(1)]], то опция`-w` указывает протоколу работать через канал /chan/wm (по сути, скидывать все правила и инструкции в файл), откуда этот проводник или менеджер окон может черпать все необходимое для нормального функционирования. Опция `-c` позволяет для тех же целей создать собственный канал с именем ''wmchan'' вместо/chan/wm.
   
 
'''ФАЙЛ'''
 
'''ФАЙЛ'''

Версия от 06:10, 28 июля 2010

НАЗВАНИЕ

plumber - это своего рода протокол обмена сигналами между запущенными приложениями

ВВОД

plumber [ -v ] [ -w ] [ -c wmchan ] [ rulefile ... ]

ОПИСАНИЕ

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

Протокол запускается на старте системы после wm(1) и смотрит доступный конфигурационный файл (по умолчанию: /usr/имя_пользователя/lib/plumbing). Каждый такой файл содержит правила, описанные специальной формой (см.plumbing(6)); правила описывают допустимый вид, назначение сигнала, который plumber получает от приложения-отправителя, и инструкции, указывающие: что именно необходимо выполнить. После запуска, plumber остается резидентно, ожидая запроса либо от сигнального модуля plumbmsg(2), либо от открытых приложений (результаты кликов мышью, нажатия кнопок или перетаскивания из окна/в окно), либо от модуля plumb(1).

Как только поступает сигнал, plumber реализует правила, перенаправляя сигнал в логический порт-ввода указанного приложения; если порт отсутствует, то plumber создает его. Если для указанного приложения отсутствует правило (или в случае иной ошибки), plumber возвращает сообщение об ошибке, отправителю сигнала.

Опция `-v` позволяет вести логи содержимого полученных протоколом сигналов, облегчая контроль и настройку правил. Кроме того, обычно plumber работает с приложениями напрямую, однако, если имеется специализированный проводник или менеджер окон, отличный от wm(1), то опция`-w` указывает протоколу работать через канал /chan/wm (по сути, скидывать все правила и инструкции в файл), откуда этот проводник или менеджер окон может черпать все необходимое для нормального функционирования. Опция `-c` позволяет для тех же целей создать собственный канал с именем wmchan вместо/chan/wm.

ФАЙЛ

/usr/имя_пользователя/lib/plumbing - конфигурационный файл протокола

ИСХОДНИКИ

/appl/cmd/plumber.b

/appl/lib/plumbing.b

Смотри также

plumb(1),wm(1),plumbmsg(2),plumbing(6)