假设有一个大文件。mmap
函数无法完全处理它。但是我们需要尽可能多地读取此文件的大部分内容。
我发现 Unix 中的这个命令允许我们找到mmap
大小:
sysctl vm.max_map_count
输出为 :vm.max_map_count = 65530
。
但是,它在 C 程序中不起作用。如何在C程序中查找map函数的大小?
mmappings的大小没有限制(除了size_t
中的位(,因为内核永远不需要一次将整个东西加载到内存中。 mmap()
是读取大于内存的文件的首选方法:只需映射文件,让内核担心其余的......