Мне нужно запустить кусок кода в VMX-non корневой режим, используя KVM API. Это можно легко сделать, используя KVM API из пользовательской космической программы. Но я должен сделать это из самого пространства ядра. Отправка необходимых данных в пространство пользователя и запуск пользовательской космической программы не является вариантом.Как использовать API-интерфейс KVM (базовая виртуальная машина ядра) из пространства ядра?
This сообщения упоминает способ выпустить IOCTL вызовов из пространства ядра, а так как KVM использует API IOCTL вызывает взаимодействие с модулем KVM ядра, это кажется правдоподобным подходом. Однако я не мог понять этот подход и не уверен, что он будет работать без ошибок.
Предоставляет ли KVM API, который может запускаться из самого пространства ядра? Если нет, как я могу создать программу пользовательского пространства, которая получает требуемые данные из пространства ядра (множество структур данных), а затем делает то же самое?