Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

POSIX C Discussion :

mmap et munmap


Sujet :

POSIX C

  1. #1
    Membre du Club
    mmap et munmap
    Bonjour,

    j'ai besoin de charger rapidement un fichier en mémoire et j'ai donc testé différentes solutions. J'en ai donc été amené à comparer fread et mmap. La deuxième est vraiment beaucoup plus rapide. Par contre, au moment de libérer la zone mappée avec unmap, je me suis rendu compte que le gain opéré par mmap sur fread est complètement perdu lorsqu'on appelle munmap.

    La doc précise que la zone mémoire est libérée à la mort du processus, qu'on appelle munmap ou pas. Dans le cas ou j'aurai de nombreux gros fichiers à lire sur le même processus, que peut-il arriver si je n'appelle pas munmap au fur et à mesure ?

    Serait-ce un problème de pagination ? Autre chose ?

    Merci d'avance.

  2. #2
    Modérateur

    La doc précise que la zone mémoire est libérée à la mort du processus
    Comment toute la mémoire allouée à un processus quand il se termine, non ?

    Dans le cas ou j'aurai de nombreux gros fichiers à lire sur le même processus, que peut-il arriver si je n'appelle pas munmap au fur et à mesure ?
    Tu risques de manquer de mémoire...

    Serait-ce un problème de pagination ? Autre chose ?
    N'ayant jamais utilisé ces fonctions (mmap et munmap), je ne pourrai pas te conseiller plus...