malloc 将使用 mmap 如果这是有益的。
malloc
mmap
什么是好处 mmap 具有 MMAP_PRIVATE 标志和文件,而不是仅使用 malloc ?
MMAP_PRIVATE
对内存的访问是读/写的。
据我所知,唯一的好处是系统将内存交换到文件中,而不是系统交换文件。此文件可能在速度更快的磁盘等上。
有人可能决定以这种方式使用它的其他原因吗?
这实际上取决于应用程序。但是,一个应用程序可能正在映射共享内存段(文件),您希望对其进行本地修改,而不会影响同一共享内存的其他用户。幸亏 写入时复制 只有内存段中那些实际被更改的页面才需要被复制。