Summer vs. Winter? I don't think so; the difference is less than a second.
Why to I use two different time methods? Well first of all, I don't anymore,
so that problem is gone. On the other hand, one method provides nanoseconds,
and the other provides only seconds. I would think that where the high precision
is not required, the one that provides seconds would do; but I would expect
the seconds to be the same as the seconds part of the higher precision method.
I consider this failure a system bug.
I find it hard to believe that one queries the system, and the other queries
the bios. If this is true, that this in itself looks like a design error. On the
other hand, the higher precision requires specification of a clock
clock_gettime(CLOCK_REALTIME) which man says returns the time since
the epoch. man 3 time says the same thing for time, but I don't see
anything there about CLOCK_REALTIME. Perhaps it is some other clock?