Jest nowy pomysł na liczenie czasu - bez sekund przestępnych

Jest nowy pomysł na liczenie czasu - bez sekund przestępnych
27.07.2022 10:37
Zegar
Zegar
Źródło zdjęć: © Pixabay

Liczenie czasu w oprogramowaniu i sieci nie jest tak proste, jak mogłoby się wydawać. Programiści Mety wzięli ten problem na tapet i doszli do wniosku, że w przyszłości byłoby wygodniej zrezygnować z uwzględniania tzw. sekund przestępnych, które co kilka lat bierze się pod uwagę w obliczeniach.

Na problem zwrócił uwagę ZDNet, powołując się na szczegółową publikację techniczną Mety, ale to nie tylko twórcy Facebooka - bo także m.in. Amazon, Google czy Microsoft - woleliby już nie uwzględniać sekund przestępnych w swoich produktach.

Chodzi o konieczność korekty czasu UTC o tytułową sekundę raz na kilka lat, by skompensować zmiany w prędkości obrotowej Ziemi i różnice względem czasu UT1. Od 1972 roku, kiedy taką konieczność zaobserwowano, przestępną sekundę "dodano" do czasu UTC 27 razy.

Przestępne sekundy dodawane do czasu UTC na przestrzeni lat
Źródło zdjęć: © Meta
Przestępne sekundy dodawane do czasu UTC na przestrzeni lat

Meta sugeruje, że o ile takie rozwiązanie było świetne kilkadziesiąt lat temu, dzisiaj w praktyce może powodować więcej problemów niż korzyści. Przykładem mają być naukowcy, którzy obecnie często opierają swoje obliczenia na czasie UT1 lub TAI (ignorując UTC) oraz szeroko rozumiane oprogramowanie, które może nie być gotowe na taką zmianę - zwłaszcza, gdyby przestępną sekundę należało z jakichś przyczyn w przyszłości "odjąć" zamiast "dodać".

Problem jest nie tylko teoretyczny, a przykłady z niedalekiej przeszłości pokazują, jak poważne skutki może mieć niewłaściwa obsługa czasu w oprogramowaniu, niezależnie od pozornej prostoty sprawy. Na początku bieżącego roku głośny w Polsce był m.in. problem z obsługą dat w PKP, z kolei Meta przybliża przykład niedyspozycji reddita w 2012 roku przez ponad pół godziny właśnie w wyniku niewłaściwej obsługi przestępnej sekundy.

W efekcie Meta twierdzi, że w przyszłości powinno się zrezygnować z dodawania przestępnych sekund do czasu UTC, co powinno wyeliminować wszelkie potencjalne problemy w tym zakresie, a to nie bez znaczenia w świecie coraz bardziej zdominowanym przez zależne od czasu komputery. Głównym wyzwaniem jest tutaj kwestia testów, których w zasadzie nie da się rzetelnie przeprowadzić z uwagi na tak rzadko występujące zmiany w czasie UTC.

Oskar Ziomek, redaktor prowadzący dobreprogramy.pl

Programy

Aktualizacje
Aktualizacje
Nowości
Oceń jakość naszego artykułuTwoja opinia pozwala nam tworzyć lepsze treści.
Udostępnij:
Wybrane dla Ciebie
Komentarze (29)