NTFS和FAT文件系统中的尺寸限制
2007-05-07 12:23:08 来源:WEB开发网一、MFT 记录中文件属性的部分
二、该文件的目录项中。目录项存储在包含该文件的文件夹中,包含多个物理连接的文件(译者理解:文件在空间上的物理存储是不一定连续的,可能有多个物理片段,每个片段称为一个“连接”)也就有多个目录项。
磁盘上已经存在的 LAT 并不总是最新的,这是由于 NTFS 每隔一个小时才将在内存中打开的文件的该属性保存一次。在用户或应用程序对文件进行只读操作的时候,NTFS 也会延后“最后访问时间”属性的写入,比如在列文件夹目录或者读取(但不是更改)文件夹中的一个文件的时候。如果对于“读”操作, LAT 属性也要保持最新的话,所有的“读”操作就变成了“写”操作,这对 NTFS 的性能是影响很大的。
注
基于文件属性的 LAT ,即使它的所有在当前存储于磁盘上的值完全不正确,也无关紧要。NTFS 会随时将磁盘上的可疑属性值用内存中存储的精确值来替换。
NTFS 最终会在下列位置,将内存中的LAT 存储到磁盘上。
在文件的属性中
如果当前内存中的 LAT 和上次保存在硬盘上的 LAT 有一个小时的时差,或者内存中对该文件的所有进程都结束的时候,NTFS就会对该文件的 LAT 属性进行更新。例如,如果当前一个文件的 LAT 是 1:00 P.M.,而你在 1:30 P.M. 又读取了该文件,NTFS 不会更新该 LAT。而如果你又在 2:00 P.M. 的时候再次读取该文件,NTFS 会把该文件的 LAT 属性更新到 2:00 P.M.,因为此时该文件的 LAT 存储属性为 1:00 P.M. 而内存中的属性为 2:00 P.M.。
在文件的目录项中
在下列事件发生时,NTFS 更新目录项:
当 NTFS 更新文件的 LAT 的时候,检测到该文件的 LAT 比在目录项中存储的 LAT 差别在一个小时以上的时候。这种更新最为典型地发生在当某个应用程序关闭在文件夹中用于访问该文件的句柄的时候。如果该程序延长该文件句柄的打开时间,就会在更新目录项的时候出现迟滞。
当 NTFS 更新其它的文件属性比如“最近更改时间”(LMT),而 LAT 的更新未决的时候。在这种情况下,NTFS 会在不影响系统性能的前提下,随其它属性的更新而更新 LAT。
注
NTFS 不会在内存中对某文件调用的所有进程都结束的时候更新该文件的目录项。
如果有某个 NTFS 卷,包含了大量的文件夹和文件,那么当某个应用程序对每个文件依次进行简短的访问的时候,由建立 LAT 更新所占用的 I/O 带宽会在全部的 I/O 带宽中占据非常明显的比重。为了加快访问文件夹或文件的速度,可以使用 fsutil behavior set disablelastaccess 这个命令来禁止更新 LAT。在应用了该命令并重启计算机后,LAT 就不会再被更新了。此时建立一个新的文件,它的 LAT 就会永远保持在它最初建立的时间上。
更多精彩
赞助商链接