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)