Provided by: manpages-ro_4.27.0-1_all bug

NUME

       timp - prezentare generală a timpului și a cronometrelor

DESCRIERE

   Timp real și timp de procesare
       Timp real se definește ca fiind timpul măsurat de la un punct fix, fie de la un punct standard din trecut
       (a  se  vedea  descrierea epocii și a timpului calendaristic de mai jos), fie de la un punct (de exemplu,
       începutul) din viața unui proces (timp scurs).

       Timpul de procesare este definit ca fiind cantitatea de timp de procesor utilizat de  un  proces.  Acesta
       este  uneori împărțit în componentele utilizator și sistem. Timpul CPU de utilizator este timpul petrecut
       executând cod în modul utilizator. Timpul CPU de sistem este timpul petrecut de nucleu executând în modul
       sistem în numele procesului (de exemplu, executând apeluri de sistem). Comanda time(1) poate fi utilizată
       pentru a determina cantitatea de timp CPU consumată în timpul execuției unui program.  Un  program  poate
       determina  cantitatea  de  timp  de  procesor  pe  care  a consumat-o folosind times(2), getrusage(2) sau
       clock(3).

   Ceasul hardware
       Majoritatea calculatoarelor au un ceas hardware (alimentat cu baterii) pe  care  nucleul  îl  citește  în
       momentul  pornirii  pentru  a  inițializa ceasul software. Pentru mai multe detalii, consultați rtc(4) și
       hwclock(8).

   Ceasul software, HZ și jiffies
       Precizia  diferitelor  apeluri  de  sistem   care   stabilesc   temporizări   (de   exemplu,   select(2),
       sigtimedwait(2))  și  măsoară  timpul  de procesare (de exemplu, getrusage(2)) este limitată de rezoluția
       ceasului software, un ceas întreținut de nucleu care măsoară timpul în jiffies.  Dimensiunea  unui  jiffy
       este determinată de valoarea constantei HZ a nucleului.

       Valoarea  lui HZ variază în funcție de versiunile de nucleu și de platformele hardware. Pe i386, situația
       este următoarea: pe nucleele de până la Linux 2.4.x inclusiv, HZ era 100, ceea ce dădea o valoare a jiffy
       de 0,01 secunde; începând cu Linux 2.6.0, HZ a fost ridicat la 1000, ceea ce dă  o  valoare  a  jiffy  de
       0,001  secunde.  Începând  cu  Linux  2.6.13, valoarea HZ este un parametru de configurare a nucleului și
       poate fi 100, 250 (valoarea implicită) sau 1000, ceea ce dă o valoare a jiffy-urilor de, respectiv, 0,01,
       0,004 sau 0,001 secunde. Începând cu Linux 2.6.20, este disponibilă o  frecvență  suplimentară:  300,  un
       număr care se împarte în mod egal pentru frecvențele de cadre video comune (PAL, 25 Hz; NTSC, 30 Hz).

       Apelul  de  sistem  times(2)  este  un caz special.  Acesta raportează timpii cu o granularitate (finețe)
       definită de constanta de nucleu USER_HZ.  Aplicațiile din spațiul utilizatorului pot  determina  valoarea
       acestei constante folosind sysconf(_SC_CLK_TCK).

   Ceasuri de sistem și de proces; spații de nume de timp
       Nucleul  suportă  o  serie de ceasuri care măsoară diferite tipuri de timp scurs și virtual (adică timpul
       consumat de CPU).  Aceste ceasuri sunt  descrise  în  clock_gettime(2).  Câteva  dintre  ceasuri  pot  fi
       configurate cu ajutorul clock_settime(2). Valorile anumitor ceasuri sunt virtualizate prin spații de nume
       de timp; a se vedea time_namespaces(7).

   Temporizatoare de înaltă rezoluție
       Înainte  de  Linux  2.6.21,  precizia  apelurilor  de  sistem timer și sleep (a se vedea mai jos) era, de
       asemenea, limitată de dimensiunea jiffy.

       Începând cu Linux 2.6.21, Linux acceptă temporizatoare de înaltă rezoluție (HRT), configurabile  opțional
       prin  CONFIG_HIGH_RES_TIMERS.  Pe  un  sistem  care suportă HRT-uri, precizia apelurilor de sistem de tip
       sleep și timer nu mai este constrânsă de jiffy, ci poate fi atât de precisă pe cât  permite  echipamentul
       (precizia  de  microsecunde este tipică pentru echipamentul modern). Puteți determina dacă sunt acceptate
       temporizatoarele de înaltă rezoluție verificând rezoluția returnată de un  apel  la  clock_getres(2)  sau
       uitându-vă la intrările „resolution” din /proc/timer_list.

       HRT-urile  nu  sunt  acceptate  pe  toate  arhitecturile  hardware;  (suportul este oferit pe x86, ARM și
       PowerPC, printre altele.)

   Epoca
       Sistemele UNIX reprezintă timpul în secunde de la Epocă, 1970-01-01 00:00:00:00 +0000 (UTC).

       Un  program  poate  determina   timpul   calendaristic   prin   intermediul   ceasului   clock_gettime(2)
       CLOCK_REALTIME,  care  returnează  timpul (în secunde și nanosecunde) care s-a scurs de la Epocă; time(2)
       oferă informații similare, dar numai cu o precizie la cea mai apropiată secundă. Ora sistemului poate  fi
       modificată cu ajutorul clock_settime(2).

   Timpul defalcat
       Anumite  funcții de bibliotecă utilizează o structură de tip tm pentru a reprezenta timpul defalcat, care
       stochează valoarea timpului separată în componente distincte (an, lună, zi, oră,  minut,  secundă  etc.).
       Această  structură  este  descrisă  în tm(3type), care descrie, de asemenea, funcțiile care fac conversia
       între timpul  calendaristic  și  timpul  defalcat.  Funcțiile  de  conversie  între  timpul  defalcat  și
       reprezentările de tip șir de caractere imprimabile ale timpului sunt descrise în ctime(3), strftime(3) și
       strptime(3).

   Adormirea și configurarea temporizatoarelor
       Diverse  apeluri  și  funcții  de  sistem  permit  unui program să doarmă (să suspende execuția) pentru o
       anumită perioadă de timp; a se vedea nanosleep(2), clock_nanosleep(2) și sleep(3).

       Diverse apeluri de sistem permit unui proces să configureze un temporizator care expiră la un moment  dat
       în  viitor  și,  opțional, la intervale repetate; a se vedea alarm(2), getitimer(2), timerfd_create(2) și
       timer_create(2).

   Marjă temporizator
       Începând cu Linux 2.6.28, este posibil să se controleze valoarea marjei  temporizatorului  „timer  slack”
       pentru  un  fir  de  execuție.  Marja temporizatorului este durata de timp cu care nucleul poate întârzia
       trezirea anumitor apeluri de sistem care se  blochează  cu  un  timp  de  așteptare.  Permiterea  acestei
       întârzieri permite nucleului să reunească evenimentele de trezire, reducând astfel numărul de treziri ale
       sistemului  și  economisind energie. Pentru mai multe detalii, a se vedea descrierea PR_SET_TIMERSLACK în
       prctl(2).

CONSULTAȚI ȘI

       date(1), time(1), timeout(1), adjtimex(2), alarm(2), clock_gettime(2), clock_nanosleep(2), getitimer(2),
       getrlimit(2), getrusage(2), gettimeofday(2), nanosleep(2), stat(2), time(2), timer_create(2),
       timerfd_create(2), times(2), utime(2), adjtime(3), clock(3), clock_getcpuclockid(3), ctime(3),
       ntp_adjtime(3), ntp_gettime(3), pthread_getcpuclockid(3), sleep(3), strftime(3), strptime(3),
       timeradd(3), usleep(3), rtc(4), time_namespaces(7), hwclock(8)

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                                            time(7)