问:内核统计计数器的最大值是多少?如何在python代码中处理它?你知道吗
上下文:我根据内核统计信息计算一些统计信息(例如,/proc/partitions—它将是定制的pythoniostat版本)。但是我有一个溢出值的问题-负值。原始iostat代码https://github.com/sysstat/sysstat/blob/master/iostat.c注释:
* Counters overflows are possible, but don't need to be handled in
* a special way: The difference is still properly calculated if the
* result is of the same type as the two values.
我的语言是python,在我的例子中需要注意溢出。可能还取决于体系结构(32/64)。我试过2^64-1(64位系统),但没有成功。你知道吗
以下函数适用于32位计数器:
这显然是行不通的,因为在两次连续的读取之间,计数器会多次环绕(但是其他方法也行不通,因为信息已经无法恢复地丢失了)。你知道吗
编写一个64位的版本留给读者作为练习。:)
相关问题 更多 >
编程相关推荐