Персональный компьютер имеет батарейные аппаратными часы. Батарея гарантирует, что часы будут работать, даже если остальная часть компьютера обесточена. Аппаратные часы могут настраиваться через экран установки BIOS или из любой операционной системы.
Ядро Linux следит за временем независимо от аппаратных часов. В течение начальной загрузки, Linux устанавливает собственные часы на то время, которое показывают аппаратные часы. После этого, те и другие часы работают независимо. Linux поддерживает собственные часы потому, что просмотр аппаратных средств медленен и сложен.
Ядерные часы (часы в ядре Linux) всегда показывают универсальное время. Ядро вообще не должно знать ничего относительно часовых поясов. Простота дает более высокую надежность и делает проще модифицикацию информации часового пояса. Каждый процесс обрабатывает преобразования часового пояса самостоятельно (используя стандартные инструментальные средства, которые являются частью пакета часового пояса).
Аппаратные часы могут работать в местном или в универсальном времени. Обычно лучше иметь их в универсальном времени, потому что Вы не должны будете менять показания аппаратных часов при переходе на летнее или зимнее время (UTC, не имеет DST). К сожалению, некоторые операционные системы PC, включая MS-DOS, Windows и OS/2, что аппаратные часы показывают местное время. Linux может обрабатывать и местное время на аппаратных часах, но тогда Вам придется переводить их с летнего времени на зимнее и обратно.