System clock что это в компьютере

Обновлено: 07.07.2024

Представляет тип clock, использующий данные системных часов в реальном времени.

Синтаксис

Remarks

Тип clock используется для получения текущего времени в формате UTC. Этот тип реализует экземпляр класса duration и шаблон класса time_point, а также определяет статическую функцию-член now() , которая возвращает время.

Часы считаются монотонными, если значение, возвращаемое при первом вызове now() , всегда не больше значений, возвращаемых при последующих вызовах now() .

Часы считаются постоянными, если они монотонны и интервал времени между соседними тактами является постоянной величиной.

Элементы

Общедоступные определения типов

Имя Описание
system_clock::duration Синоним для duration<rep, period> .
system_clock::period Синоним для типа, который используется для представления тактового периода при автономном создании экземпляра duration .
system_clock::rep Синоним для типа, который используется для представления числа тактов часов при автономном создании экземпляра duration .
system_clock::time_point Синоним для time_point<Clock, duration> , где Clock является синонимом для самого типа часов или для другого типа часов, настроенного на ту же эпоху и имеющего тот же вложенный тип duration .

Открытые методы

name Описание
from_time_t Статический. Возвращает объект time_point , наиболее точно соответствующий указанному времени.
сжать Статический. Возвращает текущее время.
to_time_t Статический. Возвращает объект time_t , наиболее точно соответствующий указанному объекту time_point .

Открытые константы

Имя Описание
Константа system_clock::is_monotonic Указывает, являются ли часы монотонными.
Константа system_clock::is_steady Указывает, являются ли часы постоянными.

Требования

Заголовок: <chrono>

Пространство имен: std::chrono

system_clock:: from_time_t

Статический метод, возвращающий time_point , который наиболее точно приблизительно соответствует времени, представленному TM.

Параметры

system_clock:: is_monotonic константа

Статическое значение, указывающее, являются ли часы монотонными.

Возвращаемое значение

В этой реализации system_clock::is_monotonic всегда возвращает false .

Remarks

Часы считаются монотонными, если значение, возвращаемое при первом вызове now() , всегда не больше значений, возвращаемых при последующих вызовах now() .

system_clock:: is_steady константа

Статическое значение, указывающее, являются ли часы постоянными.

Возвращаемое значение

В этой реализации system_clock::is_steady всегда возвращает false .

Remarks

Часы считаются постоянными, если они монотонны и интервал времени между соседними тактами является постоянной величиной.

system_clock:: Now

Статический метод, который возвращает текущее время.

Возвращаемое значение

Объект time_point, представляющий текущее время.

system_clock:: to_time_t

Статический метод, возвращающий значение time_t , которое наиболее точно соответствует времени, представленному по времени.

Часы, компьютер

Часы на компьютере (или системные часы) – встроенный таймер материнской платы компьютера, который содержит в себе специальный кварцевый механизм, подобный тому, какой используется в обычных современных часах. Он отвечает за правильный отсчёт времени и работает либо от батарейки BIOS, либо от собственного отдельного аккумулятора (на старых материнских платах).

Как правило, часы на компьютере располагаются в углу панели задач, где отображают текущее время, дату и день недели. В большинстве случаев они не требуют вмешательства пользователя. Однако, иногда часы начинают отставать или наоборот спешить. Вы можете, конечно, регулярно синхронизировать их с временем в Интернете, но лучше сразу выяснить причину сбоев, поскольку они могут сигнализировать даже о скором выходе Вашего ПК из строя!

Почему отстаёт или спешит время в Windows

Среди прочих нюансов настройки компьютера важно знать и уметь настраивать системные часы в трее. Особенно, если они вдруг начали отставать или спешить.

На написание статей меня очень часто наталкивают различные случаи из реальной жизни, которые связаны с компьютерами. Сегодняшняя статья – не исключение. И поводом для неё стало сразу несколько событий! Во-первых, мне захотелось на своём рабочем компьютере с Windows XP, чтобы рядом со временем и датой в трее отображался день недели. Во-вторых же, на одном из компов стали довольно сильно спешить системные часы.

