gpt4 book ai didi

linux - Jiffies Counter Over Flow 案例 + Linux

转载 作者:太空狗 更新时间:2023-10-29 11:34:36 25 4
gpt4 key购买 nike

Jiffies 计数器返回一个四字节大小的无符号整数。当计数器达到最大值时,它会再次从 0 重新开始。我将用旧值减去最新值以获得持续时间。那么我应该如何考虑这样一种情况,即当旧值是最大值而新值大于零时,我会得到错误的持续时间?

最佳答案

您无需执行任何操作,您将拥有正确的持续时间(只要您使用四字节无符号整数进行所有计算)。这就是以固定宽度二进制算术实现的整数值的魔力。

这是一个 8 位无符号整数的例子。您实际上可以看到,即使出现溢出,差异仍然有效。

236 - 221 = 11101100 - 11011101 = 11101100 + 00100011 = 00001111 = 15
251 - 236 = 11111011 - 11101100 = 11111011 + 00010100 = 00001111 = 15
10 - 251 = 00001010 - 11111011 = 00001010 + 00000101 = 00001111 = 15
25 - 10 = 00011001 - 00001010 = 00011001 + 11110110 = 00001111 = 15
...

当持续时间与计数器的最大值相比不是时,即当它可以大于最大值的一半时,您的唯一问题就会出现。

关于linux - Jiffies Counter Over Flow 案例 + Linux,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4714598/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com