RE: WaitForMultipleObjects/etc. In Kernel

From: Network Nut
Date: Thu Jan 30 2014 - 18:50:11 EST


> -----Original Message-----
> From: Clemens Ladisch [mailto:clemens@xxxxxxxxxx]
> Sent: Wednesday, January 29, 2014 2:31 AM
> To: Network Nut
> Cc: linux-kernel@xxxxxxxxxxxxxxx
> Subject: RE: WaitForMultipleObjects/etc. In Kernel
>
> Network Nut wrote:
> >I was looking at POSIX because it allows naming of the primitives.
>
> Linux uses two orthogonal mechanisms for synchronization primitives and for
> naming/sharing.
>
> >I need to epoll_wait on inter-process {mutex, event, semaphore}.
>
> Use eventfd.
>
> >I need to reference inter-process {mutex, event, semaphore}, each
> >identified by string, if feasible.
>
> Send the fd through a Unix domain socket.

Hi Again,

I was thinking that, rather than as for specifics, I should present my general problem, and ask how long-time Linux experts would solve it.

I have a master process M, that executes continually, from the birth to death of user-session.

I have many (distinct) processes that will be launched, and these processes, P1, P2, ...Pn, expect to see that M is executing. These processes:

1. expect to have access to a shared-memory section that already exists because M created it
2. expect to use a semaphore that already exists because M created it
3. expect to use a mutex that exists because M created it

P1, P2, ...Pn all know the path of image on disk of M. They are also permitted to maintain a fixed string that can be used to "get at" the mutex and semaphore.

How would P1, P2, ...Pn get at the semaphore that M created?

Please note that M cannot have any prior knowledge at all of P1, P2, ...Pn. P1...etc. must initiate communication with M.

[I don't want to misuse/abuse linux-kernel with my personal questions, so if there is a more appropriate group, please let me know.]

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/