Thats Y!problém řeší jak na úrovni BIOSu, tak i přímo v paměti CMOS. Dokonce opraví chybné datum v CMOS bez ohledu na to, zda se na něj nějaká aplikace dotázala, nebo ne - což ani nové BIOSy, "připravené na rok 2000", nedokáží.
A co nebude fungovat?
Je třeba si uvědomit, že to, co jsem výše popsal, je jen část problému. Další problém spočívá v aplikacích: účetnictví, ekonomické informační systémy, databáze, ale i mnohé programy, o kterých byste to vůbec nepředpokládali, používají datum nejen pro zobrazení, ale často i pro třídění, automatické zpracování dat, řízení cache proxy serverů atd. Pokud program předpokládá předčíslí 19 u všech roků (i když mu počítač správně oznámí rok 2000), může to mít někdy i velmi nepříjemné následky: ztrátu dat, špatně spočítané daně apod. Bohužel neexistuje univerzální řešení problému roku 2000 pro aplikace. Tento problém je třeba řešit individuálně pro každý používaný program konzultací s jeho dodavatelem.
Přestupné roky
V souvislosti s rokem 2000 se často mluví také o přestupnosti tohoto roku. Všichni víme, že letopočty dělitelné čtyřmi jsou přestupné, takže proč je to problém? Výjimkou z tohoto pravidla jsou totiž roky dělitelné stem, například rok 1900. Výjimkou z této výjimky je ale další pravidlo, které říká, že roky, které jsou navíc dělitelné 400 (jako je právě rok 2000), jsou přestupné, takže 2000 je rok přestupný.
Vzhledem k tomu, že celý problém s rokem 2000 vzniknul právě tím, že se s tímto rokem dlouho vůbec nepočítalo, bylo by zvláštní, kdyby se nějaký výrobce počítačového hardwaru nebo softwaru zabýval jeho přestupností. Navíc aby v přestupnosti vznikla chyba, musel by tento výrobce ošetřovat něco, co vlastně není potřeba: vzhledem k dvojnásobné výjimce platí pro rok 2000 stejné pravidlo o přestupnosti, jako pro kterýkoliv jiný od roku 1901 do 2099. Z toho je vidět, že je krajně nepravděpodobné, že by na nějakém počítači po datu 28.2.2000 následovalo 1.3.2000. Přesto jsme však narazili zatím na jediný počítač - přesněji řečeno, notebook - který tuto chybu má, a nejen to: dokonce na něm po dni 29.2.2000 (pokud jej ručně nastavíte) nastane 30.2.2000! Proto testy tuto možnost zohledňují a umožňují tuto skutečnost prověřit. Stejně tak program Thats Y!zajistí správné fungování v přestupných letech.
Technické podrobnosti
Primárním zdrojem informace o aktuálním datu a čase je paměť CMOS. O jejich aktualizování se stará obvod reálného času (RTC - Real Time Clock). Tyto dvě součásti počítače jsou napájeny baterií, což zajišťuje chod hodin i při vypnutém počítači.
Po zapnutí počítače se spouští BIOS, což je základní software (nebo také "firmware"), mající za úlohu především poskytnout operačnímu systému a aplikacím služby zpřístupňující nejzákladnějější vybavení počítače na nejnižší úrovni. Jednou z jeho služeb je také zprostředkování data a času, takže jej aplikace nemusí získávat přímo z paměti CMOS, ale snadněji prostřednictvím BIOSu. BIOS je obvykle jen zprostředkovatelem, který si datum přečte z CMOS a oznámí jej dotazujícímu se programu, ale některé lepší BIOSy dokáží chybné datum opravit. Ani tyto BIOSy však obvykle neřeší celý problém: některé datum opraví jedině při startu počítače, ale nikoli za běhu, některé jej sice opraví za běhu, ale jen pro aplikace, dotazující se BIOSu. Datum v CMOS zůstává minimálně do příštího startu počítače neopraveno. Proto i pro počítače s novým BIOSem, "kompatibilním s rokem 2000", doporučuji opravný program That's Y!, který řeší i tyto problémy.
Jakmile BIOS dokončí diagnostiku, kterou při startu počítače automaticky provádí, postará se o zavedení operačního systému. Tím může být například DOS, Windows 95/98/NT, OS/2, některá odrůda UNIXu atd. Operační systém tvoří další vrstvu, která aplikace odstiňuje od přímého přístupu k hardwarovým prostředkům počítače, a obvykle si udržuje svoji vlastní kopii data a času. Při startu ale samozřejmě musí zjistit čas z hardwaru - buďto prostřednictvím BIOSu, nebo přímo z paměti CMOS.
Zaujímavosti o referátoch
Ďaľšie referáty z kategórie