fuz*_*fuz 5 c posix freebsd mmap address-space
我有一组文件,其长度都是我操作系统(FreeBSD 10)页面大小的倍数.我想将mmap()这些文件连接到RAM的连续页面,这使我能够将一组文件视为一个大型数据.
最好使用便携式功能,如何找到一个足够大的未映射地址空间区域,这样我才能确定mmap()对该区域的一系列调用是否会成功?
跟着这些步骤:
mmap.如果失败了,你输了.unmap区域(实际上,unmap如果mmap具有固定地址的系统隐式取消映射任何先前的重叠区域,则可能不需要).MAP_FIXED标志映射此地址的第一个文件.这应该可以完全移植到任何POSIX系统,但是某些操作系统可能会有一些阻止这种方法的怪癖.试试吧.