Έχω μια απορία για το που να δηλώσω και που να καταστρέφω τους semaphores.


1)
α) Όταν ένα πρόγραμμα κάνει fork(), οι semaphores αντιγράφονται;

β) Πρέπει να διαγράφω τους semaphores όταν τελειώνει το παίδι και όταν τελειώνει ο γονέας;

γ) Δηλαδή μετά το fork() θα έχω 5 (για τον γονέα) + 5 (για το παιδί) = 10 semaphores?

δ) Αν είναι έτσι, τότε, πώς ενημερώνονται οι semaphores του γονέα;


2)
Αν π.χ. θέλω να έχω 5 κοινούς semaphores, και για το γονέα και για το παιδί, πού πρέπει να δηλώσω τους semaphores, και που να τους διαγράφω; Εννοώ να είναι global; και να διαγράφονται μετά το wait() του γονέα και πριν το exit();

Ευχαριστώ.