栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

EXT4的时间戳准确度(毫秒)

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

EXT4的时间戳准确度(毫秒)

如果inode足够大以支持扩展时间信息(256字节或更大),则ext4文件系统确实支持存储时间的纳秒分辨率。在您的情况下,由于分辨率大于第二个分辨率,因此这不是问题。

在内部,ext4文件系统代码调用

current_fs_time()
,这是当前缓存的内核时间,该时间被截断为文件系统的超级块中指定的时间粒度,对于ext4,该粒度为1ns。

Linux内核中的当前时间被缓存,并且通常仅在计时器中断时才更新。因此,如果您的计时器中断以10毫秒的速度运行,则缓存的时间将仅每10毫秒更新一次。当确实发生更新时,结果时间的准确性将取决于硬件上可用的时钟源。

试试看,看看您是否也获得了与统计调用相似的结果:

while true; do date --rfc-3339=ns; done

在我的机器(amd64,intel virtualbox)上没有量化。

例如

2013-01-18 17:04:21.097211836+11:002013-01-18 17:04:21.098354731+11:002013-01-18 17:04:21.099282128+11:002013-01-18 17:04:21.100276327+11:002013-01-18 17:04:21.101348507+11:002013-01-18 17:04:21.102516837+11:00

更新

上面使用的检查

date
在这种情况下并没有显示任何内容。这是因为
date
将调用
gettimeofday
系统调用,该系统调用将始终根据缓存的内核时间返回最准确的可用时间,并根据CPU周期时间进行调整(如果可以提供纳秒分辨率)。但是,存储在文件系统中的时间戳仅基于缓存的内核时间。即在上一个定时器中断处计算的时间。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/415439.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号