2001 FREENIX Track Technical Program - Abstract
Kqueue: A generic and scalable event notification facility
Jonathan Lemon, FreeBSD Project
Abstract
Applications running on a UNIX platform need to be notified
when some activity occurs on a socket or other descriptor,
and this is traditionally done with the select() or
poll() system calls. However, it has been shown that the
performance of these calls does not scale well with an increasing
number of descriptors. These interfaces are also
limited in the respect that they are unable to handle other
potentially interesting activities that an application might
be interested in, these might include signals, file system
changes, and AIO completions. This paper presents a
generic event delivery mechanism, which allows an application
to select from a wide range of event sources,
and be notified of activity on these sources in a scalable
and efficient manner. The mechanism may be extended
to cover future event sources without changing the application
interface.
- View the full text of this paper in
PDF form.
- If you need the latest Adobe Acrobat Reader, you can download it from Adobe's site.
- To become a USENIX Member, please see our Membership Information.
|