memory map 存储映射
时间: 2023-08-07 14:02:46 浏览: 50
存储映射(Memory Map)是一种将文件或设备的内容映射到进程的地址空间中的技术。通过存储映射,进程可以直接访问文件或设备的内容,而无需进行繁琐的读写操作。存储映射可以提高访问速度,并且可以实现多个进程之间的共享访问。
存储映射有两种主要的用途:文件内存映射和共享内存。
文件内存映射是将一个文件映射到进程的地址空间中,使得进程可以像访问内存一样访问文件的内容。通过使用mmap系统调用,可以将一个文件映射到内存中,并通过指针来访问文件的内容。这种方式可以提高文件的读写速度,并且可以方便地进行随机访问。
共享内存是一种最快的进程间通信方式,它允许多个进程共享同一块内存区域。在共享内存中,多个进程可以同时访问同一块内存,实现数据的共享。共享内存可以使用不同的接口,如Posix接口和System V接口。通过使用shm_open()和mmap()函数,可以创建和访问共享内存区域。
总结来说,存储映射是一种将文件或设备的内容映射到进程的地址空间中的技术。文件内存映射可以提高文件的读写速度,而共享内存可以实现多个进程之间的数据共享。
#### 引用[.reference_title]
- *1* *2* [linux下共享内存sharedMemory(shm)和内存映射memorymap的关系](https://blog.csdn.net/jinking01/article/details/120274820)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [Memory Map(Linux 存储映射IO)](https://blog.csdn.net/a931040/article/details/51955693)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]