Сценарий использования компонента PackageManager

30 сентября 2026

ID pm_scenario

Компонент PackageManager предоставляет API для управления KPA-пакетами в решениях, построенных на базе KasperskyOS.

API компонента PackageManager представляет собой надстройку над IPC, которая позволяет упростить процесс разработки программ. PackageManager является отдельной системной программой, доступ к которой осуществляется через IPC, но при этом разработчикам предоставляется клиентская библиотека, которая скрывает необходимость использования IPC-вызовов напрямую.

Программный интерфейс компонента PackageManager описан в статье "Компонент PackageManager".

Добавление компонента PackageManager в решение на базе KasperskyOS

Здесь и далее клиентом называется программа, использующая API компонента PackageManager для управления KPA-пакетами.

Системная программа ExecutionManager поставляется в составе загрузочного образа KasperskyOS и запускается автоматически при запуске решения.

Типовой сценарий использования компонента PackageManager включает следующие шаги:

  1. Компоновка исполняемого файла клиента с клиентской прокси-библиотекой PackageManager, для чего необходимо в файле CMakeLists.txt для сборки клиента добавить следующую команду:

    target_link_libraries (<имя CMake-цели для сборки клиента> package_manager::package_manager_proxy)

  2. Добавление разрешений для необходимых событий в описание политики безопасности решения:
    1. Чтобы программа PackageManager могла управлять KPA-пакетами, политика безопасности решения должна разрешать следующие взаимодействия для класса процессов package_manager.PkgMgrEntity:
      • Доступ ко всем службам программы VFS.
      • Доступ к службам ядра Sync, VMM, Thread, HAL, Handle, FS, Notice, CM и Profiler (их описания находятся в директории sysroot-*-kos/include/kl/core из состава SDK).
    2. Чтобы клиент мог обращаться к программе PackageManager, политика безопасности решения должна разрешать следующие взаимодействия для класса клиентского процесса:
      • Доступ к соответствующим службам программы PackageManager (их описания находятся в директории sysroot-*-kos/include/kl/package_manager из состава SDK).
  3. Использование API программы PackageManager в коде клиента.

    Для этого необходимо использовать заголовочный файл component/package_manager/kos_ipc/package_manager_proxy.h. Подробнее см. "Компонент PackageManager".

Вам помогла эта статья?
Что нам нужно улучшить?
Спасибо за ваш отзыв, вы помогаете нам становиться лучше!
Спасибо за ваш отзыв, вы помогаете нам становиться лучше!