WikiSort.ru - Не сортированное

ПОИСК ПО САЙТУ | о проекте

DCOP (от Desktop COmmunication Protocol) — легковесная система коммуникации процессов, а также программных компонентов. Основная цель этой системы — обеспечивать межпроцессное взаимодействие и распределять сложные задачи. Таким образом DCOP — система управления, позволяющая приложениям или скриптам использовать другие приложения. Она построена поверх протокола X Window System Inter-Client Exchange.

Использование DCOP предоставляет новые возможности без необходимости написания новых приложений. Приложения и библиотеки KDE хорошо поддерживают DCOP, благодаря этому большинство приложений KDE могут контролироваться скриптами через механизм DCOP. В KDE 4 DCOP был заменен на D-Bus.

В современных KDE-системах каждое приложение KDE поддерживает базовый набор интерфейсов DCOP, даже если программист явно не вносил в коде их поддержку. Например, каждое приложение по умолчанию поддерживает команду закрытия.

Существует утилита, называемая ‘dcop’, позволяющая управлять приложениями из командной строки. Также есть GUI-утилита ‘kdcop’, отображающая интерфейсы приложения.

Для примера, рабочий стол KDE позволяет изменять обои с временным интервалом. Тем не менее он не обеспечивает напрямую интерфейс для отображения следующих обоев, если текущие не подходят под ваше настроение. Также нет способа удалить обои, которые не нравятся пользователю.

Эти возможности могут быть добавлены с помощью dcop: команда

 dcop kdesktop KBackgroundIface changeWallpaper

установит следующие обои, а команда

 dcop kdesktop KBackgroundIface currentWallpaper 1

укажет название файла обоев на первом рабочем столе (KDE, как и большинство X-окружений поддерживает дополнительные ‘виртуальные’ рабочие столы для удобства работы). Совместив обе команды в shell-скрипте, можно переключиться на следующие обои, удалив предыдущие, например так:

 OLDWALLPAPER=`dcop kdesktop KBackgroundIface currentWallpaper 1`
 dcop kdesktop KBackgroundIface changeWallpaper
 rm "$OLDWALLPAPER"

Таким образом, DCOP делает возможным добавление новых функций, которые не были предусмотрены при создании приложения.

Модель DCOP

Модель проста. Каждое использующее DCOP приложение — клиент. Они взаимодействуют друг с другом через сервер DCOP, который предназначен для направления трафика, отправки сообщений/запросов в нужном направлении. Все клиенты — равноправны.

С DCOP возможны два типа действий: сообщения без ожидания и запросы с ожиданием данных.

Все данные отправляются последовательно, используя встроенные операторы QDataStream, доступные во всех классах Qt. Существует также простой IDL-подобный компилятор (dcopidl и dcopidl2cpp), генерирующий заготовки и скелеты. Использование компилятора dcopidl обладает дополнительной выгодой — безопасностью типов.

D-Bus, система межпроцессного взаимодействия стандартизованная freedesktop.org, создана под влиянием системы DCOP и заменила её в KDE4.

Ссылки

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2024
WikiSort.ru - проект по пересортировке и дополнению контента Википедии