Fapte interesante despre cronometrarea computerului

Autor: Judy Howell
Data Creației: 2 Iulie 2021
Data Actualizării: 12 Mai 2024
Anonim
A beginner’s guide to quantum computing | Shohini Ghose
Video: A beginner’s guide to quantum computing | Shohini Ghose

Conţinut


Sursa: ChakisAtelier / iStockphoto

La pachet:

Probabil nu vă gândiți prea mult la ceasul de pe computer, dar există o mulțime de lucruri interesante care mențin totul funcțional.

Probabil nu vă gândiți prea mult la ceasul din computer, cu excepția cazului în care probabil că aveți un termen limită important, dar să știți un pic despre modul în care computerul vă păstrează timpul vă poate menține sistemul și rețeaua funcționând fără probleme. În plus, tehnologia computerului a schimbat modul în care urmărim, înregistrăm și înregistrăm timpul, ceea ce este destul de interesant în sine. Aici vă uitați bine la modul în care calculatoarele păstrează timpul.

Timpul Unix

Iartă-mă că sunt puțin centrat pe Unix, dar o bucată bună din serverele de pe internet folosesc timpul Unix. Ce este timpul Unix? Este destul de simplu. Este numărul de secunde care au trecut de la miezul nopții de la 1 ianuarie 1970, UTC. (Voi explica UTC puțin mai târziu în acest articol.) Aceasta este cunoscută drept „epoca”.


Multe sisteme Unix și Linux calculează timpul calculând secunde epoch și le convertesc în ora locală. Avantajul acestui lucru este că este destul de ușor să calculăm diferența dintre două date și ore. Dacă vreau să aflu cât a trecut timpul de la miezul nopții de la 1 ianuarie 1970 și chiar acum, este doar o simplă scădere. Limbajul de programare Perl are capacitatea de a calcula secunde epoch pentru orice moment pe care doriți să-l imaginați. (Puteți afla mai multe despre Perl în Perl 101.)

Există, de asemenea, o serie de modele distractive care apar ca secunde din 1970 bifează. Wikipedia are o listă cu acestea. De exemplu, la 13 februarie 2009, numărul de secunde trecute a ajuns la 1.234.567.890. Da, acestea sunt toate numerele care pornesc de la unul. Au fost petreceri în comunități tehnice din întreaga lume pentru a sărbători. Și pentru aceia dintre voi care nu sunteți chiar atât de obraznici, nu, eu nu fac asta.

O consecință mai serioasă a menținerii timpului în acest fel este problema din 2038. Fără a intra în detalii prea mari, în 2038 numărul de secunde trecute va fi prea mare pentru a fi păstrat într-un număr întreg semnat pe 32 de biți. Numeroase sisteme, inclusiv computere încorporate, utilizează în continuare procesoare pe 32 de biți. Avem încă destul timp pentru a ne transforma în sisteme pe 64 de biți sau pentru a găsi alte soluții de rezolvare, dar dacă vă amintiți debacleul Y2K, unde oamenii s-au învârtit să rezolve problema în ultimul moment, uneori nu există voința de a face ceva despre aceste lucruri în avans.


Când trecem complet la procesoare pe 64 de biți, vom avea până la 292.277.026.596 secunde înainte de a trece din nou la procesoare. Totuși, la acel moment, este posibil ca umanitatea să aibă preocupări mai presante decât ceasurile lor de computer - Soarele va fi înghițit mult timp Pământul până atunci.

UTC

Deși UTC, sau ora universală coordonată, nu se limitează strict la calculatoare, este important în modul de funcționare a ceasurilor lor. Este un înlocuitor pentru timpul mediu de la Greenwich, care ține cont de încetinirea Pământului. Meridianul principal pe care se bazează acest calcul este încă localizat la Observatorul Greenwich din Anglia. De ce acolo? Este o deținere a Imperiului Britanic.

Zonele orare sunt reprezentate ca compensări ale meridianului primar. De exemplu, locuiesc în fusul orar din Pacific, care este UTC-8. Și în timpul orei de vară, este de fapt UTC-7.

Fără bug-uri, fără stres - Ghidul dvs. pas cu pas pentru crearea de programe care schimbă viața fără a vă distruge viața

Nu îți poți îmbunătăți abilitățile de programare atunci când nimeni nu îi pasă de calitatea software-ului.

UTC este utilizat într-o varietate de contra, pentru a scăpa de ambiguități despre zonele orare, inclusiv în aviație, prognoza meteo și calcul. Majoritatea mașinilor reprezintă fusul orar local ca o compensare a UTC, dar majoritatea serverelor de pe internet exprimă ora în UTC. Puteți verifica titlurile pentru dovezi.

NTP

În timp ce serverele utilizează ceasuri setate pe UTC, ceasurile de calculator au un obicei notoriu de a încetini. Dacă aveți o mulțime de ceasuri care nu sunt sincronizate, puteți provoca ravagii cu lucruri de genul acesta, care depinde de sincronizare. Acesta este motivul pentru care a apărut Protocolul timp de rețea. A trecut prin anii 80, păstrând ceasurile computerului sincronizate perfect cu NTP. De obicei, nu trebuie să vă gândiți la asta. De cele mai multe ori, tot ce trebuie să faceți este să activați NTP pe sistemul dvs., fie prin fișiere de configurare sau panou de control, iar NTP se va ocupa de restul contactând serverele și sincronizând periodic ceasul computerului. (Aflați mai multe despre modul în care protocolul timp de rețea păstrează marcarea pe Internet.)

Timpul fracțional

Un mod interesant de a reprezenta timpul este folosind zile fracționate. Este o formă de timp zecimal care reprezintă timpul ca procent din ziua care a trecut. De exemplu, miezul nopții este 0,00, amiaza este 0,50, 18:00. este 0,75 și așa mai departe.

Pentru a obține ora curentă ca o zi fracționată, împărțiți minutul curent cu 60 și adăugați-l la oră. De exemplu, dacă în prezent este 1:24 p.m., atunci 24 împărțit la 60 este 0,40, ceea ce dă 13,40. Împărțirea aia cu 24 de randamente .56. De asemenea, puteți avea orice precizie doriți. De exemplu, aș fi putut să scriu ora ca .5583333. Avantajul menținerii timpului este că, la fel ca secundele de epocă menționate mai sus, calcularea diferențelor între două ori este doar o chestiune de scădere simplă.

ISO 8601

Dacă ați fost vreodată în străinătate, veți avea acum multe moduri diferite de a reprezenta datele. În Statele Unite, luna de obicei vine pe primul loc, astfel încât 15 ianuarie 2018 să fie reprezentată ca 15.01.18. În alte locuri, ziua vine pe primul loc, ca în 15/1/18. Acest lucru poate cauza unele probleme atunci când comunicați cu oameni din diferite țări.

Un standard internațional, ISO 8601, încearcă să rezolve unele dintre aceste probleme. Este destul de simplu: AAAA-MM-DD. Revenind la exemplul nostru, reprezentat conform ISO 8601, ar arăta astfel: 2018-01-15. Este lipsit de ambiguitate și „big-endian” pentru că anul vine primul. Acest standard face, de asemenea, relativ ușor pentru computere să sorteze lucrurile după dată. Alte variante anexează UTC sau arată numărul de zile trecute în an.

Toate în timp bun

Momentul este important și chiar mai important pentru calculatoare. Sperăm că acest articol vă oferă o idee despre modul în care calculatoarele urmăresc timpul în culise.