Этот проект представляет собой заготовку для задачи "Дрон-огнеборец" на КОС и предназначен для получения представления об интерфейсе взаимодействия компонентов, возможных способах реализации их минимального функционала, его объеме и т.д. Проект предполагает запуск как локально в эмуляторе Qemu, так и на аппаратной платформе Raspberry Pi 4b 1.5 rev.
Пример является отправной точкой работы, но не обязательно является образцом "хорошо" или "правильно" и может быть изменен и расширен участниками в своих реализациях.
Применять только в учебных целях. Данный код может содержать ошибки, авторы не несут никакой ответственности за любые последствия использования этого кода. Условия использования и распространения - MIT лицензия (см. файл LICENSE).
Возможны оба варианта. Использовать 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
Предполагается, что настройка и подготовка хостовой и гостевой машины были осуществлены в соответствии с инструкциями, приведенными в подготовительном курсе
Дополнительные сведения о настройке хост системы описаны в документации по Касперский ОС
Данный пример разработан и проверен на ОС Ubuntu 22.04, авторы предполагают, что без каких-либо изменений этот код может работать на любых Debian-подобных OS, для других Linux систем. Для MAC OS как минимум необходимо использовать другой менеджер пакетов. В Windows необходимо самостоятельно установить необходимое ПО или воспользоваться виртуальной машиной с Ubuntu (также можно использовать WSL версии не ниже 2).
Стандартный способ запуска демо-версии предполагает наличие установленного пакета docker, а также KasperskyOS-Community-Edition-1.1.1.40. Для автоматизации типовых операций используется утилита cmake.
Для работы с кодом примера рекомендуется использовать Vim.
- Документ для разработчиков включает архитектуру и подробное описание логики решения.