美文网首页
内存映射文件

内存映射文件

作者: 7bfedbe4863a | 来源:发表于2018-05-11 20:50 被阅读0次
创建内存映射文件 CreateFileMapping
  • 将上述真正存在的文件(物理文件) hFile映射成为一个虚拟的映射文件 hMap ,即将物理文件与虚拟文件绑定
HANDLE CreateFileMapping(
  HANDLE hFile,                       //物理文件句柄
  LPSECURITY_ATTRIBUTES lpAttributes, //安全属性
  DWORD flProtect,                    //保护设置
  DWORD dwMaximumSizeHigh,            //高位文件大小
  DWORD dwMaximumSizeLow,             //低位文件大小
  LPCTSTR lpName                      //共享内存名称
);
  • 示例
   HANDLE hMap = CreateFileMapping( hFile, NULL, PAGE_READWRITE, 0,1024*1024,TEXT("ZJ"));
  • 参数解释(之后补)
加载内存映射文件 MapViewOfFile :映射成内存地址
  • 将虚拟文件映射成内存地址,方便使用。即将文件与内存绑定,以后操作该内存其实就是操作该文件。
  • 原型
MapViewOfFile(
    __in HANDLE hFileMappingObject,  //共享文件对象
    __in DWORD dwDesiredAccess,   //文件共享属性
    __in DWORD dwFileOffsetHigh,  //文件共享区的偏移地址
    __in DWORD dwFileOffsetLow,  //文件共享区的偏移地址
    __in SIZE_T dwNumberOfBytesToMap  //共享数据长度
    );
  • 示例
    CHAR* pszText=NULL; //一个指针,不需要分配空间
    pszText = (CHAR*)MapViewOfFile(hMap,FILE_MAP_ALL_ACCESS,0,0,1024*1024); //通过映射后,该指针就指向该文件。
  • 参数解释:(之后补)
卸载映射 UnmapViewOfFile
  • 停止当前程序的一个内存映射。
  • 原型
BOOL WINAPI UnmapViewOfFile(_In_LPCVOID lpBaseAddress);
  • 示例
UnmapViewOfFile((LPCVOID)pszText);

相关文章

  • 25用户态内存映射

    mmap 将虚拟地址空间映射到物理内存 匿名映射,即虚拟内存和物理内存直接映射文件映射,将文件映射到虚拟内存ima...

  • mmap 一定比普通读写快吗?

    原理 : 文件磁盘地址映射到内存中 ,是文件地址映射。不是文件内容映射。通过缺页中断将文件内容加载到内存中。缺页中...

  • Eclipse下以Jetty运行时锁定文件解决办法

    原因是Jetty会使用内存映射文件来缓存静态文件,其中包括js、css文件。在Windows下面,使用内存映射文件...

  • java nio学习笔记(2)之内存映射文件

    概念 内存映射文件是将文件(部分)内容映射到内存中,读写操作都在内存中完成,最后再写回文件 示例 该程序是将文件整...

  • APP优化 —— MMAP内存映射

    mmap 一种内存映射文件的方法 mmap将一个文件或者其它对象映射进内存。文件被映射到多个页上,如果文件的大小不...

  • mmap原理

    即memory map(内存映射)。内存映射减少了文件从内核空间copy到用户空间,但是增加了文件映射到用户空间的...

  • 内存映射文件

    在同一个可执行或者DLL的多个实例间共享静态数据 默认情况下,同一个exe或DLL的多个实例不会共享全局或静态数据...

  • 内存映射文件

    创建内存映射文件 CreateFileMapping 将上述真正存在的文件(物理文件) hFile映射成为一个虚拟...

  • 内存映射文件

    传统的文件i/o是通过用户进程发布read()和write()系统调用来传输数据的。为了在内核空间与系统空间之间移...

  • MongoDB如何存储数据

    Memeory-Mapped Files 内存映射文件是OS通过mmap在内存中创建一个数据文件,这样就把文件映射...

网友评论

      本文标题:内存映射文件

      本文链接:https://www.haomeiwen.com/subject/edeqdftx.html