|
In computing, mmap() is a POSIX-compliant Unix system call that maps files or devices into memory. It is a kind of memory-mapped I/O. Originally, the word computing was synonymous with counting and calculating, and a science that deals with the original sense of computing mathematical calculations. ...
POSIX is the collective name of a family of related standards specified by the IEEE to define the application program interface for software designed to run on variants of the Unix OS. They are formally designated as IEEE 1003 and the international standard name is ISO/IEC 9945. ...
It has been suggested that this article or section be merged with Unix-like. ...
In computing, a system call, or software interrupt is the mechanism used by an application program to request service from the operating system. ...
Memory-mapped O/I (MMIO) and port O/I (also called port-mapped O/I or PMIO) are two complementary methods of performing input/output between the CPU and O/I devices in a computer. ...
In Linux, mmap() can create several types of mappings. This article is about Linux-based operating systems, GNU/Linux, and related topics. ...
Anonymous mappings are mappings of physical RAM to virtual RAM. This is similar to malloc(), and is used in some malloc() implementations for certain allocations. Random access memory (sometimes random-access memory), commonly known by its acronym RAM, is a type of computer storage whose contents can be accessed in any (i. ...
Virtual memory is intended to help the programmer by taking care of some memory housekeeping duties. ...
malloc is a function for performing dynamic memory allocation in the C programming language. ...
File backed mappings are mappings of files to virtual RAM. Access to those areas of RAM causes the file to be changed. Usually, the segment of the file mapped in is copied to RAM and periodically flushed to disk. If the mapping is shared, changes to that area in one process will affect other processes with that area mapped in immediately; otherwise, the changes will be asynchronous, and processes will not always have consistent views of that area. mmapping files can significantly reduce memory overhead for applications accessing the same file. If the file is mmapped the applications can then share the memory area the file encompassess, instead of loading the file for each application that wants access to it. mmaped memory is kept visible across a fork. The title given to this article is incorrect due to technical limitations. ...
mmap is sometimes used for Interprocess Communication (IPC). On modern operating systems mmap is typically preferred to the System V IPC shared memory facility. Inter-process communication (IPC) is the exchange of data between one process and another, either within the same computer or over a network. ...
In computing, an operating system (OS) is the system software responsible for the direct control and management of hardware and basic system operations. ...
AT&T UNIX System V was one of the versions of the UNIX operating system. ...
References and further reading
|