En lat fix för 20 år sedan betyder att Y2K-felet tar bort datorer nu
Av Chris Stokel-Walker
Parkeringsmätare, kassaregister och ett professionellt brottningsvideospel har fallit fel på en datorfel relaterat till Y2K-felet.
Y2020-felet, som har tagit många betalnings- och datorsystem offline , är en långvarig bieffekt av försök att fixa Y2K, eller millenniumfelet.
Båda härrör från hur datorer lagrar datum. Många äldre system uttrycker år med två siffror – till exempel 98 för 1998 – i ett försök att spara minne. Y2K-felet var en rädsla för att datorer skulle behandla 00 som 1900, snarare än 2000.
Annons
Programmerare som vill undvik att Y2K-felet hade två breda alternativ: helt skriva om deras kod, eller anta en snabbfix kallad ”fönster”, som skulle behandla alla datum från 00 till 20, från 2000-talet, snarare än 1900-talet. Uppskattningsvis 80 procent av datorer som fixades 1999 använde det snabbare och billigare alternativet.
”Windowing, även under Y2K, var det värsta av alla möjliga lösningar eftersom det slog problemet på vägen”, säger Dylan Mulvin vid London School of Ekonomi.
Läs mer: Binär babel: Fixa dators kodande buggar
Kodare valde 1920 till 2020 som standardfönster på grund av mittpunktens betydelse, 1970. ”Många programmeringsspråk och system hanterar datum och tider i sekunder från 1970/01/01, även kallat Unix-tid”, säger Tatsuhiko Miyagawa, ingenjör på molnplattformsleverantören Snabbt.
Unix är ett allmänt använt operativsystem inom en mängd olika branscher, och denna ”epoketid” ses som en standard.
Teorin var att dessa fönstersystem skulle vara föråldrade när 2020 anlände, men många är hänger fortfarande på och i vissa fall hade problemet glömts bort.
”Att fixa buggar i gamla äldre system är en mardröm: det är spagetti och ingen som skrev det finns fortfarande kvar,” säger Paul Lomax, som hanterade Y2K-buggen för Vodafone. ”De antog uppenbarligen att deras system skulle vara långt ur bruk till 2020. Mycket som de på 60-talet inte trodde att deras kod fortfarande skulle finnas kvar år 2000.” fix har nu nått slutet av det fönstret och har rullat tillbaka till 1920. Räkningar med verktygsföretag har enligt uppgift framställts med det felaktiga datumet 1920, medan tiotusentals parkeringsmätare i New York City har avvisat kreditkortstransaktioner på grund av datum glitch.
Läs mer: Hur tekniska buggar kan döda tusentals på våra sjukhus
Tusentals kassaregister tillverkade av det polska företaget Novitus har inte kunnat skriva ut kvitton på grund av ett fel i registerets klocka. Företaget försöker fixa maskinerna.
WWE 2K20, ett professionellt brottningsvideospel, slutade också arbeta vid midnatt den 1 januari 2020. Inom 24 timmar slutade spelets utvecklare, 2K, utfärdade en nedladdningsbar fix.
En annan mjukvara, Splunk, som ironica lly letar efter fel i datorsystem, visade sig vara sårbar för Y2020-felet i november. Företaget lanserade en fix till användare samma vecka – som inkluderar 92 av Fortune 100, de 100 bästa företagen i USA.
Vissa fel i hårdvara och programvara har felaktigt tillskrivits felet. En vårdpersonal hävdade att Y2020 träffade ett system som utvecklats av McKesson, som producerar programvara för sjukhus. En talesman för McKesson sa till New Scientist att företaget inte kände till något avbrott knutet till Y2020.
Exakt hur länge dessa Y2020-korrigeringar kommer att pågå är okänt, eftersom företag inte har avslöjat detaljer om dem. Om fönstret helt enkelt har skjutits tillbaka igen kan vi förvänta oss att samma fel dyker upp.
Ett annat datalagringsproblem står också inför oss år 2038. Problemet härrör igen från Unixs tid: data lagras som ett 32-bitars heltal, vilket tar slut på kapacitet klockan 3.14 den 19 januari 2038.
Mer om dessa ämnen:
- computing