- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
文件修改时间和访问时间不一致
为什么文件属性中的“访问时间”和“修改时间”不一致?在Win7下,我注意到一个现象,就是经常文件属性中的“访问时间”和“修改时间”是不一致的,如下图:?这个文件是我在21:41 创建的,然后我在21:42修理里面的内容并保存。按照常理,访问时间应该和修改时间一致才对。现象是反而比修改时间早,很奇怪。根据GetFileTime这个API,和文件相关的时间有3个:BOOL WINAPI GetFileTime( __in HANDLE hFile, __out_opt LPFILETIME lpCreationTime, __out_opt LPFILETIME lpLastAccessTime, __out_opt LPFILETIME lpLastWriteTime);CreationTime:创建时间,很好理解,就是这个文件创建时的时间。LastAccessTime:最后访问时间,表示文件读取,写入,复制或者执行的最后时间.LastWriteTime:? 文件最后写入的时间。从这个定义来看的话,LastAccessTime应该大于等于LastWriteTime.但是从使用来看的话,却又不是这样的。?Why?今天看了The Old New Thing才明白过来,原来从2003 SP1起,为了性能,默认把LastAccessTime给禁用了。我使用的是Win7系统,默认是关闭的。?那么它为什么会影响性能呢?LastAccessTime会保存到两个地方:文件属性中,作为MFT中的一条记录该文件所属的目录索引中。?影响性能的主要原因是如果一个文件只是读操作的话,为了更新这个时间,就必须做一个写操作,把该信息写入到文件属性和目录索引中去,这样一个读操作就变成了一个读+写操作。由于现在的硬盘都非常大,几十万个文件都是常事,如果读操作再加一个写操作,那么这个确实影响性能。(详细可以参考Fsutil: behavior 中对于DisableLastAccess的描述,地址附后)。?下面是各个文件系统对文件时间的支持文档:FeatureNTFSexFATUDFFAT32Creation time stamps(创建时间)YesYesYesYesLast access time stamps(最后访问时间)No*YesYesYes (只更新日期)Last change time stamps(最后改变时间)YesYesYesYesLast archive time stamps(最后存档时间)NoNoNoNo说明:1.NTFS 本身是支持更新LastAccessTime,在Windows 2000,XP,2003中默认是开启的,Vista之后需要单独开启。?如何开启LastAccessTime的更新呢?使用命令查询当前系统是否关闭了LastAccessTime的更新:fsutil behavior query disablelastaccess1 表示关闭,0表示开启?关闭LastAccessTime的更新:fsutil behavior set disablelastaccess 1注意:需要重启。?打开LastAccessTime的更新:fsutil behavior set disablelastaccess 0注意:需要重启。?事实上,上面的修改都是修改的注册表Key: [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem]?Value Name: NtfsDisableLastAccessUpdate?Data Type: REG_DWORD (DWORD Value)?Value Data: (0 = disable, 1 = enable)?
文档评论(0)