KasperskyOS Community Edition 1.1
[Topic libkos_time]

KnGetMSecSinceStart()

Функция объявлена в файле coresrv/time/time_api.h.

rtl_size_t KnGetMSecSinceStart(void);

Функция возвращает количество миллисекунд, прошедших с момента старта системы.

В начало
[Topic kn_get_msec_since_start]

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;

В начало
[Topic kn_get_rtc_time]

KnGetSystemTime()

Функция объявлена в файле coresrv/time/time_api.h.

Retcode KnGetSystemTime(RtlTimeSpec *time);

Функция позволяет получить системное время.

Выходной параметр time содержит системное POSIX-время в формате RtlTimeSpec.

В начало
[Topic kn_get_system_time]

KnSetSystemTime()

Функция объявлена в файле coresrv/time/time_api.h.

Retcode KnSetSystemTime(RtlTimeSpec *time);

Функция позволяет задать системное время.

Параметр time должен содержать POSIX-время в формате RtlTimeSpec.

Не рекомендуется вызывать функцию KnSetSystemTime() в потоке обработчика прерываний.

В начало
[Topic kn_set_system_time]

KnGetSystemTimeRes()

Функция объявлена в файле coresrv/time/time_api.h.

Retcode KnGetSystemTimeRes(RtlTimeSpec *res);

Функция позволяет получить разрешение источника системного времени.

Выходной параметр res содержит разрешение формате RtlTimeSpec.

В начало
[Topic kn_get_system_time_res]

KnGetUpTime()

Функция объявлена в файле coresrv/time/time_api.h.

Retcode KnGetUpTime(RtlTimeSpec *time);

Функция позволяет получить время, прошедшее с момента старта системы.

Выходной параметр time содержит время в формате RtlTimeSpec.

В начало
[Topic kn_get_up_time]

KnGetUpTimeRes()

Функция объявлена в файле coresrv/time/time_api.h.

Retcode KnGetUpTimeRes(RtlTimeSpec *res);

Функция позволяет получить разрешение источника времени, значение которого можно получить через KnGetUpTime().

Выходной параметр res содержит разрешение в формате RtlTimeSpec.

В начало
[Topic kn_get_up_time_res]

RtlTimeSpec

Формат времени timespec задается структурой RtlTimeSpec (объявлена в файле rtl/rtc.h).

typedef struct {

rtl_time_t sec; /**< целое число секунд, прошедшее с начала Unix-эпохи

* или другого заданного момента времени */

rtl_nsecs_t nsec; /**< поправка в наносекундах (число наносекунд,

* прошедших с момента, заданного числом секунд*/

} RtlTimeSpec;

В начало
[Topic rtl_time_spec]