Rok 2000 prichádza

Predstavte si nasledujúcu situáciu: 31. december 1999. Na hodinách zostáva niekoľko sekúnd do polnoci. Šampanské je pripravené, všetci očakávajú príchod Nového roka. 5 sekúnd, 4 sekundy, 3, 2, 1. Tma. A ticho. Nič sa nedeje, zrejme vypadol prúd. Oslava pokračuje v rozpačitom tóne, so svetlom a hudbou by bola veselšia.
Počet zobrazení: 1141

Predstavte si nasledujúcu situáciu: 31. december 1999. Na hodinách zostáva niekoľko sekúnd do polnoci. Šampanské je pripravené, všetci očakávajú príchod Nového roka. 5 sekúnd, 4 sekundy, 3, 2, 1. Tma. A ticho. Nič sa nedeje, zrejme vypadol prúd. Oslava pokračuje v rozpačitom tóne, so svetlom a hudbou by bola veselšia. V miestnosti sa ochladilo, asi prestali hriať radiatory. Čo len v tých elektrárňach robia? Jeden telefonát na dispečing možno napovie, ako dlho to bude trvať. Ale telefón mlčí. Nepočuť ani oznamovací tón. Zlyhal aj mobilný telefón.

Možno aj takýto priebeh bude mať vaša tohtoročná silvestrovská oslava. Na vine sú počítače. Zo dňa na deň je aktuálnejšia otázka, či zvládnu rok 2000. Počítačoví odborníci sa rozchádzaju v názoroch na dôsledky nepripravenosti počítačov na rok 2000. Pesimistické scenáre, medzi ktoré patrí aj úvod tohto článku, hovoria o zavretých fabrikách a bankách, havarovaných lietadlách či zničených atómových elektrárňach. Optimisti tvrdia, že rok 2000 začneme bez väčších problémov a všetko bude fungovať tak ako v tomto storočí. Ako to už býva, pravda bude asi niekde uprostred.

Problémový rok 2000

V čom spočíva "problém roku 2000"? Aby sme presne zodpovedali túto otázku, musíme sa vrátiť o niekoľko desaťročí dozadu. V šesťdesiatych rokoch bol výkon počítačov oproti dnešnému približne 10 000-krát nižší, rovnako aj kapacita na uchovávanie informácií. Výrobcovia počítačov a programátori z úsporných dôvodov zaviedli nepísané pravidlo, že pri práci s dátumom stačí uchovávať iba posledné dve číslice z označenia roku. Napríklad dátum "28/11/78" znamenal 28. november 1978. Počítač už automaticky pridal pred dvojčíslie označujúce rok číslice "19". Koniec storočia bol v nedohľadne, takže všetko bolo v najlepšom poriadku. S pribúdajúcimi rokmi sa však začala vynárať otázka: Ako si počítač poradí s označením roku v ďalšom storočí? Ak by sme dátum 12. marec 2001 uchovali ako 12/03/01, počítač by ho považoval za 12. marec 1901. Najskorší dátum, ktorý bude zle interpretovaný, je 1. január 2000. Problém roku 2000, vo svete tiež označovaný ako Y2K (Year 2000), alebo Millennium Bug vznikol práve týmto spôsobom.

Počítače a softvér pre ne sa vyrábali s dvojciferným uchovávaním označenia roku až do začiatku 90-tych rokov (neskôr sa pristúpilo k uchovávaniu roku štyrmi číslicami). V roku 2000 môžeme očakávať problémy najmä preto, lebo veľké množstvo z nich je v prevádzke dodnes. Napríklad: 10. januára 1998 (v počítači 10/01/98) ste si uložili do banky peniaze na vkladnú knižku. 10. januára 2001 (v počítači 10/01/01) ich chcete vybrať. Počítač chce vyrátať výšku vašich úrokov a na to potrebuje poznať, ako dlho ste mali peniaze v banke uložené. Kedže nesprávne interpretuje dátum výberu ako 10. január 1901, dospeje k nepoužiteľnému výsledku, že peniaze ste mali v banke uložené -97 rokov (1901-1998=-97) namiesto správneho výsledku 3 roky (2001-1998=3).

