[Kos-dev] Sémaphore
David Decotigny
david.decotigny at free.fr
Mon Feb 14 17:59:40 CET 2005
Bonjour,
Cyril Dupuit wrote:
> Lors de la destruction de ce processus, tous les sémaphores seront
> détruits.
En general, dans un noyau un semaphore sert a /proteger/ une ressource
globale a tout le systeme (fichier, interface serie, ...). Dans ce cas,
un semaphore a donc une portée "systemwide" puisque la ressource est
globale, il n'est pas lié à un processus particulier. Donc si on
supprime le sémaphore quand le processus qui l'a créé se termine, ça
revient à dire : "une fois le processus terminé, la ressource n'est plus
protégée". Et ça, ça n'est valable que si la ressource en question est
propre au processus qui l'a créée, c'est-à-dire si elle disparaît du
système en même temps que le processus. Sinon c'est dangereux.
Bref, AMHA, cette technique se tient tout à fait pour les semaphores
utilisateur (style IPC System V [semget() & cie]) mais est très
dangereuse pour toutes les autres ressources globales au système.
Bonne journee,
--
David Decotigny -- http://david.decotigny.free.fr
More information about the Kos-dev
mailing list