Subject: consider importing freebsd's kevent() mechanism...
To: None <tech-kern@netbsd.org>
From: Luke Mewburn <lukem@wasabisystems.com>
List: tech-kern
Date: 01/22/2001 12:29:41
At BSDCon 2000 held in Monterey, CA, in October 2000, Jonathan
Lemon presented a talk about the generic kernel event (`kevent()')
mechanism that he designed and implemented in FreeBSD.

I am not a kernel guru, but it seemed to me that this could be a
useful feature for NetBSD, and other people at the talk, such as
Perry Metzger and Matt Jacob, seemed fairly excited by this too.

Basically it's a generic kernel event queueing mechanism that is not
only more scalable that poll(2) or select(2), but it can be used to
register interest in other such as:
	- asynchronous I/O
	- vnode changes (delete, write, extend, attrib, link, rename)
	- process creation/exit
	- signal raised

Multiple listeners can be setup to listen to the same event.

The design looks generic enough to expand as necessary.
It's possible to emulate Solaris' /dev/poll and Irix's /dev/imon .

There's links to the slides and paper at:
	http://people.freebsd.org/~jlemon/

I think this would be a good thing for us to have.

-- 
Luke Mewburn  <lukem@wasabisystems.com>  http://www.wasabisystems.com
Luke Mewburn     <lukem@netbsd.org>      http://www.netbsd.org
Wasabi Systems - providing NetBSD sales, support and service.