На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела Hardware:
1. Если вы не уверены в правильности ответа, напишите об этом, или не отвечайте вообще, не давайте дезинформацию!
2. Не забывайте указывать полное наименование, модель, изготовителя и краткие характеристики оборудования.
3. Аргументируйте свое мнение - приводите развернутое высказывание или источник информации.
4. Прежде чем задать вопрос посмотрите, нет ли ответа на него на перечисленных ниже ресурсах:
FAQ
Полезные ссылки
www.ixbt.com
www.overclockers.ru
www.fcenter.ru
www.3dnews.ru
www.thg.ru
www.nvworld.ru
www.radeon2.ru

Здесь вы можете выразить мнение о модераторе этого раздела, ^D^ima.
Модераторы: Akina
Страницы: (2) [1] 2  все  ( Перейти к последнему сообщению )  
> Каждый раз после выключения время уходит вперед
    Каждый раз после выключения компьютера и последующего включения через более 1 часа время на компьютере уходит вперед минут от 8 до 30 из-за чего это может быть?

    Windows 7 64
    Сообщение отредактировано: DMX_XC -
      Посмотри в биосе, оно там уходит, или только в винде? Какая мамка?
        Не выключая компьютер с момента первого поста время отстало на 1 минуту.

        Материнская плата: ABIT IP35 Pro(Intel P35-ICH9R)

        Добавлено
        Цитата ^D^ima @
        Посмотри в биосе, оно там уходит, или только в винде?


        Пока только в Windows время не правильно, в биосе надо будет проверить.
          Батарейку замени ;)
            Цитата Besha @
            Батарейку замени


            Это не вариант, так как время при включенном компьютере уходит или отстает. Обычно когда батарейка садится время сбивается на дату по умолчанию.
              DMX_XC :no: не факт, на дефолт сбрасывается, когда батарейке совсем каюк, а когда она подсевшая то начинается вот такое с временем :)

              Цитата DMX_XC @
              Пока только в Windows время не правильно, в биосе надо будет проверить.

              в биосе будет такоеже ;) или от куда по твоему венда берет время? :D
                Цитата
                в биосе будет такоеже или от куда по твоему венда берет время?

                Винда не только читать, но и устанавливать время умеет. Поэтому имеет смысл убедиться в том, что проблема железячная.
                Цитата
                на дефолт сбрасывается, когда батарейке совсем каюк, а когда она подсевшая то начинается вот такое с временем

                Поддерживаю. Всяческие глюки могут быть.
                Сообщение отредактировано: Prince -
                  Не уверен, что винда всегда пишет изменяемое время в BIOS. Лучше зайти и убедиться.
                    Что-то я совсем запутался, как эта винда работает.
                    Насколько я понял после гугления, RTC работает сам по себе, а таймер винды(он же "часы реального времени" винды) сам по себе, увеличивая счётчик миллисекунд по прерыванию то ли от таймера ACPI, то ли ещё от какого-то. Периодически винда синхронизирует(может синхронизировать) свои "часы" с RTC.

                    Есть у меня ноутбук, часы на нём отстают, сильно остают.
                    Из GetSystemTimeAdjustment получаю значения 156250,165250,true.
                    Читаю справку:
                    Цитата
                    BOOL WINAPI GetSystemTimeAdjustment(
                    _Out_ PDWORD lpTimeAdjustment,
                    _Out_ PDWORD lpTimeIncrement,
                    _Out_ PBOOL lpTimeAdjustmentDisabled
                    );

                    Parameters
                    lpTimeAdjustment [out]

                    A pointer to a variable that the function sets to the number of lpTimeIncrement100-nanosecond units added to the time-of-day clock for every period of time which actually passes as counted by the system. This value only has meaning if lpTimeAdjustmentDisabled is FALSE.
                    lpTimeIncrement [out]

                    A pointer to a variable that the function sets to the interval in 100-nanosecond units at which the system will add lpTimeAdjustment to the time-of-day clock. This value only has meaning if lpTimeAdjustmentDisabled is FALSE.
                    lpTimeAdjustmentDisabled [out]

                    A pointer to a variable that the function sets to indicate whether periodic time adjustment is in effect.

                    A value of TRUE indicates that periodic time adjustment is disabled, and the system time-of-day clock advances at the normal rate. In this mode, the system may adjust the time of day using its own internal time synchronization mechanisms. These internal time synchronization mechanisms may cause the time-of-day clock to change during the normal course of the system operation, which can include noticeable jumps in time as deemed necessary by the system.

                    A value of FALSE indicates that periodic time adjustment is being used to adjust the time-of-day clock. For each lpTimeIncrement period of time that actually passes, lpTimeAdjustment will be added to the time of day. If the lpTimeAdjustment value is smaller than lpTimeIncrement, the system time-of-day clock will advance at a rate slower than normal. If the lpTimeAdjustment value is larger than lpTimeIncrement, the time-of-day clock will advance at a rate faster than normal. If lpTimeAdjustment equals lpTimeIncrement, the time-of-day clock will advance at its normal speed. The lpTimeAdjustment value can be set by calling SetSystemTimeAdjustment. The lpTimeIncrement value is fixed by the system upon start, and does not change during system operation. In this mode, the system will not interfere with the time adjustment scheme, and will not attempt to synchronize time of day on its own via other techniques.


                    Первый параметр - сколько 100 нс интервалов винда(ХР) прибавляет к своим "часам" на каждый тик системного таймера( по умолчанию, 15,625 мс)
                    Второй параметр - интервал тикания системного таймера(аналогично, по умолчанию 15,625мс).
                    Причём оба параметра имеют имеют смысл только в том случае, если третий параметр false(запоминаю).

                    Третий параметр: если true, таймер работает с нормальной(?) скоростью, корректировка времени отключена, используется интервал по умолчанию 15,625 мс, а для синхронизации времени винда использует какие-то свои тайные механизы. В результате работы этих механизмов, "время" винды порой может изменяться скачкообразно, видимо, во время выполнения синхронизации показаний "часов" винды с чем-то ещё(RTC? сервер NTP, что-то ещё?); :-?
                    если false, то на каждый тик таймера (с интервалом как бы 15,625 мс) винда прибавит к своим "часам" lpTimeAdjustment, вместо стандартного интервала 15,625мс. Т.е., можно регулировать "ход" системного таймера винды(он же "часы реального времени") при помощи теперь уже setsystemtimeadjustment, куда передаются только два параметра lpTimeAdjustment и этот самый lpTimeAdjustmentDisabled, который может быть true и false. lpTimeIncrement не меняется, он всегда равен 156250 в XP.

                    Так вот.

                    Из консоли запускаю w32tm.exe и оцениваю дельту времени с ntp сервером; дельта постоянно увеличиватся, на глаз де-то на 2.5-5 мс/с.
                    Выполняю синхронизацию "часов" средствами винды, снова GetSystemTimeAdjustment с результатом 156270(могут быть и другие значения),156250(логично), flase(!?).
                    Ага, теперь винда не использует свои суровые механизмы синхронизации, и прибавляет не 15,625 мс, а 15,627 мс на каждый тик? Почему? Почему не используются суровые тайные механизмы винды? Винда после разговора с NTP сервером посчитала, что таймер компа, куда её установили, или локальный источник синхронизации(?) ненадёжен?
                    Часы как отставали так и отстают. .
                    Подбираю lpTimeAdjustment, и наконец, вызов setsystemtimeadjustment с параметрами 157250, false даёт нужный результат. В течении часа дельта остаётся примерно постоянной(систему ничем не нагружаю).
                    Ага, а что будет, если вызвать setsystemtimeadjustment с lpTimeAdjustmentDisabled, установленным в true? По идее, система должна вернуться к интервалам по умолчанию, и снова перевести свои "часы" в "режим отставания". На самом деле, ничего такого не происходит, "часы" продолжают тикать относительно точно, хотя GetSystemTimeAdjustment возращает как и должен 157250,156250,true.

                    Вот такая странная история. :huh:

                    Осталось ещё проверить ход часов в БИОСе, без загрузки системы, и надеяться, что БИОС достаёт время из RTC, а то мало ли.

                    Меня начали терзать смутные сомнения, какое "время" возвращает GetSystemTime? :unsure:
                    Запустил мультимедийный таймер с периодом 1000 мс. На каждый тик(получается раз в секунду) вызываю getsystemtime и считаю, сколько времени прошло с момента предыдущего вызова. Если не использовать корректировку "часов", то интервал, полученный из getsystemtime точно соответствуют интервалу "1000 мс". Т.е., часы и мультимедийный таймер тикают одинаково. Если откорректировать ход "часов" винды при помощи setsystemtimeadjustment, появляются расхождения между интервалами мультимедийного таймера и временем, вычисленным из значений, возращаемых GetSystemTime.
                    В общем, не понимаю я, как эта винда работает. :-?

                    Добавлено
                    Цитата
                    Ага, а что будет, если вызвать setsystemtimeadjustment с lpTimeAdjustmentDisabled, установленным в true? По идее, система должна вернуться к интервалам по умолчанию, и снова перевести свои "часы" в "режим отставания". На самом деле, ничего такого не происходит, "часы" продолжают тикать относительно точно, хотя GetSystemTimeAdjustment возращает как и должен 157250,156250,true.

                    Ой, оказывается спустя какое-то время(через час? :blink: ), винда то ли вспоминает про lpTimeAdjustmentDisabled=true, переданный ей в setsystemtimeadjustment, то ли по каким-то иным мотивам, но снова задействует свои тайные механизмы и восстанавливает lpTimeAdjustment = 156250, .
                    Сообщение отредактировано: Prince -
                      RTC за время сеанса используется только один раз - при загрузке системы время из него считывается и устанавливается системное время. После этого системные часы и RTC идут совершенно независимо.
                      Консольная команда TIME вроде бы устанавливает время и в системых часах и в RTC. Вроде бы аналогично действует ручная перестановка времени в настройках времени.
                      При корректировке времени по NTP RTC точно не корректируется.

                      Цитата Prince @
                      надеяться, что БИОС достаёт время из RTC, а то мало ли.
                      А больше ему неоткуда время доставать. Именно RTC он и показывает (в реальном времени).
                        Цитата
                        При корректировке времени по NTP RTC точно не корректируется.

                        Во всяком случае, если синхронзацию выполнять "вручную", то корректируется. Не понимаю пока причин и смысла НЕ корректировать RTC по NTP, если такая возможность есть.

                        Цитата
                        RTC за время сеанса используется только один раз - при загрузке системы время из него считывается и устанавливается системное время. После этого системные часы и RTC идут совершенно независимо.

                        Тогда каков механизм синхронизации системных часов?
                        Цитата
                        In this mode, the system may adjust the time of day using its own internal time synchronization mechanisms. These internal time synchronization mechanisms may cause the time-of-day clock to change during the normal course of the system operation, which can include noticeable jumps in time as deemed necessary by the system.

                        Что это за внутренние механизмы синхронизации?
                          Строго говоря системные часы должны работать даже при отсутствии часов реального времени. В этом случае система при загрузке должна спросить текущие дату/время у того, кто производит загрузку. Так было в мэйнфреймах, и в первых PC. Потом появились энергонезависимая память для хранения настроек BIOS, а вскоре эту память объединили с часами. Ход часов не регулировался, хотя можно было уже после загрузки DOS программно корректировать время. Я по крайней мере когда-то давно писал такую программу. Она проверяла, сколько (по аппаратным часам) прошло времени с предыдущего запуска, спрашивала время, и вычисляла на сколько надо корректировать ход часов. Сейчас часы по ощущениям стали поточнее, вдобавок появилась возможность подстройки часов по сети.

                          Системные часы реализованы как программный счётчик прерываний. Сколько-то раз в секунду происходит прерывание и по каждому такому прерыванию программа системных часов увеличивает на некоторое значение системное время. Раз в 2, вроде, часа (настраивается), система пытается связаться с сервером "точного" времени, определяет, на сколько отличается время и на сколько произошел уход часов, и в соответствии с этим уходом корректирует константу приращения, чтобы к следующей проверке часы показывали точное время. Это позволяет сохранить непрерывность хода времени в системе.
                          Если показания часов отличаются более чем на 2 (может и больше) секунды, то программа не пытается сохранить непрерывность, а просто переустанавливает часы, считая, что произошёл какой-то сбой. Коррекцию константы она при этом может производить или не производить в зависимости от величины расхождения.
                            Врубить синхронизацию через инет? Может кварц на материнке помят иль кондёр сдох иль еше чего, по ходу проблема железячная.
                              И вот как заставить часы в виндовс тикать правильно? Часы в БИОС тикают точно. Часы в винде на 20 секунд за час отстают.
                                Цитата DMX_XC @
                                Каждый раз после выключения компьютера и последующего включения через более 1 часа время на компьютере уходит вперед минут от 8 до 30 из-за чего это может быть?

                                Windows 7 64

                                Такая же фигня. Периодически время на компе скачком меняется на 1 час. Ровно на 1 час. Назад.
                                Система Win Xp.
                                Что бы это могло быть?
                                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                0 пользователей:


                                Рейтинг@Mail.ru
                                [ Script execution time: 0.0860 ]   [ 14 queries used ]   [ Generated: 18.06.26, 01:59 GMT ]