next up previous
Next: Poll state and the Up: FUSD: A Linux Framework Previous: Retrieving a blocked system

Implementing selectable Devices

One important feature that almost every device driver in a system should have is support for the select(2) system call. select allows clients to assemble a set of file descriptors and ask to be notified when one of them becomes readable or writable. This simple feature is deceptively powerful--it allows clients to wait for any number of a set of possible events to occur. This is fundamentally different than (for example) a blocking read, which only unblocks on one kind of event. In this section, we'll describe how FUSD can be used to create a device whose state can be queried by a client's call to select(2).

This section is limited to a discussion what a FUSD driver writer needs to know to implement a selectable device. Details of the FUSD implementation required to support this feature are described in Section 11.1


Jeremy Elson 2003-08-20