Provided by: manpages-pl-dev_0.7-2_all bug

NAZWA

       getpriority, setpriority - pobranie/ustawienie priorytetu programu podczas szeregowania zadań

SKŁADNIA

       #include <sys/time.h>
       #include <sys/resource.h>

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

OPIS

        Uwaga! To tłumaczenie może być nieaktualne!

       Priorytet  procesu,  grupy procesów, lub użytkownika podczas szeregowania zadań, wskazywany przez which i
       who jest uzyskiwany za pomocą wywołania getpriority a ustawiany za pomocą wywołania  setpriority.   which
       jest  jednym  z  PRIO_PROCESS,  PRIO_PGRP  lub  PRIO_USER,  a  who  jest  interpretowane  względem  which
       (identyfikator procesu dla PRIO_PROCESS, identyfikator  grupy  procesów  dla  PRIO_PGRP  i  identyfikator
       użytkownika  dla  PRIO_USER).   Zerowa  wartość who określa (odpowiednio) proces wywołujący funkcję, jego
       grupę procesów lub  rzeczywisty  identyfikator  użytkownika  procesu  wywołującego  funksję.   prio  jest
       wartością  z  zakresu  od  -20 do 20 (lecz zobacz UWAGI poniżej).  Domyślnym priorytetem jest 0; mniejsze
       priorytety powodują korzystniejsze traktowanie podczas szeregowania zadań.

       Funkcja getpriority zwraca najwyższą wartość (najniższą wartość numeryczną),  spośród  posiadanych  przez
       którykolwiek  z podanych procesów. Funkcja setpriority ustawia priorytety wszystkich podanych procesów na
       wskazaną wartość. Jedynie superużytkownik może zmniejszać priorytety.

WARTOŚĆ ZWRACANA

       Ponieważ -1 jest legalną wartością  spośród  normalnie  zwracanych  przez  getpriority,  niezbędnym  jest
       wyzerowanie  zmiennej  zewnętrznej  errno  przed  wywołaniem  tej funkcji i późniejsze sprawdzenie czy -1
       oznaczało błąd, czy normalną wartość.  Funkcja setpriority zwraca 0 jeśli nie było błędów  lub  -1  jeśli
       jakiś wystąpił.

BŁĘDY

       ESRCH  Nie zlokalizowano żadnego procesu przy użyciu podanych wartości which i who.

       EINVAL which nie był jednym z PRIO_PROCESS, PRIO_PGRP lub PRIO_USER.

       Oprócz powyższych błędów, dla setpriority mogą wystąpić:

       EPERM  Proces  został  zlokalizowany,  lecz  ani  jego  efektywny,  ani  rzeczywisty  ID  użytkownika nie
              odpowiadał efektywnemu ID użytkownika wywołującego.

       EACCES Użytkownik nie będący superużytkownikiem próbował obniżyć priorytet procesu.

UWAGI

       Szczegółowe warunki wystąpienia błędu EPERM zależą od systemu.  Powyżej opisano  co  mówi  na  ten  temat
       SUSv3,  z  którym  wydają  sie być zgodne wszystkie systemy typu SYSV.  Linux wymaga, aby rzeczywisty lub
       efektywny ID użytkownika wywołującego zgadzał się z rzeczywistym użytkownikiem  procesu  who  (zamiast  z
       jego  efektywnym  ID użytkownika).  Wszystkie systemy typu BSD (SunOS 4.1.3, Ultrix 4.2, BSD 4.3, FreeBSD
       4.3, OpenBSD-2.5, ...) wymagają, aby efektywny ID użytkownika wywołującego zgadzał się z   efektywnym  ID
       użytkownika procesu who.

       Rezczywisty  zakres  priorytetów jest różny dla różnych wersji jądra.  Linux wcześniejszy niż 1.3.36 miał
       -nieskończoność..15. Linux od 1.3.43 ma -20..19, a funkcja systemowa getpriority zwraca  40..1  dla  tych
       wartości (gdyż liczby ujemne są kodami błędów).  Funkcja biblioteczna przekształca N na 20-N.

       Włączanie   <sys/time.h>   nie   jest   obecnie   wymagane,  ale  zwiększa  przenośność.   (Rzeczywiście,
       <sys/resource.h> definiuje strukturę  rusage  zawierającą  pola  typu  struct  timeval  zdefiniowanego  w
       <sys/time.h>.)

ZGODNE Z

       SVr4, 4.4BSD (funkcje te pierwotnie pojawiły się w 4.2BSD).

ZOBACZ TAKŻE

       nice(1), fork(2), renice(8)

INFORMACJE O TŁUMACZENIU

       Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i może nie być aktualne.
       W razie zauważenia różnic między powyższym opisem a rzeczywistym  zachowaniem  opisywanego  programu  lub
       funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia:

              man --locale=C 2 getpriority

       Prosimy   o   pomoc   w   aktualizacji   stron   man  -  więcej  informacji  można  znaleźć  pod  adresem
       http://sourceforge.net/projects/manpages-pl/.