KasperskyOS Community Edition 1.3
Connecting a debugger when starting a program in a basic image

To connect a debugger to the GDB server of the kernel while starting a program in QEMU using the Visual Studio Code extension:

  1. Set a breakpoint in the program source code before the fragment to be debugged.
  2. Build the program. You must use the CMake commands of the kpa library to pack a program into a KPA package.
  3. Run a basic KasperskyOS image from KasperskyOS Community Edition.
  4. Wait for the basic image to finish loading and install the program by running the command KOS: Install package.
  5. On the side bar of Visual Studio Code, click Run and debug > create a launch.json file and then select KasperskyOS Debugger.

    This will create a debug configuration file named launch.json.

  6. In the launch.json file, in the field of the configuration named (kos/gdb) Launch & debug application, specify the path to the binary file of your program resulting from the build, and the program name. In the eiid field, you need to specify the kl.Kds value.
  7. Start debugging by clicking the (kos/gdb) Launch & debug application button on the lower pane.
  8. In the drop-down list, select the configuration named (kos/gdb) Launch & debug application.
  9. The debug console will show a message stating that the program is ready for debugging. Click Continue, and program execution will be stopped at the breakpoint that you selected at step 1.