Mmap
Dans le calculant , le mmap est un POSIX - l'appel système conforme de d'Unix qui trace des dossiers ou des dispositifs dans la mémoire. C'est une méthode d'entrée-sortie du dossier Mémoire-tracée par . Il met en application naturellement la pagination sur demande , parce qu'au commencement le contenu de dossier est le pas entièrement lu à partir du disque et n'emploie pas le RAM physique du tout. Le réel lit à partir du disque est exécuté dans le " ; lazy" ; la façon, après un endroit spécifique est accédée.
Dans le Linux , mmap peut créer plusieurs types de tracés.
Les tracés anonymes sont des tracés du RAM physique à la mémoire virtuelle virtuelleee . C'est semblable au Malloc de , et est employé dans des réalisations d'un certain malloc pour certaines attributions.
les tracés Dossier-soutenus sont des tracés des dossiers à la mémoire virtuelle virtuelleee. L'accès à ces secteurs de mémoire cause le dossier d'être changé. Si la cartographie est partagée, change en ce secteur dans un processus affectera d'autres processus avec ce secteur tracé dedans immédiatement ; autrement, les changements seront asynchrones, et les processus n'auront pas toujours à points de vue conformés de ce secteur (le segment du dossier tracé dedans est copié au RAM et périodiquement rincé au disque). les dossiers de mmaping peuvent de manière significative réduire des frais généraux de mémoire pour des applications accédant au même dossier. Si le dossier est mmaped les applications peuvent alors partager la zone de mémoire que le dossier entoure, au lieu de charger le dossier pour chaque application qui veut l'accès à lui.
De la mémoire partagée par mmap est maintenue évidente à travers une fourchette .
mmap est parfois employé pour la communication d'interprocessus (IPC) de . Sur les logiciels d'exploitation modernes mmap est en général preferred au service de la mémoire partagée du système V IPC de .
Les différences principales entre la mémoire partagée du système V (shmem) et la mémoire ont tracé l'entrée-sortie (mmap) :
dans la ressource de mémoire partagée de SystemV est persistant : à moins qu'explicitement enlevé par un processus, il est maintenu dans la mémoire et reste disponible jusqu'à ce que le système soit arrêté.
de la mémoire partagée mmap'ed n'est pas persistée entre les exécutions d'application.
Voir également
Mémoire virtuelle virtuelleee pour un contexte général de posséder plus adresses que la mémoire physique pagination de permutation de ou de pour l'exécution de la mémoire virtuelle virtuelleee utilisée dans les systèmes contemporains
Cachette , un mécanisme de page de de mise en antémémoire du disque utilisé par le mmap
Pagination sur demande un arrangement mis en application par le mmap
Références et davantage de lecture
Description de norme de POSIX
Différences :
FreeBSD
Linux
Solaris
HP-UX
ompu-prog-moignon
.
| Random links: | Roi : Un disque filmé… Montgomery vers Memphis | Théodore Steeg | Régions de la Lithuanie | L'année chrétienne | Mulondo, Lanao del Sur | Mmap |