.\" -*- coding: UTF-8 -*- .\" Copyright 1980-1991, The Regents of the University of California. .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: BSD-4-Clause-UC .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH getpriority 2 "23 января 2026 г." "Linux man\-pages 6.18" .SH НАИМЕНОВАНИЕ getpriority, setpriority \- получить/установить приоритет планирования программы .SH БИБЛИОТЕКА Стандартная библиотека языка C (\fIlibc\fP,\ \fI\-lc\fP) .SH СИНТАКСИС .nf \fB#include \fP .P \fBint getpriority(int \fP\fIwhich\fP\fB, id_t \fP\fIwho\fP\fB);\fP \fBint setpriority(int \fP\fIwhich\fP\fB, id_t \fP\fIwho\fP\fB, int \fP\fIprio\fP\fB);\fP .fi .SH ОПИСАНИЕ С помощью вызова \fBgetpriority\fP() можно получить приоритет планирования (scheduling priority) процесса, группы процессов или пользователя, которые заданы в аргументах \fIwhich\fP и \fIwho\fP, а с помощью вызова \fBsetpriority\fP() назначить его. Атрибут процесса этих системных вызовов тот же самый что атрибут (так называемое значение уступчивости «nice»), с которым работает вызов \fBnice\fP(2). .P Значением \fIwhich\fP может быть одно из: \fBPRIO_PROCESS\fP, \fBPRIO_PGRP\fP или \fBPRIO_USER\fP, а значение \fIwho\fP рассматривается относительно \fIwhich\fP (идентификатор процесса, если \fBPRIO_PROCESS\fP; группы процесса, если \fBPRIO_PGRP\fP; идентификатор пользователя, если \fBPRIO_USER\fP). Нулевое значение \fIwho\fP означает (соответственно) вызывающий процесс, группу вызывающего процесса или реальный идентификатор пользователя вызывающего процесса. .P Аргумент \fIprio\fP — это значение в диапазоне от \-20 до 19 (смотрите ЗАМЕЧАНИЯ ниже), где \-20 это наивысший приоритет, а 19 — наинизший. Попытка задать приоритет вне этого диапазона просто подгоняется под диапазон. По умолчанию приоритет равен 0; низкие значения дают процессу больший приоритет при планировании. .P Вызов \fBgetpriority\fP() возвращает наивысший приоритет (наименьшее числовое значение) из приоритетов всех указанных процессов. Вызов \fBsetpriority\fP() устанавливает приоритеты всех указанных процессов в заданное значение. .P Обычно, только привилегированный процесс может понижать значение уступчивости (т. е., повышать приоритет). Однако начиная с Linux 2.6.12 непривилегированный процесс может понизить значение уступчивости процесса назначения, у которого установлено подходящее мягкое ограничение \fBRLIMIT_NICE\fP; подробности смотрите в \fBgetrlimit\fP(2). .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" On success, \fBgetpriority\fP() returns the calling thread's nice value, which may be a negative number. On error, it returns \-1 and sets \fIerrno\fP to indicate the error. .P Since a successful call to \fBgetpriority\fP() can legitimately return the value \-1, it is necessary to clear \fIerrno\fP prior to the call, then check \fIerrno\fP afterward to determine if \-1 is an error or a legitimate value. .P \fBsetpriority\fP() returns 0 on success. On failure, it returns \-1 and sets \fIerrno\fP to indicate the error. .SH ОШИБКИ .TP \fBEACCES\fP Вызывающий пытается понизить значение уступчивости (то есть повысить приоритет процесса), но он не имеет на это прав (в Linux: не имеет мандата \fBCAP_SYS_NICE\fP). .TP \fBEINVAL\fP Значение \fIwhich\fP не равно \fBPRIO_PROCESS\fP, \fBPRIO_PGRP\fP или \fBPRIO_USER\fP. .TP \fBEPERM\fP A process was located, but its effective user ID did not match either the effective or the real user ID of the caller, and was not privileged (on Linux: did not have the \fBCAP_SYS_NICE\fP capability). But see HISTORY below. .TP \fBESRCH\fP Не найдено процессов, которые заданы значениями \fIwhich\fP и \fIwho\fP. .SH СТАНДАРТЫ POSIX.1\-2024. .SH ИСТОРИЯ 4.2BSD, SVr4, SUSv1, POSIX.1\-2001 XSI. .P .\" The details on the condition for \fBEPERM\fP depend on the system. The above description is what POSIX.1\-2001 says, and seems to be followed on all System\ V\-like systems. Linux kernels before Linux 2.6.12 required the real or effective user ID of the caller to match the real user of the process \fIwho\fP (instead of its effective user ID). Linux 2.6.12 and later require the effective user ID of the caller to match the real or effective user ID of the process \fIwho\fP. All BSD\-like systems (SunOS 4.1.3, Ultrix 4.2, 4.3BSD, FreeBSD 4.3, OpenBSD\-2.5, ...) behave in the same manner as Linux 2.6.12 and later. .SH ПРИМЕЧАНИЯ Дополнительную информацию о значении уступчивости смотрите в \fBsched\fP(7). .P \fIЗамечание\fP: дополнительное свойство «autogroup» из Linux 2.6.38 означает, что значение уступчивости во многих случаях больше не работает как обычно. Подробней смотрите в \fBsched\fP(7). .P Потомок, созданный с помощью \fBfork\fP(2), наследует значение nice родителя. При вызове \fBexecve\fP(2) значение nice сохраняется. .SS "Отличия между библиотекой C и ядром" The getpriority system call returns nice values translated to the range 40..1, since a negative return value would be interpreted as an error. The glibc wrapper function for \fBgetpriority\fP() translates the value back according to the formula \fIunice\ =\ 20\ \-\ knice\fP (thus, the 40..1 range returned by the kernel corresponds to the range \-20..19 as seen by user space). .SH "ПРОГРАММНЫЕ ОШИБКИ" Согласно POSIX, значение nice — свойство процесса. Однако в текущей реализации Linux/NPTL нитей POSIX значение nice — атрибут нити: различные нити в одном процессе могут иметь разные значения nice. Переносимые приложения не должны полагаться на поведение Linux, которое может стать стандартом в будущем. .SH "СМОТРИТЕ ТАКЖЕ" \fBnice\fP(1), \fBrenice\fP(1), \fBfork\fP(2), \fBcapabilities\fP(7), \fBsched\fP(7) .P \fIDocumentation/scheduler/sched\-nice\-design.rst\fP in the Linux kernel source tree (since Linux 2.6.23) .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства разработал(и) Azamat Hackimov , Dmitry Bolkhovskikh , Vladislav , Yuri Kozlov и Иван Павлов . .PP Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, .UR https://www.gnu.org/licenses/gpl-3.0.html .UE версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ. .PP Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу .MT debian-l10n-russian@lists.debian.org списка рассылки русских переводчиков .ME .