Всё это и натолкнуло на мысль о том, что неплохо бы сделать статью полностью посвящённую часам на компьютере.

Как работают часы на компьютере

Ещё с самого появления компьютеров возникла необходимость использования в них часов. Для этих целей внедряли различные технологии пока в 1984 году компания IBM не применила стандартизированное решение, которое получило название часы реального времени (англ. real-time clock – сокр. RTC). Это была отдельная микросхема (изначально фирмы Dallas), которая содержала в себе кварцевый резонатор, работающий от собственной встроенной батарейки (позже аккумулятора) на частоте 32768 Гц (как в современных кварцевых часах):

Микросхема часов Dallas RTC

Материнские платы с микросхемами RTC существовали вплоть до 2000-х годов, а затем были вытеснены более современными решениями, в которых часы были интегрированы в южный мост с питанием от батарейки BIOS. По такому принципу и сегодня работает большинство компьютеров, и именно поэтому, даже если ПК отключён, время сохраняется и продолжает идти.

Что такое южный мост

Начальной точкой отсчёта для часов на компьютере является дата изготовления микросхемы южного моста. Именно до этой даты системное время может сбрасываться при различных сбоях. Но иногда оно может начать постепенно отставать или наоборот ускоряться. Давайте разберёмся из-за чего это происходит.

Почему часы на компьютере отстают или спешат

Для часов на компьютере есть допустимые нормы отклонения. Например, если за месяц набегает расхождение со временем в Интернете в плюс-минус пару минут, то это ещё не считается неполадкой. Если же подобная или большая разница набирается, к примеру, за сутки (или даже быстрее), то на такую ситуацию уже нужно обратить внимание.

Чаще всего причина как отставания, так и спешки часов компьютера, кроется в разряжающейся батарейке-таблетке BIOS (тип CR2032 номиналом 3 Вольта). Чем меньший ток она выдаёт, тем быстрее начинает резонировать кварц встроенного таймера и время начинает спешить. С продолжением разряда (ниже 2 Вольт) тока для таймера становится недостаточно и частота работы кварца падает. Соответственно, на этом этапе время начинает отставать.

Батарейка БИОС 2032

Если батарейку не заменить и после этого, то при каждом последующем запуске компьютера время вовсе будет сбрасываться до 00:00 даты производства микросхемы южного моста. Кстати, кроме времени будут сбрасываться и все настройки BIOS, что может привести к тому, что компьютер вовсе не будет нормально загружаться, требуя всякий раз задать нужные настройки!

Однако, иногда даже после замены батарейки проблема остаётся. И причины неправильного отсчёта времени в этом случае могут быть гораздо более серьёзными! Если подобная ошибка наблюдается на новом компьютере, то, вполне вероятно, что микросхема южного моста его материнской платы имеет заводской брак. В этом случае лучше всего заменить всю плату по гарантии.

Самым печальным же случаем, когда уже вряд ли чем-то поможешь, может быть наблюдение подобной проблемы на уже давно используемом компьютере. Если после замены батарейки часы так и продолжают работать неправильно, можно констатировать скорую "кончину" южного моста, что аналогично покупке новой материнской платы. В этом случае наилучшим советом будет начать откладывать средства на покупку новой "мамки", замена которой грядёт в ближайшие месяцы.

Кстати, есть способ проверить, правда ли причина сбоя в "подгулявшем" южном мосте. В некоторых BIOS имеется раздел, в котором отображаются показания датчиков температуры различных компонентов чипсета. Ищите, прежде всего показатели SB (South Bridge – южный мост) и NB (North Bridge – северный мост). Если температура южного моста примерно равна или даже выше, чем у северного, проблема однозначно в нём:

Температура в БИОС

Критической температурой в большинстве случаев является 90 градусов по Цельсию. Если эта температура у Вас ниже (как на скриншоте выше), то можно попытаться, хотя бы временно, спасти Ваш южный мост. Для этого нужно позаботиться о его охлаждении. На некоторых материнских платах в районе южного моста предусмотрены специальные выемки или петли для крепления радиатора либо даже кулера:

