3 ms·
I suppose on Linux, libusb itself is supposed to be the general programming interface, not the poking around with /dev or ioctl. The Windows and Mac interfaces
by incompatible 7y ago
I suppose on Linux, libusb itself is supposed to be the general programming interface, not the poking around with /dev or ioctl. The Windows and Mac interfaces he was using are quite possibly implemented as libraries over a more primitive layer.
Speculation, knowing nothing about USB specifically.
- pjmlp 7y agoOn Windows and Mac, the more primitive layer are kernel private APIs, which you aren't supposed to call directly.
- magicalhippo 7y agoLinux is the kernel, so really the equivalent on Windows is the Windows kernel API, not the Win32 (user) API. However, the kernel API seems to be somewhat similar to the Win32 version presented in the talk and not nearly as gnarly as the Linux equivalent: https://github.com/microsoft/Windows-driver-samples/blob/master/hid/hidusbfx2/sys/usb.c https://github.com/microsoft/Windows-driver-samples/blob/mas... https://docs.microsoft.com/en-us/windows-hardware/drivers/ddi/wdfusb/ https://docs.microsoft.com/en-us/windows-hardware/drivers/dd... That said I'm just an application programmer so I've only ever used the Win32 API.