FTOK
Section: Manuel du programmeur Linux (3) Updated: 21 juillet 2003 Index
NOM
SYNOPSIS
DESCRIPTION
VALEUR RENVOYÉE
CONFORMITÉ
NOTES
VOIR AUSSI
TRADUCTION
NOM
ftok - Convertir un nom de fichier et un identificateur de projet en clé IPC système V.
SYNOPSIS
DESCRIPTION
La fonction
ftok
utilise l'identité du fichier indiqué par
pathname
(qui doit exister et être accessible), et les huit bits de poids faible de
proj
(qui doit être non nul) pour créer une clé IPC Système V de type
key_t,
utilisable avec
msgget(2),
semget(2),
ou
shmget(2).
La valeur résultante est la même pour tous les chemins d'accès identifiant
le même fichier, en utilisant une valeur identique pour
proj.
La valeur devrait être différente lorsque des fichiers différents (existants
simultanément), ou des identificateur de projet différents sont employés.
VALEUR RENVOYÉE
Si elle réussit, la fonction ftok renvoie la valeur de type
key_t
créée, sinon elle renvoie -1, et errno contient un code d'erreur parmi
ceux de l'appel-système
stat(2).
CONFORMITÉ
XPG4
NOTES
Avec les bibliothèques libc4 et libc5 (et également sous SunOS 4.x), le prototype
était
-
key_t ftok(char *pathname, char proj);
De nos jours
proj
est un
int,
mais seuls huit bits en sont utilisés. L'habitude veut qu'on utilise un caractère
ASCII comme identifiant
proj,
ce qui explique pourquoi le comportement est indéfini lorsque
proj
vaut zéro.
Naturellement aucune garantie ne peut être donné que la clé
key_t
résultante soit unique. En général on combine l'octet
proj,
les seize bits de poids faibles du numéro d'i-noeud, et les huit bits
de poids faibles du numéro de périphérique pour obtenir un entier sur 32 bits.
Des collisions peuvent se produire facilement
(car on n'utilise pas le numéro majeur de
périphérique), par exemple entre les fichiers se trouvant sur
/dev/hda1
et ceux sur
/dev/sda1.
VOIR AUSSI
TRADUCTION
Christophe Blaess, 1996-2003.
|