Sono su un progetto per il quale devo generare molti processi diversi, tutti in diversi eseguibili, e ci saranno alcuni segmenti di memoria condivisa e alcuni semafori per sincronizzarli. Uso un processo di "inizializzazione" per aprire alcuni semafori POSIX e allocare alcuni segmenti di memoria condivisa.
Non riesco a decidere quale sia la migliore pratica; per inizializzare i semafori e caricarli sulla memoria condivisa in modo che tutti quelli che acconsentono alla memoria possano accedervi anch'essi o passarli come argomenti della riga di comando durante exec?
Non trovo nessuna opzione migliore dell'altra, eccetto che il primo potrebbe essere ridondante perché i semafori probabilmente non cambieranno mai (ID dei loro valori cambierà sicuramente molto) e accedendoli senza averne bisogno (per alcuni processi) non è utile, ma l'ho visto accadere, probabilmente per una ragione.
Quindi avrò bisogno di alcuni ragionamenti per ciascuno.