Радиаторы южного моста

Если же крепёжных приспособлений для охлаждающих элементов не наблюдается, можно купить любой небольшой радиатор и приклеить его прямо к микросхеме на специальный теплопроводящий клей (например, отечественный АлСил-5 или китайский Heatsink Plaster):

Радиатор южного моста и термоклей

Если Вам удалось снизить температуру южного моста или устранить сбой системных часов заменой батарейки BIOS, самое время приступить к настройке времени и даты в операционной системе.

Настройка времени и даты

В различных версиях Windows (за исключением XP и более ранних) внешний вид окна настроек системных часов практически одинаков и вызывается оно либо из контекстного меню часов пунктом "Настройка даты и времени", либо из Панели управления разделом "Дата и время":

Настройка времени Windows 7, 8, 10

Окно настроек содержит три вкладки. На первой, которая открывается по умолчанию, мы, собственно, и можем задать дату и время. Правда, чтобы сделать это, нужно обладать правами Администратора, поскольку изменение данных настроек контролируется системой UAC. Нажмите на кнопку "Изменить дату и время", подтвердите свои права и в открывшемся окне при помощи календарика укажите текущий день, а в окошко сбоку введите точное время. Кстати, обратите внимание на кнопку "Изменение параметров календаря"! Мы к ней ещё вернёмся:

Установка времени и даты

На первой вкладке также есть кнопка "Изменить часовой пояс". Следите, чтобы он был указан правильно, поскольку данный параметр отвечает за корректную синхронизацию со временем в Интернете и перевод часов на зимнее/летнее время.

Вторая вкладка носит название "Дополнительные часы". Здесь мы можем активировать отображение до двух дополнительных часов, которые находятся в разных часовых поясах мира. Просто активируйте опцию и выберите часовой пояс. Дополнительные часы будут отображаться в небольшом всплывающем окошке при наведении на основные:

Установка дополнительных часов

Третья вкладка – "Время по Интернету". С помощью этой вкладки Вы можете синхронизировать часы компьютера с серверами точного времени в Сети. По умолчанию в новых Windows синхронизация происходит еженедельно автоматически, но при желании, можно сделать это и вручную. Для этого нужно нажать кнопку "Изменить параметры" (требуется подтверждение UAC), в открывшемся окне в выпадающем списке выбрать сервер синхронизации и нажать кнопку "Обновить сейчас":

Установка дополнительных часов

Здесь стоит упомянуть о том, что не все NTP-сервера (NTP – "Network Time Protocol") могут работать корректно и в списке их может быть немного (от 2 до 5). Для более быстрой и точной синхронизации иногда имеет смысл добавить вместо предложенных свои сервера, которые находятся в Вашей стране. Например:

Добавить их для разовой синхронизации можно прямой вставкой в окошко выпадающего списка, однако, при такой вставке сервер не всегда сохраняется после перезагрузки компьютера. Для перманентного сохранения придётся прибегнуть к правке реестра. Для этого запустите Редактор реестра (WIN+R – regedit – Enter), перейдите в ветку HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\DateTime\Servers и отредактируйте или добавьте нужные адреса серверов:

Добавление серверов синхронизации времени

Кроме того, в реестре же Вы можете изменить частоту синхронизации часов. Для этого перейдите в раздел HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient и найдите в нём параметр SpecialPollInterval. Он содержит время в секундах между обновлениями. По умолчанию здесь стоит значение 604800 секунд, что соответствует ровно 7 дням. Можете установить ежедневное обновление (86400 сек.), открыв редактор параметра, переведя систему счисления в десятичную и введя нужное число.

А напоследок вернёмся к уже упомянутой функции "Изменение параметров календаря", которую можно найти в окне настройки времени. Манипулируя данными параметрами, мы можем изменить отображение времени и даты на системных часах. Правда, из времени можно настроить только 12-часовый или 24-часовый формат, а вот датой интереснее:

Настройка формата даты на часах

