Пример multi_vfs_ntpd
Пример демонстрирует поддержку сетевого протокола NTP (Network Time Protocol) для синхронизации системного времени в KasperskyOS.
Директория примера в SDK
Код примера и скрипты для сборки находятся по следующему пути:
Список программ
Client
– прикладная программа, изменяющая текущее системное время.Ntpd
– системная программа, реализующая NTP-клиент, который синхронизирует системное время с NTP-серверами.Dhcpcd
– системная программа, реализующая DHCP-клиент.VfsSdCardFs
– системная программа, поддерживающая файловую систему SD-карт.VfsNet
– системная программа, поддерживающая сетевые протоколы.EntropyEntity
– системная программа, реализующая генератор случайных чисел.DNetSrv
– драйвер сетевой карты.SDCard
– драйвер SD-карты.BSP
– драйвер для настройки параметров мультиплексирования пинов (pinmux).Bcm2711MboxArmToVc
– драйвер для работы с сопроцессором VideoCore (VC6) через технологию mailbox для Raspberry Pi 4 B.
Описание инициализации
Файл описания инициализации решения init.yaml
генерируется в процессе сборки решения на основе шаблона:
./einit/src/init.yaml.in
Макрос @INIT_Client_ENTITY_CONNECTIONS+@
в шаблоне init.yaml.in
при сборке примера заменяется в файле init.yaml
на список IPC-каналов со всеми системными программами, с которыми скомпонована программа Client.
Этот список дополняет вручную заданные IPC-каналы в шаблоне init.yaml.in
.
Макрос @INIT_FileVfs_ENTITY_CONNECTIONS@
при сборке примера заменяется в файле init.yaml
на список IPC-каналов со всеми системными программами, с которыми скомпонована программа FileVfs
.
Макрос @INIT_EXTERNAL_ENTITIES@
в шаблоне init.yaml.in
при сборке заменяется в файле init.yaml
на список системных программ, с которыми скомпонованы прикладные программы. Этот список содержит IPC-каналы системных программ, параметры запуска функции main()
и значения переменных окружения.
Подробнее см. "Шаблон init.yaml.in".
Описание политики безопасности
Файл security.psl
содержит описание политики безопасности решения и генерируется в процессе сборки решения на основе шаблона:
./einit/src/security.psl.in
Ресурсы
- В директории
./resources/edl
расположен файл формальной спецификации компонента решения на базе KasperskyOSClient.edl
. - В директории
./resources/hdd/etc
расположены файлы конфигурации для программVfsNet
,Dhcpcd
иNtpd
:hosts
,dhcpcd.conf
иntp.conf
соответственно.
Сценарий работы
Программа Client
изменяет текущее системное время на время, указанное в макросе. После синхронизации времени программой Ntpd
ожидается, что год в полученном системном времени будет отличаться от года, установленного ранее макросом.
Сборка и запуск примера
См. "Сборка и запуск примеров".