Joda, tittelen er nok litt overdrevet på både den ene og den andre måten, men saken handler om et stort problem for en utbredt versjon av Linux og for en del andre Unix-lignende eller POSIX-kompatible systemer, nemlig at de egentlig er laget for å dø klokka 03.14.08 UTC/GMT den 19. januar 2038.
Som digi.no også omtalte tidlig i januar (for abonnenter), er disse systemene basert på en klokke – Unix time – som ved hjelp av 32 bit teller antallet sekunder som har gått siden klokka 00:00:00 1. januar 1970. Den 19. januar 2038 er 31 av de 32 bitene brukt opp. Da skifter den mest signifikante biten verdi fra 0 til 1. Dette er en fortegnsbit, noe som betyr at verdien av tallet blir negativ, og i blant annet programmeringsspråket C innebærer dette udefinert atferd.
Over til 64 bit
Nå har IT-verdenen stort sett flyttet seg over til systemer med 64 bits minneadresser. Det gjør det enkelt å lagre et mye større tall for antallet sekunder som har gått siden 1.1.1970.
SpaceX-ekspedisjon har gjennomført verdens første private romvandring
64 bit-støtte gjelder også mange Linux-baserte systemer, men langt fra alle. I dag er det særlig integrerte systemer og IoT-enheter som benytter 32 bits Linux. Derfor er Y2038-problemet, som det kalles, fortsatt et reelt problem.
I slutten av januar ble løsningen lansert, noe blant annet ZDNet har omtalt. Det dreier seg om innføringen av en 64 bits verdi for Unix time, time_t, i 32 bits Linux. Løsningen vil bli en del av Linux 5.6, men skal også gjøres tilgjengelig i Linux 5.4-serien.
Dette vil dermed være de første versjonene av 32 bits Linux som kan brukes også etter 2038.
Fortsatt jobb å gjøre
Selv om den nevnte løsningen fjerner den grunnleggende delen av problemet, så er ikke jobben over. For utvikleren av løsningen, Arnd Bergmann, skriver at alle «Epoch»-problemer som finnes i 64 bits systemer, også berører 32 bits systemer. Spesielt nevner han tidsstempelet til flere ulike filsystemer, hvor en rekke er lagret som 31 bit + fortegn. Dette må fortsatt løses.
I tillegg må en rekke applikasjoner og hele «brukerområdet» i 32 bits Linux kompileres på nytt med støtte for 64 bits tidsgjengivelse.
Da vil i alle fall klokka kunne brukes fra til den 4. desember år 29.227.702.659. Helt evig liv, er det jo ikke. Men nærme nok.
Datatilsynet sliter med treg saksbehandling: Må håndtere nær 800 prosent flere avviksmeldinger