cam*_*ccc 54 c mmap
我有一个程序可以映射相当多的(100个)大小的文件,每个文件10-100MB.我需要它们全部同时映射.
目前我打电话open,然后mmap在程序,随后开始munmap和close结尾.
open
mmap
munmap
close
通常我必须ulimit -n在运行程序之前调整打开的文件限制.
ulimit -n
问题是我实际上需要保持文件打开,或者我可以在完成后open mmap close进行一些大数据处理munmap.
的手册页mmap似乎并不非常清楚,我在这一个.
unw*_*ind 60
不,至少在Linux上不能关闭文件.
手册页明确指出:
另一方面,关闭文件描述符不会取消映射该区域.
为了便于携带,我还检查了POSIX手册,它说同样的事情(虽然更清楚):
的MMAP()函数增加了一个额外参考与文件描述符相关联的文件法尔兹未通过随后除去靠近()在该文件上描述符.当没有更多映射到文件时,将删除此引用.
归档时间:
12 年,3 月 前
查看次数:
12265 次
最近记录:
7 年,5 月 前