에서 인용https://wiki.archlinux.org/title/System_time:
대부분의 운영 체제의 표준 동작은 다음과 같습니다.
- 시작 시 하드웨어 시계를 기준으로 시스템 시계를 설정합니다.
- 시스템 시계 시간을 정확하게 유지하려면 #시간 동기화를 참조하세요.
- 종료 시 시스템 시계를 기준으로 하드웨어 시계를 설정합니다.
종료 중에 시스템 시계에서 하드웨어 시계를 설정하는 마지막 단계는 누가 담당합니까?
답변1
책임은 "운영 체제"에 있습니다. 구체적인 구현은 다양합니다.
고려해야 할 두 가지 상황이 있습니다.
시스템의 유일한 시간 소스가 RTC인 경우 시간이 이미 설정되어 있지 않으면 업데이트할 필요가 없습니다. Linux에서는 일반적으로 다음에서 처리합니다.
hwclock
또는timedatectl
.시스템에 네트워크를 통한 외부 시간 소스가 있는 경우 RTC를 업데이트해야 합니다. Linux에서는 일반적으로 종료 시( 사용
hwclock
) 처리되지만 커널(3.7 이후)은 다음을 수행할 수 있습니다.10분마다 자동으로 RTC 업데이트외부 소스를 사용하여 시스템 시간을 유지하고 RTC가 올바르게 구성된 경우.
Linux에서 커널은 시간 동기화 서비스가 지우거나 설정하여 시간이 동기화되었는지 보고할 것으로 예상합니다.STA_UNSYNC
adjtimex
시스템 호출 상태 비트 사용. 커널 자체가 시간을 결정하는 경우 이 비트를 설정할 수 있습니다.아니요동기화되지만 자체적으로 삭제되지는 않습니다.