• [^] # Re: quelques pistes ...

    Posté par . En réponse au message difference entre mmap() et read(). Évalué à 2.

    De mémoire, mmap() peut aussi être utilisé pour de la communication interprocess...

    read aussi, vu que les sockets AF_UNIX sont des mécanismes d'IPC.

    Bon, j'avoue, cette remarque est un prétexte pour te poser d'autres questions:

    linux tourne sur du hard embarqué avec parfois très peu de RAM: dans ce contexte, mapper l'intégralité d'un fichier en mémoire est parfois impossible.

    Donc, mmap serait moins efficace dans ces cas que read? Cela n'impliquerait-il pas d'avoir une configuration pour read adéquate?
    Je suis réellement curieux, étant à la croisée entre de vieux souvenirs de cours, ma démerde pendant une décennie, et un taf qui me demande maintenant de faire de l'IPC...

    Pour ajouter de l'eau à ton moulin, dans ton sens, si tu mappes une zone mémoire entre deux processus, il va aussi te falloir gérer les accès concurrentiels, et du coup, utiliser un socket est nettement plus simple (c'est, en gros, un pipe), mais sera effectivement plus lourd qu'un mémoire partagée entre 2 processus.