一尘不染

如何获取Linux内核空间中的当前小时(一天中的时间)

linux

我正在编写一个内核模块,该模块检查时间是否在两个指定的小时之间,并禁用输入的时间。这与我要确保我早点睡觉有关。(我知道我也可以使用许多不同的技术,包括cron等,但是我想学习内核编程…)

因此,作为第一个版本,我检查当前时间是否在开始和结束之间,这是通过模块的参数设置的。

因此,我的问题是:如何获得当前时间?由于我在内核空间中,因此无法访问标准库中的常规时间函数。我猜想我应该为此使用do_gettimeofday(),但这只给我几秒钟和十亿分之一秒的时间,并且我今天需要几个小时。

谢谢。


阅读 528

收藏
2020-06-07

共1个答案

一尘不染

time_to_tm函数可以为您提供帮助,该函数返回结构tm。时区在变量sys_tz中可用,它可以帮助您正确设置偏移量以获得本地时间。

2020-06-07