mmap修改后的流程图
2015-08-05 10:27:20 11 举报
流程图描述: 1. 首先,程序通过mmap()函数请求内核将指定文件的一段内存映射到进程的地址空间。 2. 内核为这段内存分配物理页框,并建立虚拟地址和物理地址之间的映射关系。 3. 当进程需要访问这段内存时,直接使用虚拟地址即可,无需再进行文件I/O操作。 4. 如果进程对这段内存进行了修改,内核会将这些修改写回到对应的文件页中。 5. 当进程不再需要这段内存时,可以通过munmap()函数请求内核解除映射关系,并将修改后的页面写回到文件中。
作者其他创作
大纲/内容
调用walloc函数,选择适当位置建立window,返回其地址
建立新的dspace,并把传入的dspace的内容拷贝至其中
调用data_datamap函数,建立dspace与window的映射关系
无需建立新的dspace,下一步直接使用通过参数传入的dspace
是
进程中,通过data_open请求procserv开启一个dspace,返回其cap
开始
mmap返回window的地址vaddr
是否进行私有映射?
否
直接调用pro_create_mem_window在指定位置建立新的window
调用mmap函数,传入上一步中的cap作为参数
结束
是否要求映射到指定位置?
0 条评论
下一页