Linux uses epoll and FreeBSD, kqueue, for kernel event notification. I'm not familiar with the details of these save that they are roughly analogous to one other and thus used for similar purposes.
This seems to me like a sucky turn of events as it is clearly API fragmentation. Is anyone aware of any intentions to somehow merge the 2 mechanisms?
System level programming for *nix is a real PITA because each vendor has their own idea of how to implement advanced functionality...
It reminds me of the situation in OpenGL where an extension mechanism allows vendors to quickly expose advanced hardware functionality via the OpenGL API at the cost of being incompatible with another vendor's implementation of similar functionality. In OpenGL, after much debate among the different graphics hardware vendors, its Architecture Review Board (ARB) eventually blesses a single cross-vendor API call for the new functionality and everyone is expected to migrate to this instead of their own specific extensions.
-------------------------------------------------------------- SIDEBAR: The OpenGL approach is superior to the DirectX one in that vendor specific extensions are well coupled to the vendor's hardware and thus offer the cleanest (albeit non-portable) access to new functionality. The extension mechanism also allows the vendor to make such functionality available to the programmer potentially earlier than with DirectX (although since card vendors cooperate closely with Microsoft this advantage is somewhat nullified).
The DirectX approach's advantage is that portability is present from the beginning (although in the real world sticky issues crop up - like what happened to its pixel shader versions - and such portability came at the cost of having to stick to a lower common denominator). ---------------------------------------------------------------
Now, the closest equivalent to the OpenGL ARB I see in the *nix world would be the POSIX committee. (POSIX is actually intended to be an OS neutral standard, though I don't think anyone would deny it is very heavily influenced by *nix design).
The question is: Do you think the POSIX committee will be up to it when it comes to setting standards for things such as epoll and kqueue or are we forever doomed to using the Gngngngnu... autohell tools (the most humongous kludge in software history) to patch over API incompatibilities?
One important case study wrt this would be the success (or lack thereof) of POSIX's threading API standard: How well do Solaris, *BSD, and OS X support pthreads out-of-the-box?
-- ========================================= reply-to: a n d y @ n e t f x p h . c o m
It's Linux-GNU not GNU/Linux
-- Philippine Linux Users' Group (PLUG) Mailing List [EMAIL PROTECTED] (#PLUG @ irc.free.net.ph) Official Website: http://plug.linux.org.ph Searchable Archives: http://marc.free.net.ph . To leave, go to http://lists.q-linux.com/mailman/listinfo/plug . Are you a Linux newbie? To join the newbie list, go to http://lists.q-linux.com/mailman/listinfo/ph-linux-newbie
