Fixing Posix semaphores
rwatson at freebsd.org
Tue Dec 21 16:05:05 PST 2004
On Mon, 13 Dec 2004, Joe Kelsey wrote:
> I have a desire to fix posix semaphores in at least 5.3. The current
> implementation doesn't actually follow the "spirit" of the standard,
> even though it technically qualifies in a somewhat degraded sense. I
> refer to the fact that the current implementation treats posix
> semaphores as completely contained inside the kernel and essentially
> divorced from the filesystem. The true "spirit" of the standard places
> the semaphores directly in the file system, similar to named pipes.
> However the current implementation treats the supplied "name" as a
> 14-character identifier, required to begin with a slash and contain no
> other slashes. Pretty weak.
> Well, in order to fix this, we need to add file system code and come up
> with a new type. I currently have some time to spend on something like
> this and am willing to put in whatever effort it takes. Does anyone
> want to add their own ideas or requirements?
>From my perspective, the biggest win here is that it would permit
different name spaces to trivially exist using multiple mountpoints of a
"semfs". This would make it easy to allow applications in different jails
to use identical names without colliding.
FWIW, my only experience with POSIX semaphores on a system other than
FreeBSD is on Darwin, where a similar model is used to that on FreeBSD: a
flat kernel-maintained name space is present.
Robert N M Watson FreeBSD Core Team, TrustedBSD Projects
robert at fledge.watson.org Principal Research Scientist, McAfee Research
More information about the freebsd-stable