一、mmap系统调用
void* mmap ( void * addr , size_tlen , int prot , int flags ,int fd , off_t offset )
内存映射函数mmap, 负责把文件内容映射到进程的虚拟内存空间, 通过对这段内存的读取和修改,来实现对文件的读取和修改,不需要再调用read,write等操作。

参数说明
1、addr:指定映射的起始地址, 通常设为NULL, 由系统指定。
2、length:映射到内存的文件长度。
3、prot:映射区的保护方式, 可以是:
PROT_EXEC: 映射区可被执行
PROT_READ: 映射区可被读取
PROT_WRITE: 映射区可被写入
4、flags: 映射区的特性, 可以是:
MAP_SHARED:
写入映射区的数据会复制回文件, 且允许其他映射该文件的进程共享。
MAP_PRIVATE:
对映射区的写入操作会产生一个映射区的复制(copy-on-write), 对此区域所做的修改不会写回原文件。
5、fd:
由open返回的文件描述符, 代表要映射的文件。
6、offset
以文件开始处的偏移量, 必须是分页大小的整数倍