Czas systemowy

Z Wikipedii, wolnej encyklopedii
(Przekierowano z Zegar systemowy)

Czas systemowy w informatyce i programowaniu komputerów reprezentuje pojęcie upływu czasu w systemie komputerowym. W tym sensie czas obejmuje również upływ dni w kalendarzu. Można synchronizować jego działanie z zewnętrznymi serwerami czasu, uzyskując wysoką dokładność wskazań. Czas systemowy odpowiada również za dostarczanie sygnałów synchronizujących działanie podzespołów komputera z dokładnością do tysięcznych części sekundy.

Czas systemowy mierzy się za pomocą zegara systemowego, który zazwyczaj jest zaimplementowany jako prosta liczba taktowań, które wydarzyły się od jakiejś arbitralnej daty rozpoczęcia, zwanej epoch. Na przykład systemy zgodne z Uniksem i POSIX kodują czas systemowy ("czas uniksowy") jako liczbę sekund, które upłynęły od 1 stycznia 1970 roku 00:00:00 czasu uniwersalnego (UT), z wyjątkami dla sekund przestępnych. Systemy implementujące 32-bitowe i 64-bitowe wersje Windows API, takie jak Windows 9x i Windows NT, podają czas systemowy jako zarówno SYSTEMTIME, reprezentowane jako wartość roku/miesiąca/dnia/godziny/minuty/sekundy/milisekundy, i FILETIME, reprezentowany jako liczba 100-nanosekundowych taktowań od 1 stycznia 1601 00:00:00 UT, jak liczono w proleptycznym kalendarzu gregoriańskim.

Czas systemowy można przekształcić w czas kalendarzowy, który jest bardziej zrozumiały przez ludzi. Na przykład czas systemowy Unix 1 000 000 000 sekund od początku epoki przekłada się na czas kalendarzowy 9 września 2001 01:46:40 UT. Podprogramy biblioteczne, które obsługują takie konwersje, mogą również zajmować się korektami stref czasowych, czasu letniego (DST), sekund przestępnych i ustawień regionalnych użytkownika. Dostarczane są również procedury biblioteczne, które konwertują czasy kalendarza na czasy systemowe.

Inne pomiary czasu[edytuj | edytuj kod]

Ściśle związany z czasem systemowym jest czas procesu, który jest sumą całkowitego czasu procesora zużywanego przez proces wykonujący. Może być podzielony na czas procesora użytkownika i systemu, reprezentujący odpowiednio czas spędzony na wykonywaniu kodu użytkownika i kodu jądra systemu. Czasy procesowe są sumą instrukcji procesora lub cykli zegara.

Systemy plików śledzą czas, w którym pliki są tworzone, modyfikowane i / lub otwierane przez przechowywanie znaczników czasu w bloku kontroli plików (lub i-węzłach) każdego pliku i katalogu.