Драйвер из кода C (автозагрузка, kext, lkm)

Я задал вопрос о StackOverflow, думая, что это правильное место, чтобы спросить, но они направили меня сюда, потому что они думают, что это тема, выпущенная SuperUser. И вот я здесь:)

Я хотел бы спросить вас, как я могу автоматически загрузить мой драйвер для определенного устройства на Mac.

Я сделал драйвер, написанный на C, и теперь мне было интересно, как я могу запускать эту программу в моей среде macos(/linux/windows) всякий раз, когда мое устройство подключено. Короче говоря: как я могу распознать по умолчанию систему, если это устройство подключено к mac по идентификатору поставщика + продукта (или к linux или windows) и запускает мой драйвер? Или как я могу преобразовать мой C-драйвер в kext и автоматически загрузить его? В км? (DLL (?) для Windows?)

Спасибо вам!

PS Я знаю, что есть некоторые специфические OS-зависимые API для взаимодействия с ядром, но на данный момент я был бы признателен, если бы я мог загрузить свой C-драйвер из расширения ядра, близкого к "без кода", чего я хочу добиться, так это:

1 - Когда я подключаю USB-устройство, моя система может его распознать
2 - моя система загружает мое собственное расширение ядра, которое..
3 -... запустит мою внешнюю C-программу для обработки устройства.
(4- Конечно, когда закончите, почистите все)

Возможно ли или у меня нет другого выбора, кроме как использовать API ядра?

Спасибо большое!

0 ответов

Другие вопросы по тегам