Je parcourais la documentation concernant MMAP ici et j'ai essayé de l'implémenter en utilisant ce
J'ai quelques doutes quant à sa mise en œuvre.
MMAP fournit-il un mappage d'un fichier et retourne un pointeur de cet emplacement dans la mémoire physique ou renvoie-t-il une adresse de la table de mappage? et est-ce qu'il alloue et verrouille également l'espace pour ce fichier?
Une fois que le fichier est stocké dans cet emplacement en mémoire, y reste-t-il jusqu'à ce que munmap soit appelé?
Le fichier est-il même déplacé vers la mémoire ou s'agit-il simplement d'une table de mappage qui sert de redirection et le fichier est en fait dans la mémoire virtuelle - (disque)?
En supposant qu'il soit déplacé en mémoire, d'autres processus peuvent-ils accéder à cet espace pour lire des données s'ils ont une adresse?
mmap
, mais vous utilisez ceRéponses:
Répondre aux choses dans l'ordre:
MAP_SHARED
indicateur.Il convient de noter que mmap () ne fonctionne pas uniquement sur les fichiers, vous pouvez également faire d'autres choses avec, comme:
la source