xfs– 写入文件时如何不修改mtime?

xfs– 写入文件时如何不修改mtime?,第1张

概述xfs – 写入文件时如何不修改mtime?

我有一个文件,1GB的文件,并驻留在磁盘上。 出于性能方面的原因,我重复使用这个文件,并根据需要简单地覆盖它的内容,而不是创build一个新文件并让它增长(每个增长 *** 作必须在inode中更新它的大小)。

我试图挤出更多的性能,并search手册页打开和挂载 ,试图找出何时更新文件的mtime和ctime。 根据我的理解,每次更改文件内容时,都会更新mtime和/或ctime。 这是xfs如何工作?

如果是这样,有没有办法在linux上禁用这个? 我不关心mtime和ctime,宁可不花费每个写入 *** 作更新它们的成本。

最后,我将彻底摆脱文件系统,并直接写入设备,但同时我希望有一种方法可以在文件系统中执行此 *** 作。

如何以及何时使用/ dev / shm来提高效率?

如何检查一个目录的大小,并在bash中打印?

有没有支持encryption的windows的开源文件系统?

即使权限是777,文件也不可写入

Directory.Getfiles不返回文件

编辑响应答案

为了说明问题,我正在写一个SSD,挤出SSD的每一个 *** 作是非常重要的。 SSD理论上可以处理每秒25K的 *** 作,而这些对我来说都很重要。 除了写入我的文件之外,我不希望他们中的任何一个被浪费掉。 在这个笔记上,实际上我在我的磁盘上有200个1GB的文件。 我试图用上面的问题简化问题。

此外,每个写入必须是同步的,我的程序将不会继续,直到我确信这些位在磁盘上(这是可能的)。 但是我认为这个说明与这个问题是相切的。

Java监视服务似乎重新创build删除的文件。 到底是怎么回事?

为什么要删除一个目录结构,然后在引发exception之后立即重新创build它?

Java – 确定磁盘格式(RAW或FS)

如何在linux上通过inode访问文件

如何隐藏/取消隐藏文件,而不删除windows上的C ++中的其他属性

有关mtime和ctime的语义,请参阅man 2 stat 。 实际上,mtime和ctime将在inode的内存副本中更新,并异步刷新到磁盘。

如果你真的认为从一个32位计数器到另一个存储器位置的复制使你失望,你不能跳过inode的mtime更新,你错误地试图优化write(2)的快速部分write(2) 。

想要提高1GB文件的文件写入性能? 为块缓存添加更多的内存使用,忘记了mtime。

添加回应评论

同步写入不会在任何有意义的意义上提供安全性,因为在磁盘写入过程中拉动的电源线不受同步的帮助; 这就是使用像xfs和ext3 +这样的日志文件系统的原因。 面对失败,最好的希望是一致的。

您似乎希望确定所记录的数据是完全不可能的,即使您使用电池支持的SRAM写入缓冲区构建RAID,根本不可能实现这一目标,因为在提交这些位之前,某些事情可能总是失败。 原始卷的写入比保存日志文件系统的保护更少。

如果你在你的问题中澄清你的设计意图,可能会有更好的答案。 在内心层面上,尽管写入时间较长,但对于一个小巧的1GB文件,闪存比闪存氧化物更容易出错,但这不是一个正式的声明。

总结

以上是内存溢出为你收集整理的xfs – 写入文件时如何不修改mtime?全部内容,希望文章能够帮你解决xfs – 写入文件时如何不修改mtime?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1278995.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-09
下一篇2022-06-09

发表评论

登录后才能评论

评论列表(0条)

    保存