Provided by: manpages-ro-dev_4.27.0-1_all bug

NUME

       times - obține timpii procesului

BIBLIOTECA

       Biblioteca C standard (libc, -lc)

SINOPSIS

       #include <sys/times.h>

       clock_t times(struct tms *buf);

DESCRIERE

       times() stochează timpii procesului curent în struct tms la care indică buf. structl tms este definită în
       <sys/times.h>:

           struct tms {
               clock_t tms_utime;  /* timpul utilizatorului */
               clock_t tms_stime;  /* timpul sistemului */
               clock_t tms_cutime; /* timpul de utilizator al proceselor-copil */
               clock_t tms_cstime; /* timpul de sistem al proceselor-copil */
           };

       Câmpul  tms_utime  conține  timpul  petrecut  de CPU în executarea instrucțiunilor procesului de apelare.
       Câmpul tms_stime conține timpul petrecut de CPU în timpul execuției în interiorul nucleului  în  timp  ce
       efectuează sarcini în numele procesului apelant.

       Câmpul  tms_cutime  conține  suma  valorilor  tms_utime și tms_cutime pentru toate procesele/firele-copil
       așteptate să se termine.   Câmpul  tms_cstime  conține  suma  valorilor  tms_stime  și  tms_cstime  toate
       procesele/firele-copil așteptate să se termine.

       Timpii pentru copiii terminați (și pentru descendenții lor) sunt adăugați în momentul în care wait(2) sau
       waitpid(2)  returnează  ID-ul lor de proces. În special, timpii nepoților pe care copiii nu i-au așteptat
       nu sunt văzuți niciodată.

       Toate duratele de timp raportate sunt exprimate în „tic-tacuri” de ceas.

VALOAREA RETURNATĂ

       times() returnează numărul de ticuri de ceas care s-au scurs de la un punct arbitrar din trecut. Valoarea
       returnată poate  depăși  intervalul  posibil  al  tipului  clock_t.  În  caz  de  eroare,  se  returnează
       (clock_t) -1, iar errno este configurată pentru a indica eroarea.

ERORI-IEȘIRE

       EFAULT tms indică în afara spațiului de adrese al procesului.

VERSIUNI

       În  Linux,  argumentul buf poate fi specificat ca fiind NULL, ceea ce înseamnă că times() returnează doar
       un rezultat de funcție. Cu  toate  acestea,  POSIX  nu  specifică  acest  comportament,  iar  majoritatea
       celorlalte implementări UNIX necesită o valoare non-NULL pentru buf.

STANDARDE

       POSIX.1-2008.

ISTORIC

       POSIX.1-2001, SVr4, 4.3BSD.

       În  POSIX.1-1996,  simbolul  CLK_TCK  (definit în <time.h>) este menționat ca fiind învechit. Acesta este
       învechit în prezent.

       Înainte de Linux 2.6.9, dacă dispoziția lui SIGCHLD este stabilită la  SIG_IGN,  atunci  timpii  copiilor
       terminați  sunt  automat  incluși în câmpurile tms_cstime și tms_cutime, deși POSIX.1-2001 spune că acest
       lucru ar trebui să se întâmple numai dacă procesul apelant efectuează wait(2)s  pe  copiii  săi.  Această
       neconformitate este rectificată în Linux 2.6.9 și versiunile ulterioare.

       În  Linux,  punctul „arbitrar din trecut” de la care se măsoară valoarea de întoarcere a times() a variat
       între versiunile nucleului. În Linux 2.4 și versiunile anterioare, acest  punct  este  momentul  în  care
       sistemul  a  fost  inițiat.  â Începând cu Linux 2.6, acest punct este (2^32/HZ) - 300 secunde înainte de
       momentul  de  pornire  a  sistemului.  Această  variabilitate  între  versiunile  nucleului   (și   între
       implementările UNIX), combinată cu faptul că valoarea returnată poate depăși intervalul clock_t, înseamnă
       că  o aplicație portabilă ar fi înțelept să evite utilizarea acestei valori. Pentru a măsura modificările
       în timpul scurs, utilizați în schimb clock_gettime(2).

       SVr1-3 returnează long, iar membrii structurii sunt de tip time_t, deși  stochează  ticuri  de  ceas,  nu
       secunde de la Epocă. V7 a folosit long pentru membrii structurilor, deoarece nu avea încă tipul time_t.

NOTE

       Numărul de ticuri de ceas pe secundă poate fi obținut folosind:

           sysconf(_SC_CLK_TCK);

       Rețineți că clock(3) returnează, de asemenea, o valoare de tip clock_t, dar această valoare este măsurată
       în unități de CLOCKS_PER_SEC, nu în ticuri de ceas utilizate de times().

ERORI

       O limitare a convențiilor de apelare a sistemului Linux pe anumite arhitecturi (în special i386) înseamnă
       că  pe Linux 2.6 există o mică fereastră de timp (41 de secunde) imediat după pornire, când times() poate
       returna -1, indicând în mod fals că a avut loc o  eroare.  Aceeași  problemă  poate  apărea  atunci  când
       valoarea de returnare depășește valoarea maximă care poate fi stocată în clock_t.

CONSULTAȚI ȘI

       time(1), getrusage(2), wait(2), clock(3), sysconf(3), time(7)

TRADUCERE

       Traducerea    în   limba   română   a   acestui   manual   a   fost   făcută   de   Remus-Gabriel   Chelu
       <remusgabriel.chelu@disroot.org>

       Această traducere este  documentație  gratuită;  citiți  Licența publică generală GNU Versiunea 3  sau  o
       versiune   ulterioară   cu  privire  la  condiții  privind  drepturile  de  autor.   NU  se  asumă  NICIO
       RESPONSABILITATE.

       Dacă găsiți erori în traducerea acestui manual, vă rugăm să  trimiteți  un  e-mail  la  translation-team-
       ro@lists.sourceforge.net.

Pagini de manual de Linux 6.9.1                    2 mai 2024                                           times(2)