mmap()
crée un nouveau mappage dans l'espace d'adressage virtuel du processus d'appel à partir de addr
et len
octets et munmap()
supprime les correspondances pour les pages entières contenant une partie de l'espace d'adressage du départ de processus au addr
et continuant pour len
octets.mmap() et munmap()
Je voudrais savoir si les fichiers mmap modifiés sont écrits sur le disque par le munmap avant de libérer la mémoire ou si nous devons appeler une fonction différente pour synchroniser la modification.
Sur quel système d'exploitation? Quels drapeaux passez-vous à 'mmap'? Que voulez-vous dire par "fichiers mmap" et "fichier munmap"? – Gilles
Système d'exploitation Unix. Les fichiers mmap désignent les données écrites dans la mémoire mappée. Si les données sont chargées dans la mémoire mappée, certaines modifications sont effectuées. Les paramètres fournis sont mmap ( NULL, size, readOnly? PROT_READ: PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0). – Pragya
Le problème avec votre question est que mmap est une fonction de tous les métiers. Le comportement dépend de la façon dont vous l'avez réellement fait. Vous devriez être plus précis quant aux paramètres que vous utilisez dans votre appel. – user3344003