I've been going back and forth between Linux and MacOS a lot and I
finally noticed that the time was all screwed up in Linux. So I fixed
the problem by setting the system clock from a time server and then
doing:
hwclock --localtime --systohwclock
Now the clock seems to know it's running in local time. I'm still
curious, however, about the whole notion of system time being separate
from the hardware clock time. AFAICT, Linux is the only OS that makes
the distinction. I can't quite understand what the distinction is for.