W moim kraju oficjalny czas zmienia się w pierwszym miesiącu wiosny i jesieni. Kiedy oficjalny czas się zmienia, zmieniają się również zegary mojego telefonu komórkowego i komputera.
Komputer wie, która jest godzina? I wiesz, jakie oszczędności czasu w ciągu dnia powinny się zmienić, prawda? Dlatego napisanie w systemie operacyjnym wiersza kodu, który mówi: if (date=DST_START) then hour=hour+1 else if (date=DST_END) then hour=hour-1Zwykle to wystarczy, ale jeśli zasady się zmienią (jak w Ameryce Północnej w 2007 r.), Należy pobrać aktualizację systemu operacyjnego. Poza tym jedynym haczykiem jest to, że jeśli zegar systemowy jest nieprawidłowy (np. Zużyta bateria płyty głównej), nie może wiedzieć, kiedy zmienić godzinę (ale to nie ma znaczenia, ponieważ i tak musisz ustalić datę i godzinę).
Synetech
Odpowiedzi:
20
Większość systemów operacyjnych ma podstawowe zasady obliczania tego (np. W pierwszy weekend po określonej dacie), dzięki czemu mogą one same dostosowywać, nie wymagając połączenia z żadnym serwerem czasu. Może to jednak zepsuć zegar systemowy w przypadku zmiany oficjalnych zasad (np. Najnowsze zmiany w Rosji) lub przywrócenia kopii zapasowej systemu (więc system dwukrotnie dostosowuje czas).
Alternatywnie, niektóre urządzenia mogą kontaktować się ze zdalnym serwerem (najprawdopodobniej i tak robią to cały czas) lub korzystać z innego rodzaju wbudowanego znacznika czasu (np. Nadawanego jako część tekstu wideo / ceefax lub danych DVB, mówiąc o programach telewizyjnych i odbiorniki / nagrywarki / telewizory).
Edycja: Wystarczy wspomnieć: starsze wersje systemu Windows (np. Windows 95 lub Windows 98) nigdy nie ufały własnym oszacowaniom, dlatego zawsze informowały użytkownika, aby sprawdził poprawny czas po zmianie. Windows Vista i Windows 7 (nie jestem pewien co do wersji pomiędzy nimi) już tego nie robią i po prostu zakładają, że mają rację (oprócz korzystania z serwera czasu do synchronizacji zegara).
NTP nie zawiera żadnych danych DST ani stref czasowych. Po prostu określa aktualny czas w UTC. Klient musi osobno zastosować reguły odpowiednie dla swojej strefy czasowej, korzystając z bazy danych Olson lub równoważnej. Usługa Czas systemu Windows pojawia się wdrożyć tylko NTP, bez środków rozpowszechniania aktualizowane zasady Strefa czasowa: technet.microsoft.com/en-us/library/cc773061(v=ws.10).aspx
dhasenan
Okej, więc NTP może być używany tylko do ustalenia, czy zegar lokalny jest nadal / już w DST, na wypadek, gdyby system uznał, że należy wprowadzić poprawki (np. Po przywróceniu kopii zapasowej). Ale tak, brzmi logicznie, biorąc pod uwagę, że UTC / GMT + 0 nigdy się nie zmienia. Trochę zmieniłem zdanie.
Mario
7
Linux używa bazy danych stref czasowych IANA, aby wiedzieć, kiedy zmienia się czas letni. Inna historia dotyczy systemu Windows z wielu powodów. Po pierwsze, Windows używa RTC w czasie lokalnym, a Linux - w UTC. Wyobraź sobie, że DST zmienia się w systemie Windows. Pozwala to na „tworzenie” plików w przyszłości i może powodować pewne problemy. Ponadto starsze systemy Windows traktują DST inaczej, ponieważ wtedy były różne reguły DST i Microsoft nie zapewnia już aktualizacji dla tych wersji Windows, więc nie mogą teraz wprowadzać zmian w regułach DST.
Nie do końca prawda dla Windows, a przynajmniej nie dla starszych wersji. Windows jest w stanie to obliczyć samodzielnie (podobnie jak Linux), ale to coś wymaga aktualizacji z powodu braku reguł (jak połączyłeś).
Mario
1
Telefony komórkowe potrafią aktualizować czas przez sieć. Podobnie w przypadku systemu Windows aktualizuje się przez Internet. Działa to tylko wtedy, gdy wybrałeś automatyczną aktualizację czasu. Możesz sprawdzić ustawienia daty i godziny na telefonie komórkowym lub komputerze.
if (date=DST_START) then hour=hour+1 else if (date=DST_END) then hour=hour-1
Zwykle to wystarczy, ale jeśli zasady się zmienią (jak w Ameryce Północnej w 2007 r.), Należy pobrać aktualizację systemu operacyjnego. Poza tym jedynym haczykiem jest to, że jeśli zegar systemowy jest nieprawidłowy (np. Zużyta bateria płyty głównej), nie może wiedzieć, kiedy zmienić godzinę (ale to nie ma znaczenia, ponieważ i tak musisz ustalić datę i godzinę).Odpowiedzi:
Większość systemów operacyjnych ma podstawowe zasady obliczania tego (np. W pierwszy weekend po określonej dacie), dzięki czemu mogą one same dostosowywać, nie wymagając połączenia z żadnym serwerem czasu. Może to jednak zepsuć zegar systemowy w przypadku zmiany oficjalnych zasad (np. Najnowsze zmiany w Rosji) lub przywrócenia kopii zapasowej systemu (więc system dwukrotnie dostosowuje czas).
Alternatywnie, niektóre urządzenia mogą kontaktować się ze zdalnym serwerem (najprawdopodobniej i tak robią to cały czas) lub korzystać z innego rodzaju wbudowanego znacznika czasu (np. Nadawanego jako część tekstu wideo / ceefax lub danych DVB, mówiąc o programach telewizyjnych i odbiorniki / nagrywarki / telewizory).
Edycja: Wystarczy wspomnieć: starsze wersje systemu Windows (np. Windows 95 lub Windows 98) nigdy nie ufały własnym oszacowaniom, dlatego zawsze informowały użytkownika, aby sprawdził poprawny czas po zmianie. Windows Vista i Windows 7 (nie jestem pewien co do wersji pomiędzy nimi) już tego nie robią i po prostu zakładają, że mają rację (oprócz korzystania z serwera czasu do synchronizacji zegara).
źródło
Linux używa bazy danych stref czasowych IANA, aby wiedzieć, kiedy zmienia się czas letni. Inna historia dotyczy systemu Windows z wielu powodów. Po pierwsze, Windows używa RTC w czasie lokalnym, a Linux - w UTC. Wyobraź sobie, że DST zmienia się w systemie Windows. Pozwala to na „tworzenie” plików w przyszłości i może powodować pewne problemy. Ponadto starsze systemy Windows traktują DST inaczej, ponieważ wtedy były różne reguły DST i Microsoft nie zapewnia już aktualizacji dla tych wersji Windows, więc nie mogą teraz wprowadzać zmian w regułach DST.
Więcej na ten temat tutaj: http://en.wikipedia.org/wiki/Daylight_saving_time#Computing
źródło
Mówiąc najprościej, twój system operacyjny przeprowadza aktualizację, aby dostosować czas.
Windows robi to poprzez Windows Update , a Linux za pomocą plików strefy czasowej .
źródło
Telefony komórkowe potrafią aktualizować czas przez sieć. Podobnie w przypadku systemu Windows aktualizuje się przez Internet. Działa to tylko wtedy, gdy wybrałeś automatyczną aktualizację czasu. Możesz sprawdzić ustawienia daty i godziny na telefonie komórkowym lub komputerze.
źródło