Date: Mon, 7 Apr 1997 13:38:19 -0700 (MST) From: Terry Lambert <terry@lambert.org> To: peter@spinner.DIALix.COM (Peter Wemm) Cc: freebsd-current@freebsd.org Subject: Re: POLL & the Single FreeBSD'r Message-ID: <199704072038.NAA02051@phaeton.artisoft.com> In-Reply-To: <860439710.357888@haywire.DIALix.COM> from "Peter Wemm" at Apr 7, 97 07:01:50 pm
next in thread | previous in thread | raw e-mail | index | archive | help
> I implemented an openbsd-style implementation of poll() some time ago > but it was mixed up in the middle of the upages stuff so it lot left. > Since then, NetBSD have done a much better implementation, I'm very tempted > to back out what I've done and start from scratch while looking at the > NetBSD method. Basically, OpenBSD implemented poll() as an alternative > interface to the select hooks in the kernel which means that poll() is > limited to what select() can test for. NetBSD did it a lot better, by > replacing the select hooks by poll hooks, and updating both front-ends to > use the new poll backend. The main difference is that under NetBSD, you > can poll for (say) ugent data on a socket as opposed to merely "readable". How does implementing select on top of poll hooks impact the ability to specify a 1uS valued timeval struct for the select timeout? Does it round to the 10ms granularity of poll, or does it work as expected (and as documented in the select() man page)? There is good reason why the select() call was located in the RT section of the SVID III definition when SystemV did poll()... Regards, Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199704072038.NAA02051>