Takáto chyba by pre vás znamenala finančnú stratu. Horšie následky by spôsobil problém roku 2000 v chemických továrňach či atómových elektrárňach, kde počítače sledujú technologické procesy. Aj zbraňové systémy vojenských mocností sú závislé na počítačoch (tento fakt je vodou na mlyn pre ľudí, ktorí očakávajú v roku 2000 koniec sveta). Zlyhanie leteckých riadiacich systémov by spôsobilo havárie lietadiel, pričom najviac ohrozené budú tie, ktoré by boli vo vzduchu práve počas prechodu na rok 2000, t.j. o polnoci 31. decembra 1999. Nemecká letecká spoločnosť Lufthansa nedávno demonštrovala svoju pripravenosť na problém milénia, keď uskutočnila let svojho lietadla s počítačovým systémom nastaveným na 31. 12. 1999 a počas letu došlo k zmene aktuálneho času v systéme na 1. 1. 2000 bez ovplyvnenia chodu lietadla.

V týchto dňoch všetky dôležité inštitúcie ako banky, elektrárne, telekomunikačné spoločnosti, dokonca aj vlády deklarujú, že majú svoje informačné systémy pripravené na rok 2000. Ale až počas roka sa ukáže, či dostatočne. Výrobcovia programov označujú svoje programy logom "Y2K Compliant", ktoré informujú kupujúcich o pripravenosti programu na rok 2000. Niektoré poisťovne umožňujú poistiť sa proti škodám spôsobeným prechodom do nového tisícročia. Ako sa overuje pripravenosť systému? Najčastejšie pomocu simulácie. V systéme sa nastaví aktuálny dátum na niektorý kritický deň budúceho storočia. Vytvorí sa tak ilúzia, že rok 2000 už nastal. Potom sa simuluje normálna prevádzka systému a sleduje sa jeho správanie. Ak sa systém správa nezvyklo, prípadne nie je vôbec funkčný, je predpoklad, že na rok 2000 nie je pripravený. Inštitúcie správajúce sa prezieravo, vykonávajú takéto testy už niekoľko rokov, aby bol dostatok času na odstránenie objavených chýb. Ich odhaľovanie može byť pri rozsiahlych systémoch velmi komplikované. Musíme si napríklad uvedomiť, že rok 2000 nenastane na celom svete v rovnakom okamihu a niektoré systémy svojím rozsahom presahujú aj niekoľko časových pásiem.

Overte si počítač

Vy si môžete doma svoje PC overiť podobným spôsobom. Nastavte aktuálny dátum v počítači napríklad na 1. 1. 2000 a naďalej počítač používajte. Ak sa do niekoľkých dní neobjavia nijaké problémy, váš počítač je podľa všetkého na rok 2000 pripravený. Potom môžete vrátiť aktuálny dátum v počítači späť na skutočný. Tento postup overovania však môže negatívne ovplyvniť funkčnosť niektorých vašich programov (a to aj po spätnom nastavení aktuálneho dátumu na skutočný) a preto ho výrobcovia softvéru neodporúčaju. Vhodnejšie je použitie niektorého z testovacích programov špeciálne určených na tieto účely. Na internete môžete ich širokú ponuku nájsť napríklad na stránke www.y2k.com . V počítačovom systéme môže existovať niekoľko zdrojov porúch pri prechode na rok 2000:

  • 1. Samotný počítač - pamätá si aktuálny dátum. Problém nastáva, ak podporuje iba dvojciferné uchovanie aktuálneho času.
  • 2. Operačný systém - dokáže v niektorých prípadoch odstrániť problém roku 2000 spôsobený počítačom.
  • 3. Aplikácie - programy využívajúce služby operačného systému.

Na úrovni operačného systému sú problémy s rokom 2000 zriedkavé. Ak sa predsa len vyskytnú, výrobca dodá k systému opravy (tzv. patche). Firma Microsoft k svojim operačným systémom Windows vydala už niekoľko takýchto "záplat" a zrejme ešte nejaké pribudnú (mimochodom, počuli ste už vtip o tom, že Microsoft vyhlásil odklad uvedenia Windows 2000 z technických príčin na prvý štvrťrok roku 1901?). "Záplaty" sa dajú voľne stiahnuť z internetu. Takéto opravy dokážu odstrániť problémy aj na úrovni aplikácií, ak tieto aplikácie správne využívajú služby operačného systému. Počítače a programy vyrobené v poslednej dekáde sú až na výnimky s rokom 2000 kompatibilné. Z tohto hľadiska sa javí naše zaostávanie za vyspelým svetom počas komunistického režimu ako výhoda, lebo väčšina počítačových systémov na Slovensku bola uvedená do prevádzky až v 90-tych rokoch, a preto má uvedené problémy menej systémov. Nové počítače uchovávajú označenie roka pomocou štyroch číslic, a preto sa s rokom 2000 vyrovnávajú ľahko.

