ktime_get_real_ts64于linux v3.17版本面世,最初以宏定义形式存在。在linux v5.0版本中,随着do_gettimeofday的退役,ktime_get_real_ts64正式登场。其定义位于kernel/time/timekeeping.c,声明则在include/linux/timekeeping.h。具体实现和使用详情,需查阅相关源代码和文档。
ktime_get_real_ts64 ktime_get_real_ts64函数诞生于linux v3.17,当时是一个宏定义如下: externvoidgetnstimeofday64(structtimespec64*tv);#define ktime_get_real_ts64(ts) getnstimeofday64(ts) 在linux v5.0中,也就是do_gettimeofday正式退役时,我们看看ktime_get_real_ts64的样子。其在kernel/time/ti...
Name:ktime_get_real_ts64 - Returns the time of day in a timespec64.*@ts: pointer to the timespec to be set* Returns the time of day in a timespec64 (WARN if suspended). Proto:void ktime_get_real_ts64(struct timespec64 *ts) Type:void Parameter: TypeParameterName struct timespec64...
函数名称:ktime_get_coarse_real_ts64 函数原型:void ktime_get_coarse_real_ts64(struct timespec64 *ts) 返回类型:void 参数: 类型参数名称 struct timespec64 * ts 2162 tk等于timekeeper 2165 循环 2166 seq等于ad_seqcount_begin - begin a seq-read critical section*@s: pointer to seqcount_t* Ret...
至linux v2.0版本,正式升级为外部接口。其定义位于arch/i386/kernel/time.c。然而,随着linux v5.0的更新,do_gettimeofday退出历史舞台。原因在于struct timeval在32bit机器上面临2038问题。替代函数为ktime_get_real_ts64。这一替代被官方文档明确指出,详细信息可参考"linux kernel documentation"中的...
2166 2167 2168 2169 voidktime_get_coarse_real_ts64(structtimespec64 *ts) { structtimekeeper *tk = &tk_core.timekeeper; unsignedintseq; do{ seq = read_seqcount_begin(&tk_core.seq); *ts = tk_xtime(tk); }while(read_seqcount_retry(&tk_core.seq, seq)); ...