此问题与暂停/恢复问题不有关!
对于同一事件' dmesg'总是显示相同的时间戳,例如
[31765279.760248]
然而,当使用' dmesg -T'时,对于同一事件,它显示略微不同的秒数,例如两次调用dmesg -T | grep something | tail -1
会导致:
[Thu Jan 29 01:12:39 2015] event details...
[Thu Jan 29 01:12:38 2015] event details...
我需要将事件与历史进行比较并对新事件采取行动。但是,这种差异使得无法使用简单的字符串比较。
作为一种解决方法,我在比较它们之前剪切字符串中的秒数。我可以在这种情况下这样做,因为我过滤的事件在5分钟内不会发生一次以上。
有谁知道为什么会发生这种不准确?
uname -a => Linux (hostname) 3.5.0-45-generic #68~precise1-Ubuntu SMP Wed Dec 4 16:18:46 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
答案 0 :(得分:0)
通过将这些时间戳添加到系统引导时间,将这些时间戳转换为实时。如果系统出现在1491516481.480856282并且您为其添加了一个小数偏移,有时您会看到一个额外的完整秒。
没有检查过代码,但很确定这是原因。 Convert dmesg timestamp to custom date format中有更多信息,包括我写的回复。