Come fanno i PC a sapere quando è cambiato l'orario?


15

Nel mio paese, l'ora ufficiale cambia nel primo mese di primavera e autunno. Quando l'ora ufficiale cambia, anche gli orologi del mio cellulare e del PC cambiano.

In che modo questi dispositivi scoprono che c'è un cambiamento?


Wow. ora legale per la metà dell'anno
mcalex

2
Il computer sa che ore sono giuste? E sai quale data dovrebbe cambiare l'ora legale, giusto? Pertanto è banale scrivere una riga di codice nel sistema operativo che dice di if (date=DST_START) then hour=hour+1 else if (date=DST_END) then hour=hour-1solito questo è sufficiente, ma se le regole cambiano (come in Nord America nel 2007), è necessario scaricare un aggiornamento del sistema operativo. A parte questo, l'unico problema è che se l'orologio di sistema è errato (ad es. Batteria della scheda madre esaurita), non può sapere quando modificare l'ora (ma questo è irrilevante poiché è necessario correggere comunque la data e l'ora).
Synetech,

Risposte:


20

La maggior parte dei sistemi operativi ha le regole di base per calcolare questo (ad es. Il primo fine settimana dopo una data specifica), in modo che possano adattarsi da soli, senza richiedere una connessione a nessun server orario. Ciò può tuttavia rovinare l'orologio del sistema in caso di modifiche alle regole ufficiali (ad es. Le ultime modifiche per la Russia) o il ripristino di un backup del sistema (quindi il sistema regola l'ora due volte).

In alternativa, alcuni dispositivi potrebbero contattare un server remoto (molto probabilmente lo fanno comunque in ogni momento) o utilizzare qualche altro tipo di timestamp incorporato (ad es. Trasmissione come parte di dati di testo video / ceefax o DVB, quando si parla di programmi televisivi e ricevitori / registratori / TV).

Modifica: solo per menzionarlo: le versioni precedenti di Windows (ad esempio Windows 95 o Windows 98) non si sono mai fidate del proprio preventivo, quindi hanno sempre detto all'utente di verificare l'ora corretta una volta modificata. Windows Vista e Windows 7 (non sono sicuro delle versioni intermedie) non lo fanno più e suppongono solo che siano corretti (oltre a utilizzare un time server per sincronizzare l'orologio).


NTP non contiene alcuna ora legale o informazioni sul fuso orario. Stabilisce solo l'ora corrente in UTC. Il cliente deve applicare separatamente le regole appropriate al proprio fuso orario, utilizzando il database Olson o equivalente. Windows Time Service sembra implementare solo NTP, senza alcun mezzo di diffusione delle regole aggiornate sul fuso orario: technet.microsoft.com/en-us/library/cc773061(v=ws.10).aspx
dhasenan

Va bene, quindi NTP può essere utilizzato solo per determinare se l'orologio locale è ancora / già su ora legale nel caso in cui il sistema pensi che ci dovrebbe essere una regolazione (ad esempio dopo il ripristino di un backup). Sì, sembra logico, considerando che UTC / GMT + 0 non cambia mai. Ha riformulato un po 'quella frase.
Mario,

7

Linux utilizza il database dei fusi orari IANA per sapere quando cambia l'ora legale. Una storia diversa è per Windows per una serie di motivi. Uno, Windows utilizza RTC nell'ora locale e Linux - in UTC. Immagina che un DST cambi su Windows. Ciò consente di "creare" i file in futuro e può causare alcuni problemi. Inoltre, le versioni precedenti di Windows trattano l'ora legale in modo diverso, perché in quel momento c'erano regole DST diverse e Microsoft non fornisce più aggiornamenti per quelle versioni di Windows, quindi non possono ora apportare modifiche alle regole dell'ora legale.

Maggiori informazioni qui: http://en.wikipedia.org/wiki/Daylight_saving_time#Computing


2

In poche parole, il tuo sistema operativo invia un aggiornamento per regolare l'ora.

Windows lo fa tramite Windows Update e Linux attraverso l'uso dei file del fuso orario .


Non esattamente vero per Windows, almeno non per le versioni precedenti. Windows è in grado di calcolare questo da solo (simile a Linux), ma questo qualcosa ha bisogno di aggiornamenti a causa di nessuna regola (come hai collegato).
Mario,

1

I telefoni cellulari riescono ad aggiornare l'ora attraverso la rete. Allo stesso modo nel caso di Windows, si aggiorna attraverso Internet. Funziona solo se hai optato per l'aggiornamento automatico dell'ora. Puoi controllare le impostazioni di data e ora sul tuo cellulare o PC. inserisci qui la descrizione dell'immagine

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.