Print this page
6607 add default MAP_FILE symbol to sys/mman.h
Reviewed by: Andy Stormont <astormont@racktopsystems.com>
Reviewed by: Robert Mustacchi <rm@joyent.com>


 121        MAP_ANON
 122                         Map anonymous memory.
 123 
 124 
 125        MAP_ALIGN
 126                         Interpret addr as required aligment.
 127 
 128 
 129        MAP_TEXT
 130                         Map text.
 131 
 132 
 133        MAP_INITDATA
 134                         Map initialized data segment.
 135 
 136 
 137        MAP_32BIT
 138                         Map to the lower 32 bits of address space.
 139 
 140 





 141 


 142        The MAP_SHARED and MAP_PRIVATE options describe the disposition of
 143        write references to the underlying object. If MAP_SHARED is specified,
 144        write references will change the memory object. If MAP_PRIVATE is
 145        specified, the initial write reference will create a private copy of
 146        the memory object page and redirect the mapping to the copy. The
 147        private copy is not created until the first write; until then, other
 148        users who have the object mapped MAP_SHARED can change the object.
 149        Either MAP_SHARED or MAP_PRIVATE must be specified, but not both. The
 150        mapping type is retained across fork(2).
 151 
 152 
 153        When MAP_FIXED is set in the flags argument, the system is informed
 154        that the value of pa must be addr, exactly. If MAP_FIXED is set, mmap()
 155        may return (void *)-1 and set errno to EINVAL.  If a MAP_FIXED request
 156        is successful, the mapping established by mmap() replaces any previous
 157        mappings for the process's pages in the range [pa, pa + len). The use
 158        of MAP_FIXED is discouraged, since it may prevent a system from making
 159        the most effective use of its resources.
 160 
 161 


 594 
 595 
 596 
 597 
 598        +--------------------+-------------------+
 599        |  ATTRIBUTE TYPE    |  ATTRIBUTE VALUE  |
 600        +--------------------+-------------------+
 601        |Interface Stability | Standard          |
 602        +--------------------+-------------------+
 603        |MT-Level            | Async-Signal-Safe |
 604        +--------------------+-------------------+
 605 
 606 SEE ALSO
 607        close(2), exec(2), fcntl(2), fork(2), getrlimit(2), memcntl(2),
 608        mmapobj(2), mprotect(2), munmap(2), shmat(2), lockf(3C), mlockall(3C),
 609        msync(3C), plock(3C), sysconf(3C), attributes(5), lf64(5),
 610        standards(5), null(7D), zero(7D)
 611 
 612 
 613 
 614                                  April 9, 2016                         MMAP(2)


 121        MAP_ANON
 122                         Map anonymous memory.
 123 
 124 
 125        MAP_ALIGN
 126                         Interpret addr as required aligment.
 127 
 128 
 129        MAP_TEXT
 130                         Map text.
 131 
 132 
 133        MAP_INITDATA
 134                         Map initialized data segment.
 135 
 136 
 137        MAP_32BIT
 138                         Map to the lower 32 bits of address space.
 139 
 140 
 141        MAP_FILE
 142                         Map a regular file. This is the default behavior;
 143                         specifying this flag is not required. It is provided
 144                         for compatibility with other systems and should not be
 145                         included in new code.
 146 
 147 
 148 
 149        The MAP_SHARED and MAP_PRIVATE options describe the disposition of
 150        write references to the underlying object. If MAP_SHARED is specified,
 151        write references will change the memory object. If MAP_PRIVATE is
 152        specified, the initial write reference will create a private copy of
 153        the memory object page and redirect the mapping to the copy. The
 154        private copy is not created until the first write; until then, other
 155        users who have the object mapped MAP_SHARED can change the object.
 156        Either MAP_SHARED or MAP_PRIVATE must be specified, but not both. The
 157        mapping type is retained across fork(2).
 158 
 159 
 160        When MAP_FIXED is set in the flags argument, the system is informed
 161        that the value of pa must be addr, exactly. If MAP_FIXED is set, mmap()
 162        may return (void *)-1 and set errno to EINVAL.  If a MAP_FIXED request
 163        is successful, the mapping established by mmap() replaces any previous
 164        mappings for the process's pages in the range [pa, pa + len). The use
 165        of MAP_FIXED is discouraged, since it may prevent a system from making
 166        the most effective use of its resources.
 167 
 168 


 601 
 602 
 603 
 604 
 605        +--------------------+-------------------+
 606        |  ATTRIBUTE TYPE    |  ATTRIBUTE VALUE  |
 607        +--------------------+-------------------+
 608        |Interface Stability | Standard          |
 609        +--------------------+-------------------+
 610        |MT-Level            | Async-Signal-Safe |
 611        +--------------------+-------------------+
 612 
 613 SEE ALSO
 614        close(2), exec(2), fcntl(2), fork(2), getrlimit(2), memcntl(2),
 615        mmapobj(2), mprotect(2), munmap(2), shmat(2), lockf(3C), mlockall(3C),
 616        msync(3C), plock(3C), sysconf(3C), attributes(5), lf64(5),
 617        standards(5), null(7D), zero(7D)
 618 
 619 
 620 
 621                                 August 29, 2016                        MMAP(2)