Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 13 Dec 2004 14:39:51 -0800
From:      Joe Kelsey <joe@zircon.seattle.wa.us>
To:        Julian Elischer <julian@elischer.org>
Cc:        arch@freebsd.org
Subject:   Re: Fixing Posix semaphores
Message-ID:  <1102977591.30309.203.camel@zircon.zircon.seattle.wa.us>
In-Reply-To: <41BE15EE.5060704@elischer.org>
References:  <1102975803.30309.196.camel@zircon.zircon.seattle.wa.us> <41BE15EE.5060704@elischer.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 2004-12-13 at 14:21 -0800, Julian Elischer wrote:
> 
> 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?
> >
> >I currently run 5.3, but I suppose I could think about running current
> >at some point in the future.
> >
> 
> I don't think that the spirit is to do what you suggest.
> I have always interpretted it to be a separate namespace.
> does the posix "mknod" definition mention how to make a semaphore?

POSIX does not define or allow use of mknod to create a named semaphore.
Only sem_open() can create a named semaphore.  The "spirit", as
implemented in other OS', clearly indicates the use of file system
names, not the restricted 14-character name used by FreeBSD.  For
instance, Solaris uses file system names.

/Joe




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1102977591.30309.203.camel>