3

我需要在内核模块中进行整数除法,为此我正在使用 do_div() 。它似乎可以在我的机器上运行(我有一个 i686 处理器),但是我不确定它是否可以在任何地方运行。任何人都可以确认是否do_div()应该在 32 位和 64 位架构中正常运行,或者是否有任何已知的限制?

我使用带有内核 2.6.38 的 Ubuntu 10.04,所以我对支持 >= 2.6.38 的内核很感兴趣。

如果有人知道在内核中进行整数除法的更好方法,我也会感兴趣do_div()

最好的祝福

丹尼尔

4

1 回答 1

0

do_div()确实适用于 64 位拱门,但除非您真的需要其余部分并且完全了解 using 的影响,否则您do_div()可能应该改为进行位移。

于 2011-09-08T12:13:09.010 回答