FireFighter-drone on Kaspersky OS / Дрон-огнеборец на Касперский ОС
Общая информация
Этот проект представляет собой заготовку для задачи “Дрон-огнеборец” на КОС и предназначен для получения представления об интерфейсе взаимодействия компонентов, возможных способах реализации их минимального функционала, его объеме и т.д. Проект предполагает запуск как локально в эмуляторе Qemu, так и на аппаратной платформе Raspberry Pi 4b 1.5 rev.
Оговорка разработчика и условия использования
Пример является отправной точкой работы, но не обязательно является образцом “хорошо” или “правильно” и может быть изменен и расширен участниками в своих реализациях.
Применять только в учебных целях. Данный код может содержать ошибки, авторы не несут никакой ответственности за любые последствия использования этого кода. Условия использования и распространения - MIT лицензия (см. файл LICENSE).
Настройка и запуск
Возможны оба варианта. Использовать docker контейнер проще и быстрее, что полезно для быстрого ознакомления. Для разработки удобнее настроить на хост системе всё необходимое.
Используя docker контейнер
Для сборки проекта понадобится любой Linux дистрибутив способный запускать docker. Потребуется скачать Касперский ОС SDK с официального сайта https://os.kaspersky.ru/download-community-edition/ Тестировалось всё на версии пакета KasperskyOS-Community-Edition_1.1.1.40_en.deb .
Сборка docker образа с установленным KOS SDK (скачанный deb файл следует разместить в папке с проектом):
docker build ./ -t kos:1.1.1.40
Запуск контейнера (из папки проекта):
docker run --net=host --volume="`pwd`:/data" -it --rm kos:1.1.1.40 bash
Сборка и запуск проекта (находясь внутри контейнера):
./cross-build.sh
Дополнительно требуется запустить FPS
./fps
Настроив хост систему
Предполагается, что настройка и подготовка хостовой и гостевой машины были осуществлены в соответствии с инструкциями, приведенными в подготовительном курсе
- https://stepik.org/course/133991/promo.
Дополнительные сведения о настройке хост системы описаны в документации по Касперский ОС
- https://support.kaspersky.ru/help/KCE/1.1/ru-RU/getting_started.htm
Системные требования
Данный пример разработан и проверен на ОС Ubuntu 22.04, авторы предполагают, что без каких-либо изменений этот код может работать на любых Debian-подобных OS, для других Linux систем. Для MAC OS как минимум необходимо использовать другой менеджер пакетов. В Windows необходимо самостоятельно установить необходимое ПО или воспользоваться виртуальной машиной с Ubuntu (также можно использовать WSL версии не ниже 2).
Используемое ПО
Стандартный способ запуска демо-версии предполагает наличие установленного пакета docker, а также KasperskyOS-Community-Edition-1.1.1.40. Для автоматизации типовых операций используется утилита cmake.
Для работы с кодом примера рекомендуется использовать Vim.
Дополнительные материалы для разработчика
- Документ для разработчиков включает архитектуру и подробное описание логики решения.