Fixing Posix semaphores
Julian Elischer
julian at elischer.org
Mon Dec 13 14:55:12 PST 2004
Joe Kelsey wrote:
>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.
>
What does it gain you? (other than more letters to the name).
>
>/Joe
>
>
>
More information about the freebsd-arch
mailing list