1
Generale / Re:FPC 3.2.4-rc1 available
« Ultimo post da DragoRosso il Luglio 05, 2025, 05:46:00 pm »Mi ero dimenticato di segnalre uno dei "perchè" si dovrebbe aggiornare FPC.
C'è un problema dell'anno 2038 che rigurada tutte le applicazioni a 32 bit (ma non solo) e le vecchie versioni di sistemi operativi, paragonabile a quello del "millenium bug".
Il problema è che l'originale configurazione del "tempo" (definita originariamente in "time.h" in Unix e derivata poi universalmente in tutti i software e SO) viene definita nei sistemi POSIX con la data base del 1970 (1 gennaio) indicando i secondi di differenza da questa.
Quindi 3600 secondi indicano 1 ora dopo il riferimento, 36000 secondi dieci ore dopo e così via).
Ora, tenendo conto che l'originale definizione è a 32 bit (con il segno
), nel 2038 si raggiunge il massimo conteggio, poi ci sarà un overflow che riporterà l'orologio indietro al 1901.
Non si pensi non ci siano ripercussioni già ora: nel campo delle certificazioni SSL c'è stato e ci sono ancora problemi perchè alcuni campi erano definiti secondo il "time.h" è quindi i certificati la cui scadenza sorpassava il 2038 venivano rilevati come scaduti.
Il sistema ora è cambiato, la definizione è stata aggiornata, ma prima che tutti i sistemi (software e OS) si adattino ci vorrà tempo.
Proviamo poi a pensare a chi fà mutui ... infatti il problema è diventato eclatante proprio per questo motivo, un errore clamoroso che portò ad un crash totale di un sistema bancario.
FPC, probabilmente soffriva (sofffre, senza aggiornamento) dello stesso problema.
Occhio quindi alle definizioni in caso di aggiornamento, perchè ritengo che sia cambiata qualche definizione da 32 a 64 bit.
Linux ha adottato la modifica a 64 bit del tempo UNIX solo nel 2019, dopo un lavoro abbastanza arduo in quanto diversi oggetti kernel si basavano sulla definizione a 32 bit.
Ciao.
C'è un problema dell'anno 2038 che rigurada tutte le applicazioni a 32 bit (ma non solo) e le vecchie versioni di sistemi operativi, paragonabile a quello del "millenium bug".
Il problema è che l'originale configurazione del "tempo" (definita originariamente in "time.h" in Unix e derivata poi universalmente in tutti i software e SO) viene definita nei sistemi POSIX con la data base del 1970 (1 gennaio) indicando i secondi di differenza da questa.
Quindi 3600 secondi indicano 1 ora dopo il riferimento, 36000 secondi dieci ore dopo e così via).
Ora, tenendo conto che l'originale definizione è a 32 bit (con il segno

Non si pensi non ci siano ripercussioni già ora: nel campo delle certificazioni SSL c'è stato e ci sono ancora problemi perchè alcuni campi erano definiti secondo il "time.h" è quindi i certificati la cui scadenza sorpassava il 2038 venivano rilevati come scaduti.
Il sistema ora è cambiato, la definizione è stata aggiornata, ma prima che tutti i sistemi (software e OS) si adattino ci vorrà tempo.
Proviamo poi a pensare a chi fà mutui ... infatti il problema è diventato eclatante proprio per questo motivo, un errore clamoroso che portò ad un crash totale di un sistema bancario.
FPC, probabilmente soffriva (sofffre, senza aggiornamento) dello stesso problema.
Occhio quindi alle definizioni in caso di aggiornamento, perchè ritengo che sia cambiata qualche definizione da 32 a 64 bit.
Linux ha adottato la modifica a 64 bit del tempo UNIX solo nel 2019, dopo un lavoro abbastanza arduo in quanto diversi oggetti kernel si basavano sulla definizione a 32 bit.
Ciao.