Свойства кросс-компиляторов KasperskyOS
Кросс-компиляторы, входящие в состав KasperskyOS Community Edition, поддерживают процессоры с архитектурой arm.
В toolchain в составе KasperskyOS Community Edition входят следующие инструменты для кросс-компиляции:
arm-kos-gccarm-kos-g++arm-kos-asarm-kos-ldВ GCC, кроме стандартных макросов, определен дополнительный макрос __KOS__=1. Использование этого макроса упрощает портирование программного кода на KasperskyOS, а также разработку платформонезависимых приложений.
Чтобы просмотреть список стандартных макросов GCC, выполните следующую команду:
echo '' | arm-kos-gcc -dM -E -
Особенности работы компоновщика
При выполнении сборки исполняемого файла программы компоновщик по умолчанию связывает следующие библиотеки в указанном порядке:
open, socket, read, write).coresrv, например: #include <coresrv/vmm/vmm_api.h>. Вторая часть библиотеки libkos является оберткой над первой частью и содержит дополнительные функции синхронизации: mutex, semaphore, event. Взаимодействие других библиотек (включая libc) с ядром происходит через библиотеку libkos.main и пользовательских конфигураций).