blob: 298c787fcd0856fabfcc08cd0365b85ce728bb5c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
#include "sysutil.h"
/*
* Retrieve the system's uptime (number of clock ticks since system boot),
* real time (corrected number of clock ticks since system boot), and
* boot time (in number of seconds since the UNIX epoch).
*/
int
getuptime(clock_t * uptime, clock_t * realtime, time_t * boottime)
{
struct minix_kerninfo *minix_kerninfo;
minix_kerninfo = get_minix_kerninfo();
/* We assume atomic 32-bit field retrieval. TODO: 64-bit support. */
if (uptime != NULL)
*uptime = minix_kerninfo->kclockinfo->uptime;
if (realtime != NULL)
*realtime = minix_kerninfo->kclockinfo->realtime;
if (boottime != NULL)
*boottime = minix_kerninfo->kclockinfo->boottime;
return OK;
}
|