Форматы вывода даты в трее

К сожалению, подобные махинации ограничены в длине. Если её превысить, то вторая строчка часов в трее с отображением даты просто исчезнет. Также, данные манипуляции, увы, не работают в Windows XP, поэтому, сколь я ни бился, но на работе заставить часы показывать то, что мне нужно штатными средствами не удалось. Но добиться практически всего можно, используя специальные программы.

Программы для работы с системными часами

Все программы для работы с часами в Windows можно условно разделить на две группы: те, которые направлены на настройку внешнего вида и те, которые нужны для синхронизации времени. Начнём с последних. Их существует довольно много (можете поискать по запросу "программы для синхронизации часов"), но смысл всех сводится к тому, чтобы без правки реестра можно было синхронизировать время со сторонними NTP-серверами.

Общим минусом практически всех программ-синхронизаторов времени является их англоязычность (по крайней мере мне не удалось найти толковых русскоязычных приложений подобного рода). В качестве же хорошего примера такого софта рекомендую разработку нашего бывшего соотечественника Дениса Бабкина под названием tSync:

Синхронизация времени tSync

Кстати, программа будет полезна и для системных администраторов, поскольку имеет модуль удалённой синхронизации времени. Чтобы обновить часы на компьютерах по локальной сети, на каждый из них нужно скопировать из архива файл tSyncRemote.exe и поместить его в автозагрузку. Теперь, если активировать галочку "Enable TCP/IP time sync" в основном окне программы, Вы сможете увидеть список доступных удалённых машин, на которых можно быстро обновить время.

Ну а теперь, что касается программ для изменения внешнего вида часов в трее. Их тоже существует весьма много, причём, как платных, так и бесплатных. Но все их можно разделить на две подгруппы. К первой отнесём программы, направленные на всевозможные украшательства, а ко второй – на расширение функционала.

Ярким представителем программ первой категории можно назвать имеющуюся у нас на сайте утилиту LClock:

LClock с календарём в Windows XP

С помощью данной программы Вы можете менять стиль, цвет и шрифт часов в трее, делая их более оригинальными. Кроме того, LClock имеет встроенный улучшенный календарь с поддержкой напоминаний. Единственный минус – программа не работает на Windows 8 и старше. Для новых систем единственным полнофункциональным аналогом можно назвать Atomic Alarm Clock, но эта программа, увы, платная. Единственным частично работающим аналогом подобного рода оказалась старенькая портативная программка Tray_Clock, но она не заменяет, а только перекрывает стандартные часы.

Я же, если помните, изначально искал программу, которая бы смогла вывести мне день недели на часах в трее Windows XP. Это уже как раз другой тип программ, который направлен на улучшение функционала (хотя некоторые функции кастомизации часов там тоже есть). И такой программой стала AlfaClock Free (скачать можно в архиве с материалами к статье по ссылке внизу):

AlfaClock Free

Данная программа позволяет отрегулировать вручную ширину области панели задач, отведённую под часы, и вывести на самих часах информацию о времени и дате практически в любом нужном Вам формате! К сожалению, как и рассмотренная выше программа LClock, AlfaClock Free работает только на компьютерах с Windows 7 максимум.

Выводы

Как видим, часы на компьютере при всей их кажущейся простоте – вещь довольно интересная. К сожалению, начиная с Windows 8, Microsoft существенно урезала возможности изменения внешнего вида часов на панели задач при помощи сторонних программ. Но, зато дала возможность более гибко настраивать формат их вывода путём штатных настроек. А в Windows 10, например, добавив в реестр параметр ShowSecondsInSystemClock (DWORD (32 бита)) со значением "1" в ветке HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced, Вы сможете отобразить на часах в трее секунды!

Словом, настраивать есть что, было бы желание. Ну и в качестве заключения, хотел бы выразить небольшую просьбу. Если, вдруг, Вам где-то попадутся хорошие бесплатные программы для улучшения вида часов в новых версиях Windows, было бы очень здорово, если бы Вы написали о них в комментариях. Буду очень признателен!

