Библиотека libkos является базовой библиотекой KasperskyOS, предоставляющей набор API, через которые программы и другие библиотеки (например, libc, kdf) используют службы ядра. API, предоставляемые библиотекой libkos, обеспечивают для разработчиков решения следующие возможности:
управление процессами, потоками исполнения, виртуальной памятью;
управление доступом к ресурсам;
осуществление ввода-вывода;
создание IPC-каналов;
управление электропитанием;
получение статистических сведений о системе;
другие возможности, поддерживаемые службами ядра.
На аппаратных платформах с процессорной архитектурой Arm входные и выходные параметры API библиотеки libkos нельзя сохранять в памяти типа "Device memory", поскольку это может привести к неопределенному поведению. (Исключениями являются: параметр addr функции KnVmQuery() из API vmm_api.h, параметры reg и baseReg функций из API mmio.h, параметр va функции KnHalFlushCache() из API hal_api.h, параметр va функции KosCpuCacheFlush() из API cpucache.h.) Параметры API библиотеки libkos нужно сохранять в памяти типа "Normal memory". Чтобы копировать данные из памяти типа "Device memory" в память типа "Normal memory" и обратно, нужно использовать функцию RtlPedanticMemcpy(), объявленную в заголовочном файле sysroot-*-kos/include/rtl/string_pedantic.h из состава KasperskyOS SDK.