Инициализирующая программа kl.ProductRomfsLoader и файл product_init.yaml

30 сентября 2026

ID einit_overview

Инициализирующая программа kl.ProductRomfsLoader

Для запуска прикладных программ рекомендуется использовать KPA-пакеты и системную программу ServiceManager.

Если в решении на базе KasperskyOS используются программы, которые по какой-либо причине не могут быть упакованы в KPA-пакеты, то для запуска таких программ нужно использовать системную программу kl.ProductRomfsLoader, которая запускает программы на основе init-описания. Рекомендуется не пользоваться этим подходом без крайней необходимости. Подробнее см. примеры в составе SDK.

Программа kl.ProductRomfsLoader запускает программы в соответствии с init-описанием (файлом product_init.yaml). Такой способ запуска программ не рекомендован и используется для запуска некоторых системных программ, не поддерживающих запуск из KPA-пакетов.

Init-описание (product_init.yaml)

Init-описание содержит данные в формате YAML, которые идентифицируют:

  • Процессы, которые будут запущены системной программой kl.ProductRomfsLoader

    Порядок запуска процессов не зависит от порядка их перечисления в init-описании, но его можно задать с помощью ключей before и after (см. таблицу ниже).

  • IPC-каналы, которые создаются при запуске решения и используются процессами для взаимодействия между собой.

Эти данные представляют собой словарь с ключом entities, содержащий список словарей процессов (см. "Примеры init-описаний"). Ключи словаря процесса приведены в таблице ниже.

Можно создать init-описание вручную или автоматизированно. Во втором случае нужно подготовить шаблон product_init.yaml.in, из которого система сборки создаст init-описание.

Ключи словаря процесса в init-описании

Ключи словаря IPC-канала процесса приведены в таблице ниже.

Ключи словаря IPC-канала в init-описании

Init-описание может также содержать ключ mount_romfs, который определяет имя точки монтирования дополнительной файловой системы romfs.1 перед запуском процессов. Это позволяет запускать процессы из бинарных файлов, расположенных на файловой системе romfs.1. Файловая система romfs.1 будет отмонтирована после завершения процесса Einit. Пример использования:

mount_romfs:

"romfs.1": "romfs/1"

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