Sincronização de Memória Compartilhada Linux

Eu implementei dois aplicativos que compartilham dados usando a API de memória compartilhada POSIX (por exemplo,shm_open). Um processo atualiza os dados armazenados no segmento de memória compartilhada e outro processo o lê. Eu quero sincronizar o acesso à região de memória compartilhada usando algum tipo de mutex ou semáforo. Qual é a maneira mais eficiente de fazer isso? Alguns mecanismos que estou considerando são

Um mutex POSIX armazenado no segmento de memória compartilhada (a definição do atributo PTHREAD_PROCESS_SHARED seria necessária)Criando um semáforo do System V usandosemget

questionAnswers(4)

yourAnswerToTheQuestion