KasperskyOS Community Edition 1.3
Содержание
Содержание
Отладка программы в составе KPA-пакета
Отладка программы в составе KPA-пакета, в отличие от отладки программ в решении на базе KasperskyOS, позволяет не выполнять полную сборку решения на базе KasperskyOS после внесения изменений в код прикладной программы.
Сценарий отладки программы в составе KPA-пакета выглядит следующим образом:
- Установка расширения KasperskyOS SDK Extension.
- Сборка прикладной программы и ее упаковка в KPA-пакет. Для того чтобы упаковать прикладную программу в KPA-пакет, необходимо использовать
CMake
-команды библиотеки kpa. - Запуск базового образа KasperskyOS из состава KasperskyOS Community Edition со встроенным в ядро GDB-сервером.
- Подключение отладчика к GDB-серверу ядра. Отладчик можно подключить при старте программы или при работе программы. Подробнее:
- Отладка программы с помощью графического интерфейса Visual Studio Code. Подробнее см. документацию Visual Studio Code: https://code.visualstudio.com/docs/editor/debugging.
Подключение отладчика при старте программы в базовом образе
Чтобы подключить отладчик к GDB-серверу ядра при старте программы в QEMU с помощью расширения Visual Studio Code:
- Установите точку останова в исходном коде программы перед отлаживаемым фрагментом.
- Соберите программу. Для того чтобы упаковать прикладную программу в KPA-пакет, необходимо использовать
CMake
-команды библиотеки kpa. - Запустите базовый образ KasperskyOS из состава KasperskyOS Community Edition.
- Дождитесь окончания загрузки базового образа и установите программу с помощью команды
KOS: Install package
. - В боковой панели Visual Studio Code нажмите Run and debug > create a launch.json file , а затем выберите KasperskyOS Debugger.
В результате будет создан файл конфигурации отладки
launch.json
. - В файле
launch.json
в поле конфигурации с именем(kos/gdb) Launch & debug application
укажите путь до бинарного файла вашей программы, полученного в результате сборки и имя программы. В полеeiid
необходимо указать значениеkl.Kds
. - Запустите отладку, нажав на кнопку
(kos/gdb) Launch & debug application
на нижней панели. - В раскрывающемся списке выберите конфигурацию с именем
(kos/gdb) Launch & debug application
. - В отладочной консоли появится сообщение, что программа готова к отладке. Нажмите на кнопку Continue и выполнение программы будет остановлено на выбранной в п.1 точке останова.
Подключение отладчика при работе программы, запущенной в базовом образе
Чтобы подключить отладчик к GDB-серверу ядра при работе программы в QEMU с помощью расширения Visual Studio Code:
- Добавьте в функцию
main
программы бесконечный цикл. Это позволит отладчику подключиться к работающей программе. - Установите точку останова в исходном коде программы перед отлаживаемым фрагментом.
- Соберите программу. Для того чтобы упаковать прикладную программу в KPA-пакет, необходимо использовать
CMake
-команды библиотеки kpa. - Запустите базовый образ KasperskyOS из состава KasperskyOS Community Edition.
- В боковой панели Visual Studio Code нажмите Run and debug > create a launch.json file , а затем выберите KasperskyOS Debugger.
В результате будет создан файл конфигурации отладки
launch.json
. - В файле
launch.json
в поле конфигурации с именем(kos/gdb) Attach to process
укажите путь до бинарного файла вашей программы, полученного в результате сборки. - Запустите программу в базовом образе.
- Запустите отладку, нажав на кнопку
(kos/gdb) Attach to process
на нижней панели. - В раскрывающемся списке выберите конфигурацию с именем
(kos/gdb) Attach to process
и выберите имя программы для отладки. - В отладочной консоли появится сообщение, что программа готова к отладке. Нажмите на кнопку Continue и выполнение программы будет остановлено на выбранной в п.2 точке останова.