Comment puis-je synchroniser les accès à la mémoire partagée dans LynxOS/POSIX?

Je suis en œuvre deux processus sur un LynxOS SE POSIX (conforme) système de communication par mémoire partagée.

Un processus de va agir comme un "producteur" et de l'autre un "consommateur". Dans un environnement multi-thread système de mon approche serait d'utiliser un mutex et condvar (variable d'état) de la paire, avec le consommateur en attente sur le condvar (avec pthread_cond_wait) et le producteur de signalisation (avec pthread_cond_signal) lorsque la mémoire partagée est mise à jour.

Comment puis-je atteindre cet objectif dans un multi-processus, plutôt que de multi-thread, de l'architecture?

Est-il un LynxOS/POSIX façon de créer un condvar/mutex paire qui peut être utilisé entre les processus?

Ou d'un autre mécanisme de synchronisation plus appropriée dans ce scénario?

Merci @nsa, j'avais remarqué qu'il y avait un pthread_condattr_setpshared mais j'ai raté le pthread_attr_setscope. Si vous modifiez votre commentaire à la réponse, je vais upvote.
Semble que j'avais un peu mal informé, pthread_condattr_setpshared est en effet ce que vous pouvez utiliser, pthread_attr_setscope traite de la planification des threads.

OriginalL'auteur GrahamS | 2010-04-06