Je pense (à vérifier) que les threads peuvent tout à fait
protéger l'accès à 'un bout de mémoire' avec
l'appel système [POSIX de surcroît]:
int mprotect(const void *addr, size_t *len, int prot);
Donc si plusieurs threads veulent se protéger des autres alors
mprotect e READ-ONLY de ce qui doit l'être.
Ce qui est largement similaire à un shmget/shmat avec READ-ONLY.
y' a des restriction sur la taille et l'alignement des zones
'mprotect-able' justement car c'est le HW (MMU) qui assure la protection.
[^] # Re: vs POSIX shared memory, read-only
Posté par NOULARD Eric . En réponse à la dépêche PTT : un outil de trace pour la NPTL. Évalué à 1.
protéger l'accès à 'un bout de mémoire' avec
l'appel système [POSIX de surcroît]:
int mprotect(const void *addr, size_t *len, int prot);
Donc si plusieurs threads veulent se protéger des autres alors
mprotect e READ-ONLY de ce qui doit l'être.
Ce qui est largement similaire à un shmget/shmat avec READ-ONLY.
y' a des restriction sur la taille et l'alignement des zones
'mprotect-able' justement car c'est le HW (MMU) qui assure la protection.