在内核模块中以秒为单位(从纪元开始)获取当前时间的标准方法是什么?
我已经看到了涉及获取xtime的技术,这些技术非常冗长且涉及while循环和锁定。必须有更好的方法。
[这不是重复的。我已经查看了之前的问题。许多这些的答案要么没有指定使用的函数,要么错误地引用内核中不允许的time.h。
答案 0 :(得分:16)
您可以使用getnstimeofday
。
/* getnstimeofday - Returns the time of day in a timespec */
void getnstimeofday(struct timespec *ts)
其中struct timespec
是:
struct timespec {
time_t tv_sec; /* seconds */
long tv_nsec; /* nanoseconds */
};
是的,你需要#include <linux/time.h>
。