Subject: HEADS UP: kqueue support merged
To: None <current-users@netbsd.org,>
From: Chris Humphries <chumphries@drauku.net>
List: tech-kern
Date: 10/25/2002 16:13:46
I would just like to thank all those involved into putting
kqueue in the kernel and doing the "right"  of including it
in alot of programs, as well. 

congrats guys, it is very appreciated.


Jaromir Dolecek writes:
 > 
 > Support for kqueue has been merged to -current today. This code
 > is based upon code written by Jonathan Lemon from FreeBSD
 > project. The NetBSD port was done by Luke Mewburn, Jason Thorpe
 > and Jaromir Dolecek.
 > 
 > Kqueue provides a generic method of notifying the user
 > when an event happens or a condition holds, based on the results
 > of small pieces of kernel code termed filters.
 > 
 > Since kqueue provides stateful interface to poll many descriptors
 > at once, it's ideal for applications which need to watch large,
 > mainly constant set of descriptors, for which poll(2)/select(2)
 > has significant system overhead.  Example applications which might
 > benefit from kqueue are web servers, proxies, ircd etc.
 > 
 > Kqueue also provides support for watching files and directories
 > for changes. This means that e.g. file managers can use kqueue
 > instead of periodic stat(2) on the directory nodes. It's my
 > understanding that e.g. Samba could make a good use of this too;
 > Samba needs to watch&report file/directory changes to support
 > the Microsoft Windows change notification filters.
 > This particular feature has been missing in Unix systems for a long
 > time, and it's good it's finally coming to NetBSD too.
 > 
 > On NetBSD, kqueue is supported by every device driver supporting
 > poll(2), so kqueue can be used as replacement for select(2)/poll(2)
 > in all cases. Also, we support filesystem kevents for all writable
 > local filesystems (including ffs, lfs, ext2fs, msdosfs) and also
 > for NFS. Thus, file managers and file servers can depend on the
 > functionality to be present for any filesystem likely to be used
 > as file storage.
 > 
 > There are some plans to add glue for notification of e.g. USB
 > devices additions/removals to userland or to support e.g. ifwatchd
 > functionality better way in future. The code is extensible
 > well and any additional filters like that are easy to add.
 > 
 > For more detailed information, see Jonathan's paper available at
 > 	http://people.freebsd.org/~jlemon/papers/kqueue.pdf
 > or
 > 	http://people.freebsd.org/~jlemon/papers/kqueue.ps
 > 
 > and/or the NetBSD kqueue(2) manpage.
 > 
 > Enjoy,
 > 
 > Jaromir
 > -- 
 > Jaromir Dolecek <jdolecek@NetBSD.org>            http://www.NetBSD.org/
 > -=- We should be mindful of the potential goal, but as the tantric    -=-
 > -=- Buddhist masters say, ``You may notice during meditation that you -=-
 > -=- sometimes levitate or glow.   Do not let this distract you.''     -=-

-- 
"Anyone who considers arithmetical methods of producing random digits is, 
 of course, in a state of sin."