Che cos’è l’ora di sistema?

Il tempo di sistema è una rappresentazione del modo in cui i computer misurano il passare del tempo. L’ora e la data del calendario visualizzate da un sistema operativo (OS), o ottenute da vari linguaggi di programmazione, vengono generate utilizzando l’ora di sistema. Questo viene eseguito da un orologio di sistema che conta i tick da un punto di partenza arbitrario noto come epoca. Ogni sistema operativo utilizza la propria epoca e tick che rappresentano diverse lunghezze di tempo. Determinando quanti tick sono trascorsi dall’epoca, e quindi convertendoli in secondi, è possibile per un computer eseguire il rendering dell’ora e della data correnti.

I primi personal computer (PC) non avevano alcun modo per tenere traccia del tempo. I primi modelli ad avere questa funzionalità sono stati prodotti da International Business Machines (IBM). Da allora, tutti i PC e i sistemi operativi hanno incluso un modo per tenere traccia del tempo e convertirlo in una forma riconoscibile per gli umani. Con l’avvento della rete, e in particolare di Internet, i PC sono diventati anche in grado di regolare l’ora del sistema in base ai fusi orari. È stato inoltre possibile aggiornare l’ora del sistema in modo che corrisponda a un server centrale.

Il modo in cui i computer in genere misurano il tempo è contando i tick a partire da un punto di partenza arbitrario. Le zecche non sono universalmente convertibili in una misura del tempo utile all’uomo, poiché ogni sistema operativo consente il passaggio di una quantità di tempo diversa tra di loro. Alcuni sistemi contano un tick ogni 100 nanosecondi, mentre altri equiparano un tick a un secondo. Se un sistema funziona contemporaneamente per un tempo sufficientemente lungo, è possibile che il conteggio dei tick raggiunga il numero massimo di cifre consentito e si sposti verso lo zero. In alcuni casi ciò può causare instabilità del sistema.

Ogni sistema ha anche una data di inizio diversa da cui vengono contati i tick. Alcuni sistemi operativi utilizzano un’epoca che inizia nel 1601 d.C. e ha un intervallo che dura fino al 2099 d.C. Altri, come l’input/output di base del sistema (BIOS) utilizzano un’epoca che conta dalla mezzanotte del giorno corrente. In ogni caso, è possibile per un computer contare quanti tick si sono verificati dall’inizio dell’epoca e quindi convertire quella cifra in una data e ora del calendario utile per l’utente umano. La risoluzione che l’ora del sistema è in grado di restituire dipende dalla lunghezza di un segno di spunta, quindi alcuni sistemi possono riportare in millisecondi mentre altri sono limitati al secondo più vicino.