Krótka historia czasu komputerowego
Wysłane przez Richard N Williams on Grudnia 2nd, 2009
Mówienie czasu jest czymś, czego możemy się nauczyć, gdy jesteśmy bardzo małymi dziećmi. Wiedza o tym, która jest godzina, jest istotną częścią naszego społeczeństwa i nie moglibyśmy bez niej funkcjonować. Wyobraź sobie, że nie powiedzieliśmy czasu - kiedy pójdziesz do pracy? Kiedy odejdziesz i jak można spotkać innych ludzi lub zorganizować jakąś funkcję.
Mówiąc, że czas jest dla nas ważny, jest on jeszcze ważniejszy dla komputerów, które wykorzystują czas jako jedyny punkt odniesienia i jeden z nich synchronizacja czasu sieci komputerowej to istotne. Bez rejestrowania upływu czasu komputery nie mogłyby funkcjonować, ponieważ nie byłoby odniesienia do programów i funkcji zleceń.
Ale sposób, w jaki komputery określają godzinę i datę, znacznie różni się od sposobu, w jaki ją nagrywamy. Zamiast zapisywać oddzielny czas, datę i rok - systemy komputerowe używają jednej liczby. Liczba ta jest oparta na liczbie sekund od nastawy czasu - znanej jako pierwsza epoka.
Kiedy ta epoka jest, zależy od systemu operacyjnego lub języka programowania, o którym mowa. Na przykład systemy uniksowe mają główną epokę, która zaczyna się od 1 January 1970, a liczba sekund z epoki jest zliczana w całkowitej liczbie 32. Inne systemy operacyjne, takie jak Windows, używają podobnego systemu, ale epoka jest inna (Windows uruchamia się na 1 January 1601).
Są jednak wady tego systemu liczb całkowitych. Na przykład, gdy system uniksowy jest 32-bitową liczbą całkowitą, która rozpoczęła się w 01 Jan 1970, przez 19 January 2038 liczba całkowita wyczerpałaby każdą możliwą liczbę i będzie musiała powrócić do zera. Może to powodować problemy z systemami zależnymi od systemu Unix w przypadku problemu przypominającego błąd Millennium.
Są też inne kwestie związane z czasem komputera. Ze względu na globalne wymagania Internetu cały czas komputerowy opiera się na UTC (Coordinated Universal Time). Czasami jednak UTC zmienia się, dodając sekundy skoku, aby zapewnić, że czas odpowiada rotacji Ziemi (obrót Ziemi nigdy nie jest dokładny ze względu na siły grawitacji), więc druga operacja skoku musi zostać objęta komputerowym systemem czasu.
Czas komputera jest często kojarzony z NTP (Network Time Protocol), który służy do synchronizowania komputerów często za pomocą sieciowy serwer czasu.