Любой поклонник электроники или компьютеров знает, что компьютеры, которые мы используем каждый день, оснащены часы реального времени и что благодаря аккумулятору, встроенному в материнскую плату, часы всегда идут вовремя, даже когда компьютер отключен от сети. ручей. Но вы когда-нибудь задумывались Как это работает и особенно, каково использование ПК с этими внутренними часами?

У внутренних часов реального времени ПК есть утилита, которая выходит далеко за рамки показа времени на панели задач, и это означает, что, как мы буквально объясним ниже, ПК не мог бы работать без них. Почему? Мы сразу же подробно объясним вам это, но в качестве предварительного просмотра мы скажем вам, что без этих часов процессор ПК не знал бы, когда он должен выполнять вычисления.

Что такое часы реального времени или RTC и для чего они нужны?


Часы реального времени, также известные как RTC для его аббревиатуры на английском языке " часы реального времени «, Это компьютерные часы, обычно в виде интегральной схемы (на материнских платах это всего лишь один из множества микросхем), которые созданы с единственной целью - следить за временем. Естественно, он считает часы, минуты, секунды, месяцы, дни и даже годы.

RTC можно найти как в компьютерах (настольных и портативных), так и в интегрированных системах, серверах и любых электронных компонентах, имеющих процессор, поскольку для этих элементов требуется точный хронометр для их работы, как мы вскоре объясним. Очень важно иметь возможность продолжать работать, даже когда компьютер выключен или если батарея разряжена, поэтому обычно они носят с собой батарея в формате CR1220 или CR2032 что гарантирует автономную работу на долгие годы.

Часы реального времени вашего ПК должны иметь возможность точно отсчитывать время, даже когда устройство выключено, поскольку они часто используются в качестве триггера для включения устройства или для запуска таких событий, как будильники. В интегральных схемах старых систем используются литиевые батареи, в то время как в некоторых современных устройствах для этого используются вспомогательные батареи (например, батарея, о которой мы говорили) или даже суперконденсаторы. Микросхемы RTC, в которых используются суперконденсаторы, являются перезаряжаемыми и при желании могут быть припаяны, но, как мы уже упоминали сегодня, большинство из них используют батарею, которая при удалении сбрасывает RTC в исходную точку (и вам нужно вернуться, чтобы установить системное время) .

Módulo RTC

ИС RTC регулируют время с помощью кварцевого генератора, поэтому они не зависят от тактовых сигналов, как большинство аппаратных часов (например, CPU / ЦЕНТРАЛЬНЫЙ ПРОЦЕССОР, который зависит от этих часов реального времени). Помимо функции синхронизации системы и ее часов, часы реального времени гарантирует, что все процессы в системе правильно синхронизированы, что важно для работы ЦП. Хотя некоторые могут возразить, что это работа внутренних системных часов, на самом деле это зависит от часов реального времени.

Преимущества использования RTC на ПК:

  • ИС RTC оказались более необходимыми, чем другие методы, такие как программирование таймера контроллера.
  • Это освобождает основную систему от критических задач по времени.
  • Он имеет низкое энергопотребление и практически идеальную стабильность частоты даже при низком заряде батареи.

Как работает RTC на ПК?

Диаграмма RTC

Информация о часах реального времени может быть прочитана микропроцессор , обычно через последовательный интерфейс, чтобы программное обеспечение или встроенное ПО могли выполнять функции, зависящие от времени. Процессор синхронизирует системное время с часами реального времени в абсолютном отсчете времени и, не будучи похожим на атомные часы, практически не имеет никаких отклонений, что позволяет процессору выполнять точные вычисления. На изображении выше вы можете увидеть схему работы простого модуля RTC.

RTC обычно подключается к ЦП через Последовательная шина SPI или I2C , и может содержать ряд других функций, таких как резервная память, сторожевой таймер для отслеживания работы процессора или таймеры обратного отсчета для генерировать события в реальном времени . Некоторые RTC включают в себя выходы секундных или минутных прерываний и достаточно умны и автономны, чтобы учесть високосные годы .

