c中mmap函数中可接受数据的最大大小是多少? [重复]

问题描述 投票:1回答:1

这个问题在这里已有答案:

我们假设有一个大文件。 mmap函数无法完全处理它。但我们需要尽可能读取此文件的大部分内容。

我发现Unix中的这个命令允许我们找到mmap大小:

sysctl vm.max_map_count

输出是:vm.max_map_count = 65530

但是,它在C程序中不起作用。如何在C程序中找到map函数的大小?

c linux unix memory-management mmap
1个回答
0
投票

mmappings的大小没有限制(除了size_t中的位),因为内核永远不需要一次将整个内容加载到内存中。 mmap()是读取大于内存的文件的首选方法:只需映射文件,让内核担心其余的...

© www.soinside.com 2019 - 2024. All rights reserved.