Co oznacza „_IO (…)” w nagłówkach C w Linuksie?

Mam standardowy plik nagłówkowy Linux, np.

/usr/src/linux-headers-3.2.0-35/include/linux/usbdevice_fs.h

który zawieradefine oświadczenia w następujący sposób:

#define USBDEVFS_SUBMITURB32       _IOR('U', 10, struct usbdevfs_urb32)
#define USBDEVFS_DISCARDURB        _IO('U', 11)
#define USBDEVFS_REAPURB           _IOW('U', 12, void *)

Co oznaczają słowa „_IOR”, „_IO” i „_IOW”? Jaka wartość jest faktycznie podana np. doUSBDEVFS_DISCARDURB?

questionAnswers(2)

yourAnswerToTheQuestion