Содержание
KnGetMSecSinceStart()
Функция объявлена в файле coresrv/time/time_api.h
.
rtl_size_t KnGetMSecSinceStart(void);
Функция возвращает количество миллисекунд, прошедших с момента старта системы.
В началоKnGetRtcTime()
Функция объявлена в файле coresrv/time/time_api.h
.
Retcode KnGetRtcTime(RtlRtcTime *rt);
Функция записывает в параметр rt
системное POSIX-время в формате RTC.
В случае успеха возвращает rcOk, в случае ошибки – rcFail.
Формат времени RTC задается структурой RtlRtcTime
(объявлена в файле rtl/rtc.h
.):
typedef struct {
rtl_uint32_t msec; /**< миллисекунды */
rtl_uint32_t sec; /**< секунда (0..59) */
rtl_uint32_t min; /**< минута (0..59) */
rtl_uint32_t hour; /**< час (0..23) */
rtl_uint32_t mday; /**< день (1..31) */
rtl_uint32_t month; /**< месяц (0..11) */
rtl_int32_t year; /**< год - 1900 */
rtl_uint32_t wday; /**< день недели (0..6) */
} RtlRtcTime;
KnGetSystemTime()
Функция объявлена в файле coresrv/time/time_api.h
.
Retcode KnGetSystemTime(RtlTimeSpec *time);
Функция позволяет получить системное время.
Выходной параметр time
содержит системное POSIX-время в формате RtlTimeSpec
.
KnSetSystemTime()
Функция объявлена в файле coresrv/time/time_api.h
.
Retcode KnSetSystemTime(RtlTimeSpec *time);
Функция позволяет задать системное время.
Параметр time
должен содержать POSIX-время в формате RtlTimeSpec
.
Не рекомендуется вызывать функцию KnSetSystemTime()
в потоке обработчика прерываний.
KnGetSystemTimeRes()
Функция объявлена в файле coresrv/time/time_api.h
.
Retcode KnGetSystemTimeRes(RtlTimeSpec *res);
Функция позволяет получить разрешение источника системного времени.
Выходной параметр res
содержит разрешение формате RtlTimeSpec
.
KnGetUpTime()
Функция объявлена в файле coresrv/time/time_api.h
.
Retcode KnGetUpTime(RtlTimeSpec *time);
Функция позволяет получить время, прошедшее с момента старта системы.
Выходной параметр time
содержит время в формате RtlTimeSpec
.
KnGetUpTimeRes()
Функция объявлена в файле coresrv/time/time_api.h
.
Retcode KnGetUpTimeRes(RtlTimeSpec *res);
Функция позволяет получить разрешение источника времени, значение которого можно получить через KnGetUpTime()
.
Выходной параметр res
содержит разрешение в формате RtlTimeSpec
.
RtlTimeSpec
Формат времени timespec задается структурой RtlTimeSpec
(объявлена в файле rtl/rtc.h
).
typedef struct {
rtl_time_t sec; /**< целое число секунд, прошедшее с начала Unix-эпохи
* или другого заданного момента времени */
rtl_nsecs_t nsec; /**< поправка в наносекундах (число наносекунд,
* прошедших с момента, заданного числом секунд*/
} RtlTimeSpec;