Я новичок, изучающий, как писать драйверы устройств WDM для устройств USB, и обнаружил, что доступные материалы слишком сложны для понимания (онлайн-документ DDK является одним из самых трудных для чтения, а книга драйверов устройства WDM Оней не лучше.)
Итак, у меня есть простой вопрос. Где я могу начать, если я хочу создать виртуальное USB-устройство (например, виртуальную USB-мышь, которая выглядит как настоящая USB-мышь, подключенная к USB-порту) для тестирования/обучения.
Насколько я понимаю, драйвер HIDClass (hidclass.sys) имеет мини-ресивер для шины usb (hidusb.sys), которая выполняет перечисление подключенного USB-оборудования. Итак, если я хочу захватить процесс перечисления оборудования и создать собственное виртуальное оборудование, должен ли я включать драйвер фильтра где-нибудь, чтобы перехватить некоторые IRP, связанные с процессом перечисления оборудования?
Извините, если это не имеет никакого смысла, поскольку я все еще участвую в процессе обучения, и это на самом деле одно из упражнений, которые, как я думаю, могут помочь мне лучше узнать о написании драйверов устройств USB.