Colm MacCarthaigh wrote:
> On Tue, Nov 06, 2001 at 05:54:37PM +0000, Padraig Brady wrote:
>>>I can't beleive there isn't a platform independent
>>getSecondsSinceBoot() function, but can't find one.
>>Please tell me I'm wrong.
>>>>>> use the wtmp :)
>> #include <utmp.h>
> #include <strings.h>
>> time_t bt;
> struct utmp u;
> int fd;
>>> if((fd=open("/var/run/wtmp", O_RDONLY)) < 0)
> /* handle error */
>> /* set it to all zero's */
> bzero(bt, sizeof(bt));
>> while(read(fd, &u, sizeof(u)) == sizeof(u))
> {
> if(u.ut_type == BOOT_TIME)
> bt = u.ut_time; /* ut_time is a portable macro */
>> /* dont break, we want last entry that matches */
> }
>> close(fd);
This just gives the boot time (in seconds since 1970) as far
as I can tell. Hence not what I want. I want the actual number
of seconds elapsed since boot, and I can't use BOOT_TIME-time(0)
as if the system date changes, this will be inaccurate.
Padraig.
Maintained by the ILUG website team. The aim of Linux.ie is to
support and help commercial and private users of Linux in Ireland. You can
display ILUG news in your own webpages, read backend
information to find out how. Networking services kindly provided by HEAnet, server kindly donated by
Dell. Linux is a trademark of Linus Torvalds,
used with permission. No penguins were harmed in the production or maintenance
of this highly praised website. Looking for the
Indian Linux Users' Group? Try here. If you've read all this and aren't a lawyer: you should be!