[Kos-dev] IPC sous Unix... et pour KOS
d2
kos-dev@enix.org
17 May 2001 14:51:37 +0200
>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@ifrance.com> writes:
Thomas> que se passe-t-il si deux programmes du systeme, creant
Thomas> des segments de memoire partagee utilisent la meme cle ?
La clef seule ne suffit pas : la taille complete cette idenfication du
shm. Ensuite, les droits d'acces jouent egalement.
Mais il est vrai que rien n'empeche un meme utilisateur d'avoir 2
programmes independants qui n'ont rien a voir d'utiliser la meme clef
pour identifier 1 segment avec la meme taille : on se retrouve alors
mal en point, puisqu'on partage le meme segment, alors qu'on ne
devrait pas.
Thomas> etant donnee que la cle doit etre fixe dans le programme
Thomas> pour qu'il y retrouve ses petits, comment ca se passe si
Thomas> un programme X partage une region de cle 1234 entre tous
Thomas> ses processus, puis un programme Y (qui n'a rien a voir
Thomas> avec le programme X) a fixe la cle a 1234 ?
Si la longueur du segment est identique des 2 cotes, et si les droits
du 1er shmget le permettent, alors il n'y aura pas d'erreur, et les 2
programmes partageront (malheureusement) la meme zone. D'ou probleme.
Thomas> PS : j'ai envoye plusieurs messages depuis quelques jours,
Thomas> et je n'ai recu aucune reponse, tout le monde dort ? :))
J'ai des circonstances attenuantes. Puis il va falloir que je me
rafraichisse la memoire avec les sources avant de te repondre.
Bonne journee,
--
d2