Communications kernel -> userland
Terry Lambert
tlambert2 at mindspring.com
Mon Jul 21 10:47:39 PDT 2003
Robert Watson wrote:
> Of these approaches, my favorite are writing directly to a file, and using
> a psuedo-device, depending on the requirements. They have fairly
> well-defined security semantics (especially if you properly cache the
> open-time credentials in the file case). I don't really like the Fifo
> case as it has to re-look-up the fifo each time, and has some odd blocking
> semantics. Sockets, as I said, involve a lot of special casing, so unless
> you're already dealing with network code, you probably don't want to drag
> it into the mix. If you're creating big new infrastructure for a feature,
> I suppose you could also hook it up as a first class object at the file
> descriptor level, in the style of kqueue. If it's relatively minor event
> data, you could hook up a new kqueue event type. You could also just use
> a special-purpose system call or sysctl if you don't mind a lot of context
> switching and lack of buffering.
I like setting the PG_G bit on the page involved, which maps it
into the address space of all processes. 8-).
-- Terry
More information about the freebsd-hackers
mailing list