我正在使用低级I/O函数'write'在我的代码中将一些数据写入磁盘(Linux上的C语言).首先,我将数据累积在内存缓冲区中,然后在缓冲区已满时使用"write"将数据写入磁盘.那么'write'的最佳缓冲区大小是多少?根据我的测试,它不是越大越快,所以我在这里寻找答案.
在我的函数中,我需要将文件中的一些数据读入缓冲区,操作数据并将其写回另一个文件.该文件大小未知,可能非常大.
如果我使用一个小缓冲区,将会有一个很长的读/写周期,这将花费很多时间.相反,长缓冲区意味着我需要消耗更多内存.我应该使用的最佳缓冲区大小是多少?这种情况是依赖的吗?
我在Windows中看到了一些像Tera copy这样的应用程序,可以高效地管理大量文件.我应该注意其他任何技术或机制吗?
注意:此程序将在Windows下运行.