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

NUME

       getpriority, setpriority - obține/stabilește prioritatea de planificare a programului

BIBLIOTECA

       Biblioteca C standard (libc, -lc)

SINOPSIS

       #include <sys/resource.h>

       int getpriority(int which, id_t who);
       int setpriority(int which, id_t who, int prio);

DESCRIERE

       Prioritatea  de  planificare  a  procesului,  a  grupului  de  procese sau a utilizatorului, așa cum este
       indicată de which și who, se obține cu apelul getpriority() și se  stabilește  cu  apelul  setpriority().
       Atributul  de  proces  tratat de aceste apeluri de sistem este același atribut (cunoscut și sub numele de
       valoare „de curtoazie” (nice)) care este tratat de nice(2).

       Valoarea which este una dintre PRIO_PROCESS, PRIO_PGRP sau PRIO_USER, iar who este interpretată în raport
       cu which (un identificator de proces pentru PRIO_PROCESS, un  identificator  de  grup  de  proces  pentru
       PRIO_PGRP și un ID de utilizator pentru PRIO_USER). O valoare zero pentru who denotă (respectiv) procesul
       apelant, grupul de procese al procesului apelant sau ID-ul real de utilizator al procesului apelant.

       Argumentul prio este o valoare cuprinsă între -20 și 19 (a se vedea secțiunea NOTE de mai jos), -20 fiind
       cea  mai  mare  prioritate  și 19 cea mai mică prioritate. Încercările de a stabili o prioritate în afara
       acestui interval sunt fixate în mod silențios în intervalul  respectiv.  Prioritatea  implicită  este  0;
       valorile mai mici conferă unui proces o prioritate de planificare mai mare.

       Apelul getpriority() returnează cea mai mare prioritate (cea mai mică valoare numerică) de care se bucură
       oricare  dintre  procesele  specificate.  Apelul setpriority() stabilește prioritățile tuturor proceselor
       specificate la valoarea specificată.

       În mod tradițional, numai un proces privilegiat putea să reducă valoarea „nice” (adică să  stabilească  o
       prioritate  mai  mare).  Cu toate acestea, începând cu Linux 2.6.12, un proces neprivilegiat poate scădea
       valoarea „nice” a unui proces țintă care are o limită flexibilă  RLIMIT_NICE  adecvată;  pentru  detalii,
       consultați getrlimit(2).

VALOAREA RETURNATĂ

       În  caz de succes, getpriority() returnează valoarea de curtoazie „nice” a firului apelant, care poate fi
       un număr negativ. În caz de eroare, returnează -1 și configurează errno pentru a indica eroarea.

       Deoarece un apel reușit la getpriority() poate returna în mod legitim valoarea -1,  este  necesar  să  se
       elibereze  errno  înainte de apel, apoi să se verifice errno după aceea pentru a determina dacă -1 este o
       eroare sau o valoare legitimă.

       setpriority() returnează 0 în caz de succes, În caz de eroare, returnează -1 și configurează errno pentru
       a indica eroarea.

ERORI-IEȘIRE

       EACCES Apelantul a încercat să stabilească o  valoare  de  curtoazie  „nice”  mai  mică  (de  exemplu,  o
              prioritate  mai mare a procesului), dar nu avea privilegiul necesar (în Linux: nu avea capacitatea
              CAP_SYS_NICE).

       EINVAL which nu a fost una dintre PRIO_PROCESS, PRIO_PGRP sau PRIO_USER.

       EPERM  A fost localizat un proces, dar ID-ul său efectiv de  utilizator  nu  corespundea  nici  cu  ID-ul
              efectiv,  nici  cu  cel  real  al apelantului și nu era privilegiat (în Linux: nu avea capacitatea
              CAP_SYS_NICE). Dar consultați secțiunea NOTE de mai jos.

       ESRCH  Nu a fost localizat niciun proces folosind valorile which și who specificate.

STANDARDE

       POSIX.1-2008.

ISTORIC

       POSIX.1-2001 SVr4, 4.4BSD (aceste apeluri de sistem au apărut pentru prima dată în 4.2BSD).

NOTE

       Pentru mai multe detalii cu privire la această valoare „nice”, a se vedea sched(7).

       Notă: adăugarea caracteristicii „autogroup” în Linux 2.6.38 înseamnă că valoarea de curtoazie  „nice”  nu
       mai are efectul său tradițional în multe situații. Pentru detalii, a se vedea sched(7).

       Un  proces-copil  creat  de  fork(2)  moștenește  valoarea  de curtoazie „nice” a părintelui său. Această
       valoare este păstrată în execve(2).

       Detaliile privind condiția pentru EPERM depind de sistem. Descrierea  de  mai  sus  este  ceea  ce  spune
       POSIX.1-2001  și  se  pare  că  este urmată pe toate sistemele de tip System V. Nucleele Linux înainte de
       Linux 2.6.12 cereau ca ID-ul de utilizator real sau efectiv  al  apelantului  să  corespundă  cu  cel  al
       utilizatorului  real  al procesului who (în loc de ID-ul de utilizator efectiv al acestuia). Linux 2.6.12
       și versiunile ulterioare impun ca ID-ul efectiv al utilizatorului apelantului să corespundă cu ID-ul real
       sau efectiv al utilizatorului procesului who. Toate sistemele  de  tip  BSD  (SunOS  4.1.3,  Ultrix  4.2,
       4.3BSD,  FreeBSD  4.3,  OpenBSD-2.5,  ...)  se  comportă  în același mod ca și Linux 2.6.12 și versiunile
       ulterioare.

   Diferențe între biblioteca C și nucleu
       Apelul de sistem getpriority returnează valori de curtoazie „nice” traduse în intervalul 40...1, deoarece
       o valoare de returnare negativă ar fi interpretată  ca  o  eroare.  Funcția  de  învăluire  glibc  pentru
       getpriority()  traduce  valoarea  înapoi  conform  formulei  unice = 20 - knice (astfel, intervalul 40..1
       returnat de nucleu corespunde intervalului -20..19, așa cum este văzut de spațiul utilizatorului).

ERORI

       În conformitate cu POSIX, valoarea de curtoazie „nice” este un atribut pentru fiecare proces în parte. Cu
       toate acestea, în cadrul implementării actuale Linux/NPTL a firelor POSIX, valoarea de curtoazie este  un
       atribut  per  fir:  diferite  fire  din același proces pot avea valori de curtoazie diferite. Aplicațiile
       portabile ar trebui să evite să se bazeze pe comportamentul  Linux,  care  ar  putea  deveni  conform  cu
       standardele în viitor.

CONSULTAȚI ȘI

       nice(1), renice(1), fork(2), capabilities(7), sched(7)

       Documentation/scheduler/sched-nice-design.txt  în  arborele  sursă  al nucleului Linux (începând cu Linux
       2.6.23)

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                                     getpriority(2)