Problem Roku 2000: zagrożenie czy szansa dla rozwoju informatyki?

Niektóre firmy komputerowe definiują gotowość systemów informatycznych (SI) do pokonania Problemu Roku 2000, jeżeli:

* wszystkie elementy składowe SI - w tym, pochodzące od różnych producentów (szczególnie: hardware, firmware i software) używane we wszelkich kombinacjach z oprogramowaniem aplikacyjnym - poprawnie rejestrują, pobierają, wymieniają między sobą, wyświetlają i przetwarzają dane typu DATA oraz TIME (dotyczy to także operacji: logowania, diagnostyki, debugingu itd.);

* minimalny okres poprawnej pracy: 1999-2001, wliczając w to operacje na kalendarzu uwzględniającym rok przestępny (deklarowany okres poprawnej pracy, np. 1980-2035), czyli poprawne wyliczanie dni tygodnia oraz upływu czasu pomiędzy nimi.

Zakłócenia rachunku czasu prowadzonego przez wszelkiego typu procesory i układy, w tym komputery i systemy informatyczne, są możliwe szczególnie w systemach odmierzających czas lub wyliczających jego upływ, przykładowo:

** rejestrujących daty i czas, naliczających odsetki, okresy stażowe itp.

** porządkujących kontrolowane zdarzenia na wcześniejsze i późniejsze itd.

** podejmujących akcje sterujące na podstawie wyliczonego upływu czasu lub zdarzeń wcześniejszych/późniejszych itp.

Problemy powstały więc w wyniku powszechnego używania dwu cyfr do zapisu roku i przetwarzania dat. Zapis ten dotyczy:

* układów elektronicznych wraz z "zaszytym" oprogramowaniem (procesor chips);

* komputerowych baz danych (daty wprowadzane i generowane);

* oprogramowania systemowego i aplikacyjnego komputerów pobierającego, przetwarzającego i wyświetlającego daty, dni tygodnia, czas itd.

Może to mieć wpływ zarówno na tak proste układy, jak zamki sterowane cyfrowo i podsystemy nadzorowania pracy kotłów w elektrociepłowniach gazowych lub w maszynowni na statkach, jak i na kompleksowe systemy, np. system sterowania ruchem statków w porcie (VTS) za pomocą skomputeryzowanych radarów.

Jak wynika z wywodu - zilustrowanego poniżej - źródeł problemów w informatyce należy szukać w:

* różnorodnej konstrukcji płyt głównych komputerów oraz "zaszytych" programów (firmware) obsługujących zegar i liczniki czasu;

oprogramowaniu systemowym i narzędziowym (systemy operacyjne, SZBD itd.);

* oprogramowaniu aplikacyjnym każdego z podsystemów informatycznych, systemu automatyki, monitoringu itd. (wykonanym na zamówienie);

* braku unormowań w zakresie konwencji zapisu dat i czasu oraz kalendarza.

Generalnie uważa się, że przyczyną problemów jest oszczędność miejsca w pamięci, która narzucała wprowadzanie jedynie RR - dwu ostatnich cyfr roku do procesorów sterujących oraz do systemów informatycznych przez ostatnich kilkadziesiąt lat. Jest to jednak znaczne uproszczenie problematyki zapisu i przetwarzania dat, ponieważ nadal nie ma obowiązującej normy ISO, ustalającej sposób jednoznacznego zapisu dat, narzucającej nie tylko czterocyfrowy zapis roku, ale nawet kolejność poszczególnych segmentów daty:

* PN narzuca: RRRR/MM/DD; praktyka dopuszcza:

** RR/MM/DD lub DD/MM/RRRR - albo DD/MM/RR;

** praktyka amerykańska: MM/DD/YY lub MM/DD/YYYY albo 01-Mar-1999 itp.

Jest to bardzo istotne z punktu widzenia oprogramowania poszczególnych zbiorów i baz danych, z których każda musi być sprawdzana indywidualnie. Doświadczonych informatyków nie trzeba przekonywać, jakie znaczenie ma tzw. domyślny format daty (różny w różnych systemach komputerowych i pakietach programowych lub zależny od ustawienia przez administratora lub użytkownika).

Nadal nie ma obowiązującej normy ISO, ustalającej sposób jednoznacznego zapisu dat, narzucającej nie tylko czterocyfrowy zapis roku, ale nawet kolejność poszczególnych segmentów daty.


TOP 200