Provided by:
manpages-pl-dev_20060617-3_all 
NAZWA
times - pobiera czasy procesow
SK/LADNIA
#include <sys/times.h>
clock_t times(struct tms *buf);
OPIS
times() przechowuje biece czasy wykonywania procesu w struct tms, do
ktorej prowadzi buf. struct tms jest zdefiniowana w <sys/times.h>
nastpujco:
struct tms {
clock_t tms_utime; /* czas w przestrzeni uytkownika */
clock_t tms_stime; /* czas systemowy */
clock_t tms_cutime; /* czas w przestrzeni uytkownika dla dzieci*/
clock_t tms_cstime; /* czas systemowy dzieci */
};
Pole tms_utime zawiera czas CPU spdzony na wykonywaniu instrukcji
procesu wywolujcego t funkcj. Pole tms_stime zawiera czas CPU spdzony w
systemie podczas wykonywania zada zleconych przez proces. Pole
tms_cutime zawiera sum tms_utime i tms_cutime wartoci dla wszystkich
dzieci, na ktore proces czekal. Pole tms_cstime zawiera sum wartoci
tms_stime i tms_cstime dla wszystkich dzieci, na ktore proces czekal.
Czas zakoczonych procesow-dzieci (i ich potomkow) jest dodawany w
momencie, gdy wait(2) lub waitpid(2) zwroc ich identyfikatory procesu.
W szczegolnoci nigdy nie zostan policzone czasy wnukow, na ktore dzieci
nie poczekaly.
Wszystkie raportowane czasy s wyraone w tikach zegara
WARTO ZWRACANA
times() zwraca liczb tykni zegara, ktore uplynly od pewnego wybranego
punktu przeszloci. Dla Linuksa 2.4 i wczeniejszych tym punktem jest
moment uruchomienia systemu. Od wersji 2.6 Linuksa tym punktem jest
(2^32/HZ) - 300 (tj. okolo 429 milionow) sekund przed momentem
uruchomienia systemu. Warto zwracana moe przekroczy dopuszczalny zakres
typu clock_t. W razie bldu zwracane jest (clock_t) -1 i odpowiednio
jest ustawiana warto zmiennej errno.
UWAGI
Liczb tykni zegara na sekund mona uzyska, uywajc
sysconf(_SC_CLK_TCK);
W standardzie POSIX-1996 symbol CLK_TCK (zdefiniowany w <time.h> jest
uznany za starzejcy si. Obecnie jest przestarzaly.
W wersjach Linuksa przed 2.6.9, jeeli obsluga sygnalu SIGCHLD jest
ustawiona na SIG_IGN, to czasy zakoczonych dzieci s automatycznie
zawarte w polach tms_cstime i tms_cutime, mimo e POSIX 1003.1-2001
okrela, e tak si powinno si zdarzy tylko wtedy, gdy proces czeka na
swoje dzieci wywolujc funkcj wait(). To niedostosowanie do standardu
jest poprawione w Linuksie 2.6.9 i nastpnych wersjach.
Pod Linuksem argument buf moe mie warto NULL, w czego wyniku times()
tylko zwroci wynik funkcji. Jednake POSIX nie okrela takiego zachowania
i wikszo innych implementacji uniksowych wymaga, aby parametr buf nie
byl NULL-em.
Prosz zauway, e clock(3) zwraca wartoci typu clock_t, ktore s wyraone
nie w tykniciach zegara, ale w CLOCKS_PER_SEC.
ZGODNE Z
SVr4, SVID, POSIX, X/OPEN, 4.3BSD
UWAGI HISTORYCZNE
SVr1-3 zwraca long, a czlonkowie struktury s typu time_t, chocia
przechowuj tyknicia zegara, a nie sekundy od pocztku epoki. V7 uywal
typu long dla czlonkow struktury, poniewa nie mial jeszcze wtedy typu
time_t.
W starszych systemach liczba tykni zegara na sekund jest podawana w
zmiennej HZ.
ZOBACZ TAKE
time(1), getrusage(2), wait(2), clock(3), sysconf(3), time(7)
INFORMACJE O T/LUMACZENIU
Powysze tlumaczenie pochodzi z nieistniejcego ju Projektu Tlumaczenia
Manuali i moe nie by aktualne. W razie zauwaenia ronic midzy powyszym
opisem a rzeczywistym zachowaniem opisywanego programu lub funkcji,
prosimy o zapoznanie si z oryginaln (angielsk) wersj strony podrcznika.