Mec! Error!
Los relojes de los ordenadores también tienden a atrasar. Se debe a que la CPU si en el instante de actualizar el reloj tiene otra tarea de prioridad superior hace esa tarea en vez de la actualización del reloj. Aun cuando son milisegundos esto acumulado llevaba a atrasos importantes de varios segundos.
Lo siento pero no, te equivocas. El reloj del ordenador NO lo lleva el procesador central y el sistema operativo, sino un microcircuito dedicado exclusivamente a ello y qeu se llama RTC (Real Time Clock) que funciona solo con tener alimentación eléctrica, por eso las placas base tiene un batería (que no pila), para alimentar al RTC, de manera que siga funcionando cuando el ordenador está apagado. Este circuito, ademas de tener un cuarzo (o un resonador cerámico, de manera más inusual), tiene lo que sería la lógica (el programa) de un reloj de cuarzo normal (para reloj y calendario perpetuos) y además un bloqeu de comunicciones qeu le permite ser interrogado por el procesdor del sistema para leerla la hora (las placas base disponen dentro de buses de comunicaciones para leer todos los dipositivos que llevan: reloj, sensores de temperatura, ventiladores, etc).
El motivo de que el RTC se atrase (o adelante, que es más raro), es que la frecuencia de oscilación del cuarzo (o del resonador cerámico) que tiene es función de la tensión de la batería que lo alimenta y de la temperatura del cuarzo (es lo que tiene el efecto piezoeléctrico, depende de ambos dos parámetros).
En una caja de ordenador la temperatura está de todo menos controlada, y de hecho mientras está apagado el ordenador la tmeperatur es "fría" (eso significa atraso). Respecto a la tesión, las baterías (todas) con el uso y el tiempo tienen tendencia a bajar su tensión en bornes, especilmente la final de su vida útil, además, dicha tensión depende de la temperatura, y a menor temperatura, menor tensión. Así que el oscilador de cuarzo está sujeto a perturbaciones que tienden todas ellas a retrasarlo, de hecho es extraño ver relojes de placas base que se atrasen. Y eso es lo qeu se observa siempre (o casi siempre).
¿Un reloj de cuarzo se puede hacer más fiable? SI claro, confinándolo en un "horno" (una cajita cerrada) y poniéndole un control de temperatura, de manera que tenga resistencias calefactoras para cuando haga frio (y deje la temperatura del horno a la tmperatura de diseño) y que tenga alguna manera de enfriar el horno (células peltier, por ejemplo) cuando por causas ambientales la temperatura se dispara. También sería necesario regular la tensión del cristal oscilador. Observaréis que esto es caro, y que además consume potencia eléctrica, así que "quizás" fuese necesario poner una batería "grande y gorda" en vez de la pila botón que usan las placas de ordenador.
Al respecto de como dices que funciona el reloj, que si la oscilación del curzo dispara una interrupción del procesador y demás, es cierto que en sistemas "pequeños", microcontroladores y demás, sí que se puede usr esta técnica para ahorrar algo de dinero en su construcción, de hecho, yo mismo he estado diseñando productos electrónicos con
calendario perpetúo y con cambio de horario internacional (diferentes tipos de cambio según esté en uno u otro sitio) y que eran actualizables por computador remoto. Sí sí, habéis leído bien, he programado circuitos de reloj actualizables para aplicaciones industriales (giros de la vida). Y sí, sí, eso se puede hacer y es fácil.
Al respecto del coste de un RTC, pues aquí tenéis varios de esos rtc's, y el coste del más barato de ellos no llega a los 2 euritos...
Espero no haber sido muy pesado ;D