Provided by: manpages-nl_20051127-4_all
 

NAAM

        mmap,  munmap  -  leg-uit  of  de-leg-uit bestanden of  aparaten in het
        werkgeheugen
 

OVERZICHT

        #include <unistd.h>
        #include <sys/mman.h>
 
        caddr_t mmap(void *start, size_t lengte, int prot ,  int  vlaggen,  int
        bi, off_t positie);
 
        int munmap(void *start, size_t lengte);
 

BESCHRIJVING

        De  mmap  functie vraagt om lengte bytes uit te leggen vanaf positie in
        het bestand (of ander object) opgegeven door bi  in  het  werkgeheugen,
        bij  voorkeur  op adres start.  Dit laatste adres is alleen een wenk en
        wordt gewoonlijk opgegeven als 0.  De daadwerkelijke  plaats  waar  het
        object  uit gelegd wordt, wordt teruggegeven door mmap.  Het prot argu‐
        ment beschrijft de verlangde geheugen bescherming. Het heeft de bits
 
        PROT_EXEC  {bescherm voer-uit} Pagina’s mogen uitgevoerd worden.
 
        PROT_READ  {bescherm lees} Pagina’s mogen gelezen worden.
 
        PROT_WRITE {bescherm schrijf} Pagina’s mogen geschreven worden.
 
        PROT_NONE  {bescherm niks} Pagina’s zijn niet toegankelijk.
 
        De vlaggen grootheid  geeft  het  soort  uit-gelegd  voorwerp,  uit-leg
        keuzes  en  of  gemaakte  aanpassingen op de geïnterpreteerde kopieerde
        pagina persoonlijk voor het proces zijn of dat ze  gedeeld  worden  met
        andere verwijzingen. Het heeft bits
 
        MAP_FIXED  {kaart   vast}   Kies   geen   verschillend  adres  dan  het
                   opgegevene.  Als het opgegeven adres niet gebruikt kan  wor‐
                   den zal mmap falen. Als MAP_FIXED wordt opgegeven moet start
                   een meervoud van de paginagrootte  zijn.  Gebruik  van  deze
                   keuze wordt ontmoedigd.
 
        MAP_SHARED {kaart  gedeeld}  Deel deze uit-legging met alle andere pro‐
                   cessen die dit voorwerp uit-leggen.
 
        MAP_PRIVATE
                   {kaart persoonlijk} Maak  een  persoonlijke  kopieëring-bij-
                   schrijven {"copy-on-write"} uit-legging.
 
        Je moet precies één van MAP_SHARED of MAP_PRIVATE opgeven.
 
        De  bovenstaande  drie  vlaggen  worden  beschreven in POSIX.1b (eerder
        POSIX.4).   Linux  kent  ook  MAP_DENYWRITE  {kaart  weiger   schrijf},
        MAP_EXECUTABLE {kaart uitvoerbare} en MAP_ANON(YMOUS) {kaart anoniem}
 
        De  mmap  {geheugen de-uit-leg} systeem aanroep schrapt de uitleggingen
        voor het opgegeven adres interval, en veroorzaakt  dat  verdere  verwi‐
        jzingen naar adressen binnen het interval een ongeldige geheugen verwi‐
        jzing geven.
        Bij success geeft mmap een pointer naar  een  uit-gelegd  gebied.   Bij
        falen  wordt  -1  teruggegeven  en errno wordt naar behoren gezet.  Bij
        success geeft  mmap  0  terug,  bij  falen  -1  en  errno  wordt  gezet
        (waarschijnlijk naar EINVAL).
 

FOUTEN

        EBADF  {slechte  bi} bi is geen geldige bestandindicator (en MAP_ANONY‐
               MOUS was niet gezet).
 
        EACCES {toegang} MAP_PRIVATE {kaart persoonlijk} werd gevraagd, maar bi
               is  niet  open  voor  lezen.  Of  MAP_SHARED  werd  gevraagd  en
               PROT_WRITE is gezet, bi is niet open voor schrijven.
 
        EINVAL {ongeldig} We houden  niet  van  start  of  lengte  of  positie.
               (o.a., ze zijn te groot of niet opgelijnd met een PAGESIZE {pag‐
               ina grootte} grens.
 
        ETXTBUSY
               {text bezig} MAP_DENYWRITE {kaart  weiger  schrijf}  werd  gezet
               maar het voorwerp opgegeven door bi is open voor schrijven.
 
        EAGAIN {opnieuw}  Het  bestand  was  vergrendelt of teveel geheugen was
               vergrendelt.
 
        ENOMEM {geen geheugen} Geen geheugen is beschikbaar.
        SVr4, POSIX.1b (eerder POSIX.4), 4.4BSD.  Svr4  beschrijft  aanvullende
        fout codes ENXIO en ENODEV.
        getpagesize(2)  {krijg  pagina  maat}, msync(2) {geheugen harmonizeer},
        shm_open(2) {?}, B.O. Gallmeister, POSIX.4, O’Reilly, pag.  128-129  en
        389-391.
 

VERTALING

        Dit  is  een  handleiding  uit  manpages-dev  1.29.   Alles  wat tussen
        ‘{’..‘}’ staat is aanvullende vertaling, en hoort niet bij de originele
        handleiding.  Email naar <manpages-nl@nl.linux.org>.
 
        $Id: mmap.2,v 1.2 2005/01/31 09:44:37 wouter Exp $