mmap一个10 GB的文件并将其加载到内存中
mmap a 10 GB file and load it into memory
如果我想mmap
一个10 GB的文件并立即将整个文件加载到物理内存中,我该怎么做
我不想使用像mlock
这样的函数,因为它需要root权限
有系统调用可以满足我的需求吗?
(我有足够的内存。)
阅读mmap
:的手册页
MAP_POPULATE(自Linux 2.5.46起)
为映射填充(预生成)页面表。对于文件映射,这会导致对文件进行预读。以后的访问到映射将不会被页面错误阻止。
MAP_POPULATE
仅支持私有映射,因为Linux 2.6.23
发出您的请求,并做好短暂等待的准备(除非您超过了进程限制)(取决于磁盘带宽和缓存)。
相关文章:
- 原子加载和存储与内存顺序放宽
- 如何从内存缓冲区加载张量流图
- 我在 IDA 或 dbg 或 olly 上看到的内存是否与我在 RAM 上实时加载的内存相同?
- 从C/C++(Win64)中的内存加载64位DLL
- 对外部函数的调用是否强制从内存加载
- 将使用 4 或 8 个对齐规则将加载处理到内存中
- C++:类如何将自身加载到内存中以递增全局变量?
- 加载字节数组(从内存)到libpng c
- 将内存保存到文件并加载它而不必解析数据?
- 加载时间,遍历时间,不同数据段C/C 的内存使用率
- 急切地加载整个模型以估计张量流的内存消耗
- 延迟加载的 DLL 在内存中彼此相距太远
- 使用 DX11 加载 2D 纹理时内存泄漏
- 如何在单独的线程上加载纹理到主内存并使用它在另一个线程上渲染
- 使用C++原子库,我应该使用什么样的内存顺序进行加载,然后进行比较交换
- 当某些错误可以接受时,顺序加载存储原子的内存顺序应该是什么
- 从内存而不是URL动态加载QML
- sqlite3数据库加载到内存c++并选择perfomance
- 从Magick++图像中加载内存(libharu)中的图像
- 无法从eclipse(C++/CDT)中指定的地址加载内存