Как определить, почему моя системная дата сходит с ума?
304
kmort
Дата на моей машине x86 сходит с ума. Когда я загружаюсь, это в 1980 году (как и ожидалось, так как батарея CMOS разрядилась). Так что я NTP синхронизирую его без проблем. Некоторое время спустя (в течение нескольких часов, а иногда и в течение нескольких минут) система завершает работу примерно в одну из следующих дат:
Jun 09 00:21:48 UTC 2013 (Just a few days ago...) Jan 30 14:14:06 UTC 2040 (Back to the future!) Mar 08 00:08:31 UTC 2105 (Super far into the future)
Я не думаю, что NTP делает это, так как я запускаю только одноразовые принудительные обновления NTP (когда это не в лаборатории, NTP не вариант).
Насколько я могу судить, в этих датах нет ничего особенного ни по GPS, ни по времени UTC. Выделяют ли эти даты кого-либо как близкие к значениям по умолчанию, если я переполняю какой-то определенный формат? Обе будущие даты выходят за рамки 2038 года.
Особенности: это встроенная система с платой x86 под управлением QNX 6.4.1. Он использует время UTC, без смещения часового пояса.
Дата пребывания стабильно очень важна. Если это просто конкретная система, которая плохо, хорошо, плохое оборудование или что-то еще. Но если он системный, мне нужно его изолировать и исправить.
Какие шаги я могу предпринять, чтобы изолировать это? Может кто-нибудь, пожалуйста, укажите мне в правильном направлении?
Примечание: если это не тот форум, на который можно ответить на такой вопрос, пожалуйста, помогите мне найти правильный.
Поменять батарею?
pnuts 11 лет назад
0
Не могу. Это встроенная система. Но вещь 1980 года не проблема. Это происходит постоянно с этими старыми системами. Это прыжки после того, как я установил время, которое имеет значение.
kmort 11 лет назад
0
Посмотрите на все ваши работающие программы и посмотрите, может ли какая-либо из них изменить время, кроме NTP. Проверьте журналы этих программ, чтобы увидеть, если что-то идет весело. Затем проверьте dmesg на наличие ошибок, которые могут привести к смещению времени.
Wolfizen 11 лет назад
0
`slogger` (` dmesg` эквивалент) не показывает ничего, что выглядит не по порядку.
kmort 11 лет назад
0
1 ответ на вопрос
0
kmort
While not a good answer for the general case, I'll close the loop.
This embedded system generally syncs with the GPS time from a hardware device. The firmware on the hardware device had been modified slightly when the digital folks went to a new version of the VHDL toolset. Long story short, the firmware was actually giving us crazy values to sync to, and the software was behaving "reasonably".