Esquema RTC

Часы реального времени отсчитывают время, отсчитывая циклы генератор , обычно из кристалла кварца и работает на 32.768 кГц . Это позволяет RTC обнаруживать пульсации 50/60 Гц от источника питания или обнаруживать и накапливать переходы от тика устройства GPS. RTC, который делает это, работает как контур фазовой автоподстройки частоты (ФАПЧ), изменяя свое внутреннее опорное значение тактовой частоты, чтобы «синхронизировать» его с внешним сигналом. Если RTC теряет свое внешнее задание, он может снова обнаружить это событие (поскольку ФАПЧ выходит из строя) и работать автономно со своим внутренним генератором.

RTC, работающий по собственной внутренней ссылке, будет интегрировать предел погрешности связаны с абсолютной точностью эталонного кристалла и будут зависеть от ряда условий, в том числе температура . Кристаллы предназначены для работы в диапазоне температур от -10 ° C до 60 ° C, и их точность снижается, если температура отклоняется от этого диапазона.

Precisión cristal RTC

Некоторые RTC имеют встроенную температурную компенсацию, которая может расширить и повысить точность кварцевого генератора. Кристаллы также стареют, и это меняет их физическую природу, так что со временем они теряют точность. Типичные недорогие кристаллы, используемые в аппаратном обеспечении ПК, имеют допуск по частоте +/- 20 ppm (частей на миллион). Это означает, что кристалл с такой погрешностью может дрейфовать до 72 мс в час или 1.7 секунды в день, поэтому иногда потребуется калибровка.

Процессор, подключенный к RTC, получает обновленное системное время и постоянно записывает это новое значение в RTC, чтобы избежать этих отклонений, то есть CPU постоянно калибрует RTC чтобы всегда быть точным.

Часы на компьютере отстают на час

Независимо от того, используется на компьютере интернет-подключение или нет, часы в системном трее всегда показывают точное время даже если ПК был долгое время выключен. Такая правильность показа времени обеспечивается устройством материнской платы, получающим постоянное питание от батарейки BIOS. Однако самой распространенной причиной отставания системных часов на час является неправильно выбранный часовой пояс, а также отключение опции автоматического перевода часов на летнее время. Это первое, которую следует проверить.

    Чтобы открыть окно настроек даты и времени, вызовите нажатием комбинации клавиш Win + R окошко выполнения быстрых команд, введите в него команду timedate.cpl и подтвердите ввод. Это универсальный способ получения доступа к настройкам времени, работающий во всех популярных версиях Windows.

Часы на компьютере отстают на час-1

Часы на компьютере отстают на час-2

Часы на компьютере отстают на час-3

Часы на компьютере отстают на час-4

Причина 2: Сбой настроек в BIOS

В некоторых случаях причиной отставания часов может стать сбой настроек в самом BIOS. Чтобы исключить эту причину, необходимо зайти на компьютере в настройки базовой системы ввода/вывода.

Часы на компьютере отстают на час-6

Причина 3: Севшая батарейка CMOS

На старых компьютерах причиной рассмотренной проблемы может стать севшая батарея CMOS, питающая BIOS. С другой стороны, такой сценарий предполагает отставание системных часов на секунды или минуты, а не ровно на один час. Если неполадка всё же вызвана неисправной батареей, решается проблема ее заменой.

Посмотрите в технических характеристиках маркировку батарейки материнской платы. Скорее всего, она будет иметь маркировку CR2032. Приобретите новую в магазине компьютерной техники. Затем полностью обесточьте ПК и снимите крышку системного блока, найдите на материнской плате батарею CMOS, аккуратно оттяните пинцетом или отверткой удерживающую защелку и извлеките батарею. Вставьте в гнездо новый экземпляр, закрепите, закройте системный блок и включите компьютер.

Часы на компьютере отстают на час-7

Закрыть

Мы рады, что смогли помочь Вам в решении проблемы.

Отблагодарите автора, поделитесь статьей в социальных сетях.

Закрыть

Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.

Читайте также: