Eu sei que o relógio do hardware é o RTC, que ainda funciona, mesmo quando o PC (ou outro dispositivo com RTC) está desligado. (no linux podemos ver esse tempo digitando "horas") O segundo horário mencionado, horário do sistema, é o horário que realmente é utilizado pelo SO, pelo Linux. Posso ver pelo comando "data"
Mas ainda não sei como é atribuída a hora do sistema após a inicialização do PC. Existe algum valor de deslocamento definido no Linux, que é então usado, e o cálculo da hora do sistema é feito usando a hora do hardware e esse deslocamento?
Ou está funcionando de outra maneira?
Responder1
Sim, existem esses dois relógios. O RTC (também conhecido como CMOS Clock/Hardware Clock) como você referiu, e o System Clock (também conhecido como Kernel Clock, Software Clock) cujo valor é salvo na configuração do SO. Este relógio do sistema é baseado em interrupções do temporizador.
E como é óbvio, esses dois podem ter algum deslocamento fracionário devido ao qual eles se desviarão e o sistema operacional terá várias estratégias para lidar com o desvio do temporizador. Uma das maneiras modernas comuns de manter ambos sincronizados usando umServidor de horáriocomo time.windows.com com base noProtocolo de horário de rede.
Responder2
Relógio de hardware versus relógio do sistema: O relógio de hardware é o "Real Time Clock" alimentado por bateria (também conhecido como "RTC", "Relógio CMOS") que controla o tempo quando o sistema está desligado, mas não é usado quando o sistema está correndo