+39 328 4891193
[email protected]
  • Home
  • Chi Sono
  • Servizi
  • Blog
  • Contatti

2038 – la fine del tempo a 32bit

5 anni fa
SystemIO - Andrea Scorza
Geek, Unix

Ho recentemente visto un Windows 98 al lavoro, senza problemi apparenti.

Ho fatto due conti e questo sistema è vivo da circa 20 anni, ha superato il bug dell’anno 2000, virus, ransomware…probabilmente sarà ancora lì fra 20 anni.

In pochi sanno che fra pochi giorni mancheranno 20 anni ad una data importante e abbastanza spaventosa per i sistemi UNIX a 32-bit (POSIX), e non pensate che siano solo vecchi scatoloni che non usa più nessuno (la maggior parte degli smartphone Android vi dice qualcosa?).

I sistemi UNIX che usano la notazione POSIX contano il tempo come offset in secondi rispetto alla mezzanotte (UTC) del 1º gennaio 1970 (chiamato epoch).

Questo tipo di rappresentazione, oltre che ad essere compatta, è indipendente dai fusi orari, ed è quindi direttamente confrontabile anche tra calcolatori situati a grandi distanze geografiche tra loro, ed evita di dover effettuare aggiustamenti nel caso per esempio di dati trasmessi da un fuso orario all’altro.

Questo valore viene messo in una variable a 32-bit (time_t)

Tale valore non può superare 2147483647 secondi da epoch, quindi le 03:14:07 del 19 gennaio 2038 (UTC)
Questo prende il nome di bug Y2038


(Gif animata di Monaneko – Opera propria, Pubblico dominio)

La data a quel punto andrà indietro al 13-12-1901 (-2147483648 secondi da epoch).

Il fatto che manchino 20 anni non dovrebbe far dimenticare questo problema, per vari motivi:

  • molti dispositivi, anche importanti, non possono essere aggiornati per motivi più o meno validi
  • molti software per settare una data molto avanti nel futuro (es. una nota senza scadenza) fissavano al 2038 la data di fine, oppure sommavano +20 anni alla data della nota.

Proprio questo ultimo punto dovrebbe far riflettere, il bug Y2038 si può manifestare anche in date precedenti al 2038 ovvero, nello specifico, ogni qual volta un software che ne è affetto debba calcolare una data futura successiva a quella critica. Nel maggio 2006, per esempio, il bug colpì il server web AOLserver che gestiva le richieste senza scadenza al proprio database assegnando alle stesse una data di scadenza pari ad un miliardo di secondi nel futuro.

Alle 21:27:28 del 12 maggio 2006 (data del server; un miliardo di secondi prima del 2038) il sistema di calcolo superò il limite critico restituendo, di conseguenza, una data di scadenza nel passato e causando un crash del sistema.  (Wikipedia)

Altre date importanti per lo UNIX Time:

  • 9 settembre 2001: Unix billenium, l’orologio segnava 1.000.000.000 secondi.
  • 18 marzo 2005: l’orologio segnava 1.111.111.111 secondi.
  • il 13 febbraio 2009 alle ore 23:31:30 (UTC), il Tempo Unix ha raggiunto la cifra ‘1234567890’. Si sono tenuti party e festeggiamenti vari in tutto il mondo per celebrare l’evento.
  • 26 gennaio 2011 è stato il 15.000º giorno di UNIX.

 

SystemIO - Andrea Scorza
Articolo precedente
E se il rumore rallentasse o bloccasse i servers?
Articolo successivo
NetLogon non si avvia più – Windows 2003

Post correlati

Nessun risultato trovato.

Articoli recenti

  • STARLINK! Soluzione definitiva per il Digital Divide?
  • SystemIO RAV – Rack Alarm Visualizator
  • Ci sono molti modi…per scrivere un IP
  • ZipBomb – trappola per scanner
  • Dominio senza posta? evita che venga usato per inviare mail false

Archivi

  • Dicembre 2022
  • Novembre 2022
  • Febbraio 2021
  • Dicembre 2020
  • Ottobre 2020
  • Aprile 2020
  • Gennaio 2020
  • Agosto 2019
  • Febbraio 2019
  • Ottobre 2018
  • Giugno 2018
  • Gennaio 2018
  • Novembre 2017
  • Ottobre 2017
  • Settembre 2017

Categorie

  • Coding
  • Geek
  • Network
  • Server
  • Tricks
  • Unix
  • Windows

Meta

  • Accedi
  • Feed dei contenuti
  • Feed dei commenti
  • WordPress.org

Recent Posts

STARLINK! Soluzione definitiva per il Digital Divide?

SystemIO RAV – Rack Alarm Visualizator

Ci sono molti modi…per scrivere un IP

ZipBomb – trappola per scanner

Dominio senza posta? evita che venga usato per inviare mail false

Indirizzi casuali Wi-Fi, privacy ed effetti collaterali…grattacapi (per network admins)

Dove mi porterà il prossimo click ?

Italy Welcomes AWS!

Cybersecurity e vita reale

Animali e software…

HTTP – passato, presente e futuro

Trovare connessioni e processi (Win)

Categorie

  • Coding (6)
  • Geek (18)
  • Network (8)
  • Server (5)
  • Tricks (14)
  • Unix (7)
  • Windows (6)

Tag

aws cloud coding computer vision datacenter digital divide dns fun geek ip java logos mac Milan Milano monitoring network privacy prtg rack random recensione region reputation security server shortner spacex spam spoof starlink sw ubiquiti unifi unix wi-fi wifi

© SystemIO di Andrea Scorza
P.IVA: IT02691970186 – CF: SCRNDR82A05F839M – REA: PV-294258
Privacy Policy/Cookie Policy