Messages in this thread | | | From | "Network Nut" <> | Subject | RE: WaitForMultipleObjects/etc. In Kernel | Date | Tue, 28 Jan 2014 15:07:41 -0600 |
| |
> -----Original Message----- > From: Clemens Ladisch [mailto:clemens@ladisch.de] > Sent: Tuesday, January 28, 2014 3:04 AM > To: Network Nut > Cc: linux-kernel@vger.kernel.org > Subject: Re: WaitForMultipleObjects/etc. In Kernel > > Network Nut wrote: > > 5. I can simulate system-global named mutex using shared-memory for > > underlying state of mutex (POCO NamedMutex) 6. I can get named > > semaphore using POSIX sem_create > > > > It seems that the remaining problem is to get named mutex and named > > semaphore to be accessible by file-descriptor. > > Forget about the POSIX stuff. You can implement a mutex by using an > eventfd that has the value 1 in the unlocked state; a read locks, a write of 1 > unlocks. You can implement a semaphore by using an eventfd with > EFD_SEMAPHORE.
I was looking at POSIX because it allows naming of the primitives.
I need to reference inter-process {mutex, event, semaphore}, each identified by string, if feasible. I need to epoll_wait on inter-process {mutex, event, semaphore}.
> And I should note that it is a common pattern to start a bunch of other > processes from a helper process; this not only allows inheriting file > descriptors, but also makes monitoring these processes easier from the > parent. Do all of your processes really need to be started independently?
Yes, all my processes need to be started independently.
Regards,
-Net
| |