Existuje niekoľko riešení problému roku 2000:

  • 1. Výmena staršieho systému za nový - drahšie, ale účinnejšie riešenie. Problémom pri zložitých systémoch je nájdenie a odstránenie všetkých chýb spôsobených prechodom na nový systém.
  • 2. Úprava existujúceho systému - lacnejšie riešenie. Systém sa buď prevedie na uchovávanie štvorciferného označenia roku, alebo sa upraví interpretácia dvojciferného označenia roku. Napríklad sa roky s označením "40-99" považujú za roky "1944-1999" a roky "00-20" za "2000-2020", a tým sa problém s dvojciferným označením roka presunie na rok 2021. Nie vždy sa však dajú robiť úpravy do existujúcich systémov. Či už pre to, že sú zastarané alebo dodávateľ systému jednoducho neexistuje

Drahý prechod

Odborníci sa rozchádzajú v názore na výšku vynaložených prostriedkov potrebných na riešenie problému roku 2000. Renomovaná konzultačná firma IDC odhaduje celosvetové náklady na 300 miliárd amerických dolárov, odhady niektorých firiem hovoria až o 850 miliardách amerických dolárov. Firmy vo svojich správach uvádzajú, že čím neskôr sa s riešením problému roku 2000 začalo, tým sú náklady vyššie.

V tieni problémov s dvojciferným uchovávaním roka v počítačoch zostal 29. február 2000, a pritom je to nemenej dôležitá okolnosť. Na prvý pohľad sa vám môže zdať, že je to obyčajný dodatočný deň v prestupnom roku. Ako vieme, za prestupný rok sa označuje ten, ktorý je deliteľný číslom 4 (1992, 1996 a pod.). Výnimkou v prestupnosti sú roky deliteľné číslom 100, napr. 1900, 2000, 2100, t.j. nie sú prestupné. Ak je však rok deliteľný číslom 400, nevzťahuje sa naň výnimka z deliteľnosti číslom 100, a preto rok 2000 bude prestupný. Niektoré počítačové systémy však berú do úvahy iba podmienku o deliteľnosti číslom 4 a číslom 100. To znamená, že rok 2000 nepovažujú za prestupný a preto vôbec nerátajú s dátumom 29. február 2000. V tento deň budú mať nastavený nesprávny dátum 1. marec 2000 a pôjdu o deň dopredu. Naštastie, pri odstraňovaní problémov s rokom 2000 sa pamätá aj na 29. február 2000.

Problémy nekončia

Najbližší známy problém s časom by mal nastať v roku 2037. Súčasné programy totiž používajú na vnútornu reprezentáciu času 32-bitové číslo (bit je jednotka informácie) vyjadrujúce počet sekúnd, ktoré uplynuli od polnoci s dátumom 1. 1. 1970 (podľa dohody výrobcov softvéru). Toto číslo môže dosiahnuť maximálnu hodnotu 2147483648 (231). Toľko sekúnd zodpovedá približne 68 rokom. Programy používajúce takýto spôsob spracovania času zlyhajú pri práci s dátumami po roku 2037. Našťastie má ľudstvo na to ešte 37 rokov, aby sa na tento problém pripravilo. Môžeme dúfať, že v roku 2037 sa už nebudú používať súčasné systémy - veď v tom čase dosiahne ich vek takmer 40 rokov! Viete si predstaviť, ako vyzerá 40-ročný počítač? Hoci... pred desiatimi rokmi ľudia dúfali, že vtedajšie počítače sa v roku 2000 nebudú používať, a dnes tu máme aj preto problém s rokom 2000. Ďalší problém s dátumom čaká ľudstvo zrejme v roku 10 000, keď sa bude prechádzať zo 4-ciferného označenia roka na 5-ciferné. Ale to je ešte vo hviezdach.

Koniec sveta v roku 2000 iste nenastane. Možno počas prvých pár dní nového storočia budeme musieť prejaviť trocha trpezlivosti, kým nám technika bude zasa slúžiť.

Autor je programátor-analytik

 

Facebook icon
YouTube icon
RSS icon
e-mail icon

Reagujte na článok

Napíšte prosím Váš text.

Blogy a statusy

Píšte a komunikujte

ISSN 1336-2984