RE: WaitForMultipleObjects/etc. In Kernel

From: Network Nut
Date: Tue Jan 28 2014 - 16:07:55 EST


> -----Original Message-----
> From: Clemens Ladisch [mailto:clemens@xxxxxxxxxx]
> Sent: Tuesday, January 28, 2014 3:04 AM
> To: Network Nut
> Cc: linux-kernel@xxxxxxxxxxxxxxx
> 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


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/