confusion about reading time from cmos
王哲
wangzhe5004 at gmail.com
Tue Jun 12 03:45:01 EDT 2012
Hello everyone:
env:
Ubuntu 11.04
I write a program reading time from cmos,and the program is as followed:
#include <stdio.h>
#include <sys/io.h>
unsigned char cmos_read(unsigned char addr)
{
unsigned char tmp = 0;
iopl(3);
outb(addr,0x70);
tmp = inb(0x71);
iopl(0);
return tmp;
}
int main(void)
{
printf("seconds = %x\n",cmos_read(0));
printf("minute = %x\n",cmos_read(2));
printf("hour = %x\n",cmos_read(4));
system("date");
return 0;
}
and run the program and the result is as followed:
wanny at wanny-C-Notebook-XXXX:~$ sudo ./a.out
seconds = 9
minute = 42
hour = 7
2012年 06月 12日 星期二 15:42:09 CST
question:
why the second is right,minute is right , but the hour is different?
Thanks in advance!!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20120612/95c6d701/attachment.html
More information about the Kernelnewbies
mailing list