Stanotte Unix Time a 1234567890








Vi ricordate il Millenium Bug? Ricordate che molti PC su sistema Dos e Windows entrarono in palla perché la Microsoft non aveva previsto (20 anni prima) l’evento del cambio di millennio?

Al primo gennaio 2000, nonostante i preavvisi e le corse ai ripari, ci fu il caos, molti sistemi si bloccarono per data non riconosciuta o per valore fuori range e molti applicativi non furono in grado di superare il problema rimanendo bloccati.

I sistemi su base Unix e suoi derivati (tipo Linux, BSD ed altri) usano invece un sistema piuttosto strano per memorizzare e rappresentare internamente l’ora di sistema: a seconda del tipo di configurazione della CPU infatti, utilizza una variabile da 32 o 64 bit che rappresenta i secondi trascorsi dall’inizio dell’era UNIX. In pratica partendo dalla mezzanotte del 1° gennaio 1970 (ora UTC) questa variabile si incrementa di 1 ogni secondo trascorso. Questo porta ogni tanto, a rappresentazioni numeriche piuttosto strane e curiose.

Questa notte, per esempio, Venerdì 13 Febbraio 2009 alle ore 23:31:30 (considerando il fuso orario, in Italia dovrebbe accadere 1 ora dopo, quindi sabato 14 alle 00:31:30), la variabile di tempo detta UNIX Time raggiungerà il valore di 1234567890. Ci sono addirittura dei siti che vi faranno vedere lo stato di questa variabile in tempo reale (qui e qui).

La strana concomitanza con il giorno (considerato nefasto ai più) del venerdì 13 ha dato origine ad articoli divertenti e spassosi come questo (in inglese). Inoltre, per quanto stupido possa essere, sta muovendo molte persone interessate e Facebook addirittura ne celebra l’evento globale con inizio: venerdì 13 febbraio 2009 alle ore 23.00 e fine: sabato 14 febbraio 2009 alle ore 0.35

Personalmente invece, mi preoccuperei di quando, questa variabile, sarà satura, cioè quando il numero non potrà più essere rappresentato in soli 32 bit e quindi si riazzererà naturalmente alla data 1/1/1970 (dovrebbe succedere nel 2038). A quella data, se rimarranno macchine a 32 bit (ma ne dubito), potrebbero riaccadere problemi simili a quelli del 2000 (appena citati) coi sistemi DOS. Saluti

Aggiornamento: Per i più curiosi segnalo una vivace discussione avuta con alcuni imbecilli su google gruppi che vi segnalo, lì troverete anche alcuni chiarimenti riferiti a questo articolo.

 

MisterDomain.EU

 

Scan the QR Code
Se ti è piaciuto questo post condividi in mobilità e diffondi tra i tuoi amici.
Come fare: con l’interprete di QR Code inserito nel tuo smartphone, potrai condividere il link di questa pagina (contenuto in questo strano quadrato) via e-mail – SMS – Skype – WhatsApp – Facebook (o altri social) a tutti i tuoi amici. Ti ringraziamo per il tuo aiuto.






Questo spazio è disponibile per promozioni o pubblicità in vari formati e dimensioni, se sei interessato contattaci o leggi qui


------- Se ti è piaciuto il post diffondi e metti Mi Piace
0
Puoi lasciare un commento o un trackback dal tuo sito.

6 Risposte a “Stanotte Unix Time a 1234567890”

  1. elvio ha detto:

    Continuo dal commento precedente:
    Per chi non sapesse come si calcola, si divide per 60 (e si hanno i minuti) poi ancora per 60 (ore) poi per 24 (giorni) poi per 365 (otteniamo gli anni). Si ottiene così 68,09 che sommato all’anno 1970 porta 2038 più vari giorni (delle cifre decimali). Chi avesse ancora qualcosa da dire prego commentare qui e non altrove (è giusto che tutti condividano i vostri commenti). Saluti a tutti.

  2. elvio ha detto:

    Su un sito che non ripeto, alcune persone hanno contestato il contenuto di questo articolo dicendo che non vi è stato alcun millenium bug nel cambio di millennio e nemmeno problemi di riconoscimento di data. Ora io non ribatto, dico solo che io c’ero chi non lo sapesse si può andare a guardare tutti gli aggiornamenti che ha fatto la microsoft per Win 95 e Win 98 su questo tema e vi risponderete da soli. Riguardo il limite da overflow della variabile Unix Time, qualcuno dice che durerà molto di più, ora vi dirò perché scade nel 2038 (per chi ha nozioni di aritmetica binaria è tutto più semplice).
    La massima rappresentazione di un numero binario a 32 bit è (in decimale) 4.294.967.296 diviso 2 (perché la variabile contiene sia positivi che negativi) viene 2147483648. Questo numero, che sarebbero i secondi massimi rappresentabili dalla variabile Unix Time, equivale a circa 68 anni e rotti. Per chi non sapesse come

  3. elvio ha detto:

    Va bene a questo punto mi avete convinto: l’esaurito sono io. Mi scuso.

  4. Shiba ha detto:

    Ha ragione Aldo 😛

  5. elvio ha detto:

    Mi scusi, ma lei pensa di sentirsi bene? Pensa che c’entri qualcosa lo stato di una variabile su un S.O. con il suo stato di depressione? Ci pensi un attimo!

  6. Aldo Disimone ha detto:

    Io mi domando quando succederà la fine di questo mondo di merda? Mi augura presto anche domani stesso.

Lascia una risposta

Powered by WordPress | Designed by: 7Graus | Thanks to 7Graus WP Themes

Se trovi interessanti gli argomenti... condividi.

  • http://www.stampolampo.it/feed/
  • Follow by Email
  • https://www.facebook.com/stampolampoblog/
  • https://plus.google.com/u/0/+StampolampoIt
    http://www.stampolampo.it/stanotte-unix-time-a-1234567890">
  • https://twitter.com/slblog
  • SHARE
http://www.stampolampo.it/feed/
Follow by Email
https://www.facebook.com/stampolampoblog/
https://plus.google.com/u/0/+StampolampoIt
http://www.stampolampo.it/stanotte-unix-time-a-1234567890">
https://twitter.com/slblog
SHARE