内存映射文件
来源:互联网 发布:网络军事节目排行榜 编辑:程序博客网 时间:2024/06/07 03:53
1 什么是内存映射?
内存映射文件是由一个文件到一块内存的映射。使用内存映射文件处理存储于磁盘上的文件时,将不必再对文件执行I/O操作,使得内存映射文件在处理大数据量的文件时能起到相当重要的作用。
2 内存映射实现方法
2.1 linux提供的两个内存映射函数是:
mmap()和munmap()
void *mmap(void *addr, size_t len, int prot, int flags, int fd, off_t offset);
int munmap(void *start, size_t length);
2.2 windows提供的内存映射函数:
HANDLE CreateFileMapping(HANDLE hFile,LPSECURITY_ATTRIBUTES lpFileMappingAttributes,DWORD flProtect,DWORD dwMaximumSizeHigh,DWORD dwMaximumSizeLow,LPCTSTR lpName);
由于内存映射文件的物理存储器实际是存储于磁盘上的一个文件,而不是从系统的页文件中分配的内存,所以系统不会主动为其保留地址空间区域,也不会自动将文件的存储空间映射到该区域。DWORD型的参数dwMaximumSizeHigh和dwMaximumSizeLow也是相当重要的,指定了文件的最大字节数,由于这两个参数共64位,因此所支持的最大文件长度为16EB,几乎可以满足任何大数据量文件处理场合的要求。
3 内存映射文件的最大大小是多少?
映射文件的大小和用户的地址空间没有直接的联系,从使用上说,可以支持无限大。
- 内存映射:内存映射文件
- 内存映射:内存映射文件
- 内存映射文件
- 内存映射文件 续
- 内存映射文件 尾
- 内存映射文件
- 使用内存映射文件
- 内存映射文件
- 内存映射文件
- 内存映射文件技术
- 内存映射文件
- 内存映射文件
- 内存映射文件
- 内存映射文件
- 使用内存映射文件
- 内存映射文件技术
- 内存映射文件
- 内存映射文件
- 常用正则表达式
- VS C++ 项目怎样添加“依赖”、“库目录”和“包含目录”
- 点击文本框显示模式框,在模式框选中单选值,显示在文本框中
- Myeclipse的各种错误解析
- S3C2416 Linux2.6.21 驱动移植--添加UART3 及波特率设置bug消除
- 内存映射文件
- 国外大学课程资源
- 正则表达式到底是什么东西??
- vc将资源文件写到磁盘
- [知识分享] LINQ TO SQL 实现无限递归查询
- WIN7虚拟无线路由
- 为zenoss服务器部署ldap环境
- visual studio 2010 ..\vc\bin\rcdll.dll 无法找到资源编译器DLL
- Linux FTP命令详解及使用技巧