Answers:
Libusb是一个与USB设备进行交互的库,而curses是一个与文本终端进行交互的库,ALSA(更确切地说是它的libasound组件)是一个与audi设备进行交互的库,等等。内核处理硬件交互。它提供了设备文件,应用程序可以打开与硬件交互,通过read
,write
和系统调用。ioctl
ioctl
是系统调用:它允许应用程序(用户级代码)发出由内核处理的请求。
Libusb允许应用程序注册回调函数,这些回调函数在设备需要报告的内容时执行。以下是幕后信息流的粗略概述:
read
,write
或者ioctl
对设备的文件系统调用,并导致该系统调用返回。libusb
仍可以访问它吗?
/dev/ttyS*
。USB是相同的原理,只是更快,更复杂。