Module xwtm
XWLUA模块:系统时间
XWOS使用64位有符号整数作为系统时间的类型,单位为纳秒。
Functions
now () | 获取当前CPU的 系统时间 点 |
ft (xwtm) | 获取当前CPU未来的 系统时间 点 |
nowts () | 获取当前CPU的 系统时间戳 |
fts (xwtm) | 获取当前CPU的未来 系统时间戳 |
nowtc () | 获取当前CPU的 系统滴答计数 |
ns (ns) | 返回以纳秒为单位的系统时间 |
us (us) | 返回以微秒为单位的系统时间 |
ms (ms) | 返回以毫秒为单位的系统时间 |
s (s) | 返回以秒为单位的系统时间 |
m (m) | 返回以分为单位的系统时间 |
h (h) | 返回以时为单位的系统时间 |
d (d) | 返回以天为单位的系统时间 |
Functions
- now ()
-
获取当前CPU的 系统时间 点
XWOS中,每个CPU都有一个私有的滴答定时器,产生周期性的定时中断。 系统时间 在每次中断时都会增加一次。
系统时间 是个每CPU私有变量。代码运行在哪个CPU,访问的就是哪个私有变量。
XWOS的系统时间 = 滴答时间定时器中断的次数 * 中断的周期(以纳秒为单位)
Returns:
-
number
当前系统滴答时间
Usage:
xwtm.now()
- ft (xwtm)
-
获取当前CPU未来的 系统时间 点
未来时间点 = 当前时间点 + xwtm
Parameters:
- xwtm number (in) 从现在开始到未来的时间
Returns:
-
number
未来时间点
Usage:
xwtm.ft(xwtm)
- nowts ()
-
获取当前CPU的 系统时间戳
系统时间戳 类似于 系统时间 。但是 系统时间 只会在每次定时器中断时才增加一次,两次中断之间不会发生变化。
通过获取滴答定时器的计数器的值,计算出上一次中断后经过了多少时间,再累加到 系统时间 上,即为 系统时间戳 。
系统时间戳 是个每CPU私有变量。代码运行在哪个CPU,访问的就是哪个私有变量。
XWOS的系统时间戳 = XWOS的系统时间 + 滴答定时器距离下一次中断还有多少时间
Returns:
-
number
当前系统时间戳
Usage:
xwtm.nowts()
- fts (xwtm)
-
获取当前CPU的未来 系统时间戳
未来时间戳 = 当前时间戳 + xwtm
Parameters:
- xwtm number (in) 从现在开始到未来的时间
Returns:
-
number
未来时间点
Usage:
xwtm.fts(xwtm)
- nowtc ()
-
获取当前CPU的 系统滴答计数
系统滴答计数 表示滴答定时器中断了多少次。
系统滴答计数 是个每CPU私有变量。代码运行在哪个CPU,访问的就是哪个私有变量。
Returns:
-
number
滴答计数
Usage:
xwtm.nowtc()
- ns (ns)
-
返回以纳秒为单位的系统时间
Parameters:
- ns number (in) 纳秒
Returns:
-
number
系统时间
Usage:
xwtm.ns(ns)
- us (us)
-
返回以微秒为单位的系统时间
Parameters:
- us number (in) 微秒
Returns:
-
number
系统时间
Usage:
xwtm.us(us)
- ms (ms)
-
返回以毫秒为单位的系统时间
Parameters:
- ms number (in) 毫秒
Returns:
-
number
系统时间
Usage:
xwtm.ms(ms)
- s (s)
-
返回以秒为单位的系统时间
Parameters:
- s number (in) 秒
Returns:
-
number
系统时间
Usage:
xwtm.s(s)
- m (m)
-
返回以分为单位的系统时间
Parameters:
- m number (in) 分
Returns:
-
number
系统时间
Usage:
xwtm.m(m)
- h (h)
-
返回以时为单位的系统时间
Parameters:
- h number (in) 时
Returns:
-
number
系统时间
Usage:
xwtm.h(h)
- d (d)
-
返回以天为单位的系统时间
Parameters:
- d number (in) 天
Returns:
-
number
系统时间
Usage:
xwtm.d(d)