文件A在目录中有10000个文件,文件B在目录中有10个文件,会读/写比文件B慢的文件A? 会受到不同日志文件系统的影响吗?
没有。
浏览目录并打开一个文件会比较慢(无论这个在实践中是否显着取决于文件系统)。 输入/输出文件是完全一样的。
编辑:
为了澄清,目录中的“文件”并不是真正的文件,而是一个链接 (“硬链接”,而不是符号链接),它只是一种带有一些元数据的名称, d考虑“文件”。 这也是为什么通过unlink
syscall删除文件的历史原因,而不是通过假设的deletefile
调用。 unlink
将删除链接,如果这是最后一个链接(但只有那么!),该文件。
一个文件在不同目录中有一百个链接是完全合法的,打开一个文件然后将它移动到另一个地方甚至取消链接(当它保持打开状态!)是完全合法的。 它不会以任何方式影响您在文件描述符上的读/写能力,即使文件(据您所知)甚至不再存在。
一般情况下,一旦打开了一个文件并且有一个文件的句柄,那么不论其他文件在同一个目录中,访问该文件的性能都是一样的。 您可能能够检测到打开文件所花费的时间差异,因为操作系统将不得不搜索目录中的文件名。
日志旨在减少文件系统崩溃的恢复时间,恕我直言,它不会影响文件的读写速度。 日记ext2