Nur nichts verschlafen!

Kurzsichtige Anwendungen

Aufgrund der Zählverfahren der Betriebssysteme gibt es neben dem 31.12.1999 noch eine Reihe anderer Stichtage, an denen Systeme platzen können. Zwar überstreicht DOS mit 7 Bit einen Zeitraum von 1890 bis 2107. Aufgrund der heute verwendeten Bios-Funktionen dürfte es allerdings im Jahre 2099 Probleme hageln. Und schon vorher dürfte es Ärger mit dem Dateisystem geben. Windows NT verwendet einen internen 64-Bit-Zähler, der die seit dem Jahr 1600 verstrichenen zehnmillionstel Sekunden registriert. Allerdings unterstützen die Funktionen zur Zeiteinstellung nur den Bereich von 1980 bis 2099. Auch die Ansi-C-Bibliotheken und die "Microsoft Foundation Classes" (CTIME) ermitteln die Zeit aus einem Zähler, der wie bei Unix über die seit dem 1.1.1970 vergangenen Sekunden Buch führt. Der Zähler-überlauf findet am 19.01.2038 statt.

Die Beurteilung der Jahr-2000-Tauglichkeit von Anwendungen ist etwas schwieriger und richtet sich nach folgenden Kriterien:

- Das ermittelte Datum muß immer dem realen Datum entsprechen.

- Das Programm erkennt das Jahr 2000 als Schaltjahr.

- Alle datumsrelevanten Felder umfassen zwei Ziffern für das Jahrhundert.

- Es treten keine festen Jahrhundertzahlen in Masken auf.

- Die Subtraktion eines vergangenen Datums von einem gegenwärtigen oder zukünftigen ist niemals negativ.

Die Frage, ob ein Anwendungsprogramm Jahr-2000-tauglich ist, kann nur der Hersteller beantworten. Viele Anwendungen wie zum Beispiel MS-Access füllen intern Datenfelder vom Typ Datum automatisch mit vier Stellen auf, wobei sie sich auf das Betriebssystem stützen. Kritisch wird es, wenn Jahreszahlen in Textfeldern landen. Viele Applikationen ermitteln das Jahrhundert mit einem Basisalgorithmus. Dabei liegen die Zeitfenster unterschiedlich, so daß ein Datenaustausch zwischen verschiedenen Anwendungen erschwert wird. Im Bereich der Windows-Anwendungen Word, Excel und Access kommen drei voneinander abweichende OLE-Mechanismen zum Tragen. Und wenn die Installation zusätzlicher Anwendungen weitere DLL-Bibliotheksversionen ins Spiel bringt, ist das Chaos perfekt.