Provided by: manpages-pl-dev_0.5-1_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/.