Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Operating system 重命名是如何工作的?_Operating System - Fatal编程技术网

Operating system 重命名是如何工作的?

Operating system 重命名是如何工作的?,operating-system,Operating System,我不知道这是否愚蠢。但是,重命名是如何工作的呢。喜欢假设我重命名一个100gb文件。我可以重命名它,甚至不需要一毫秒(好吧,也许需要)。但是,它怎么能做得这么快呢。它背后的逻辑是什么?将其视为IPv4数据包。它不会更改所有数据,只更改标题。这和我想的很相似。对于NTFS文件系统,有一个名为MFT(主文件表)的表非常重要,它描述了文件系统中存储的所有数据,如文件名,时间戳等。它只更新链接到您的文件的文件名区域,您无需等待数小时。以下答案提供了一些关于文件名存储方式的良好见解和参考。重命名操作基本上

我不知道这是否愚蠢。但是,重命名是如何工作的呢。喜欢假设我重命名一个
100gb
文件。我可以重命名它,甚至不需要一毫秒(好吧,也许需要)。但是,它怎么能做得这么快呢。它背后的逻辑是什么?

将其视为IPv4数据包。它不会更改所有数据,只更改标题。这和我想的很相似。对于NTFS文件系统,有一个名为MFT(主文件表)的表非常重要,它描述了文件系统中存储的所有数据,如文件名,时间戳等。它只更新链接到您的文件的文件名区域,您无需等待数小时。

以下答案提供了一些关于文件名存储方式的良好见解和参考。重命名操作基本上是对主文件表的简单更改,这就是它不依赖于文件大小的原因。希望有帮助

实际进程取决于所使用的文件系统。在大多数系统上,重命名通常非常快(除非存在锁定问题)

起点是您所关心的目录。它将包含它包含的文件的名称。必须在那里更新名称

某些文件系统还将文件名存储在文件系统的文件表中。当目录损坏时,此文件名用于恢复。如果出现问题,您会丢失文件在目录结构中的位置,但会保留文件本身和文件名。在这样的文件系统中,名称也必须在那里更新

重命名文件所需的时间长度与文件大小完全无关