我想mmap
一些大文件,但失败:我不能mmap任何文件大于2.7 GB左右。我有足够的内存,但mmap保持失败,说不能分配内存
通过做ulimit -a
,它说我的虚拟内存是无限的。然后我做了cat /proc/meminfo
它说我的系统有3GB Memfree和2GB Swapfree。
我假设我可以mmap文件高达5GB。我尝试了我在互联网上学到的一切,包括使用MAP_NORESERVE
标志并将overcommit_memory
设置为1
。它仍然是一样的,Cannot allocate memory
。什么可能会出错?
我正在使用64位CPU和32位Linux系统。如果您需要更多信息,请告诉我。我真的很感激任何建议或提示。
I看到!我真的很感激你的快速反应! – tracy0325