# Russian translation of manpages # This file is distributed under the same license as the manpages-l10n package. # Copyright © of this file: # Azamat Hackimov , 2016. # Yuri Kozlov , 2011-2015, 2017-2019. msgid "" msgstr "" "Project-Id-Version: manpages-l10n\n" "POT-Creation-Date: 2024-06-01 06:34+0200\n" "PO-Revision-Date: 2019-10-15 19:01+0300\n" "Last-Translator: Yuri Kozlov \n" "Language-Team: Russian \n" "Language: ru\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n" "%100>=11 && n%100<=14)? 2 : 3);\n" "X-Generator: Lokalize 2.0\n" #. type: TH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "wait" msgstr "wait" #. type: TH #: archlinux debian-unstable opensuse-tumbleweed #, no-wrap msgid "2024-05-02" msgstr "2 мая 2024 г." #. type: TH #: archlinux debian-unstable #, fuzzy, no-wrap #| msgid "Linux man-pages 6.7" msgid "Linux man-pages 6.8" msgstr "Linux man-pages 6.7" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "NAME" msgstr "ИМЯ" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "wait, waitpid, waitid - wait for process to change state" msgstr "wait, waitpid, waitid - ожидает смену состояния процесса" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "LIBRARY" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Standard C library (I, I<-lc>)" msgstr "" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "SYNOPSIS" msgstr "СИНТАКСИС" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B<#include Esys/wait.hE>\n" msgstr "B<#include Esys/wait.hE>\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "" #| "BIB<);>\n" #| "BIB<, int *>IB<, int >IB<);>\n" msgid "" "BIB<);>\n" "BIB<, int *_Nullable >IB<, int >IB<);>\n" msgstr "" "BIB<);>\n" "BIB<, int *>IB<, int >IB<);>\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "BIB<, id_t >IB<, siginfo_t *>IB<, int >IB<);>\n" " /* This is the glibc and POSIX interface; see\n" " NOTES for information on the raw system call. */\n" msgstr "" "BIB<, id_t >IB<, siginfo_t *>IB<, int >IB<);>\n" " /* Это интерфейс glibc и POSIX; информацию по\n" " системному вызову ядра смотрите в ЗАМЕЧАНИЯ. */\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Feature Test Macro Requirements for glibc (see B(7)):" msgstr "" "Требования макроса тестирования свойств для glibc (см. " "B(7)):" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "B():" msgstr "B():" #. (_XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED) #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "" #| "Glibc 2.25 and earlier:\n" #| " _XOPEN_SOURCE\n" #| " || /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E=\\ 200809L\n" #| " || /* Glibc versions E= 2.19: */ _BSD_SOURCE\n" msgid "" " Since glibc 2.26:\n" " _XOPEN_SOURCE E= 500 || _POSIX_C_SOURCE E= 200809L\n" " glibc 2.25 and earlier:\n" " _XOPEN_SOURCE\n" " || /* Since glibc 2.12: */ _POSIX_C_SOURCE E= 200809L\n" " || /* glibc E= 2.19: */ _BSD_SOURCE\n" msgstr "" "в glibc 2.25 и старее:\n" " _XOPEN_SOURCE\n" " || /* начиная с glibc 2.12: */ _POSIX_C_SOURCE\\ E=\\ 200809L\n" " || /* в версиях glibc E= 2.19: */ _BSD_SOURCE\n" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "DESCRIPTION" msgstr "ОПИСАНИЕ" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "All of these system calls are used to wait for state changes in a child of " "the calling process, and obtain information about the child whose state has " "changed. A state change is considered to be: the child terminated; the " "child was stopped by a signal; or the child was resumed by a signal. In the " "case of a terminated child, performing a wait allows the system to release " "the resources associated with the child; if a wait is not performed, then " "the terminated child remains in a \"zombie\" state (see NOTES below)." msgstr "" "Данные системные вызовы используются для ожидания изменения состояния " "процесса-потомка вызвавшего процесса и получения информации о потомке, чьё " "состояние изменилось. Сменой состояния считается: прекращение работы " "потомка, останов потомка по сигналу, продолжение работы потомка по сигналу. " "Ожидание прекращения работы потомка позволяет системе освободить ресурсы, " "использовавшиеся потомком; если ожидание не выполняется, то прекративший " "работу потомок остаётся в системе в состоянии \"зомби (zombie)\" (см. " "ЗАМЕЧАНИЯ далее)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If a child has already changed state, then these calls return immediately. " "Otherwise, they block until either a child changes state or a signal handler " "interrupts the call (assuming that system calls are not automatically " "restarted using the B flag of B(2)). In the " "remainder of this page, a child whose state has changed and which has not " "yet been waited upon by one of these system calls is termed I." msgstr "" "Если состояние потомка уже изменилось, то вызов сразу возвращает результат. " "В противном случае, работа приостанавливается до тех пор, пока не произойдёт " "изменение состояния потомка или обработчик сигналов не прервёт вызов " "(предполагается, что системные вызовы не перезапускаются автоматически из-за " "указания флага B в B(2)). В оставшейся части страницы " "потомок, чьё состояние ещё не было получено одним из этих системных вызовов, " "называется I<ожидаемым (waitable)>." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "wait() and waitpid()" msgstr "wait() и waitpid()" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B() system call suspends execution of the calling thread until " "one of its children terminates. The call I is equivalent to:" msgstr "" "Системный вызов B() приостанавливает выполнение вызвавшей нити до тех " "пор, пока не прекратит выполнение один из её потомков. Вызов " "I эквивалентен:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "waitpid(-1, &wstatus, 0);\n" msgstr "waitpid(-1, &wstatus, 0);\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B() system call suspends execution of the calling thread until " "a child specified by I argument has changed state. By default, " "B() waits only for terminated children, but this behavior is " "modifiable via the I argument, as described below." msgstr "" "Системный вызов B() приостанавливает выполнение вызвавшей нити до " "тех пор, пока не изменится состояние потомка, заданного аргументом I. " "По умолчанию B() ожидает только прекращения работы потомка, но это " "можно изменить через аргумент I как описано далее." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The value of I can be:" msgstr "Значением I может быть:" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "E -1" msgid "E B<-1>" msgstr "E -1" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "meaning wait for any child process whose process group ID is equal to the " "absolute value of I." msgstr "" "означает, что нужно ждать любого потомка, чей идентификатор группы процессов " "равен абсолютному значению I." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B<-1>" msgstr "B<-1>" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "meaning wait for any child process." msgstr "означает, что нужно ждать любого потомка." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B<0>" msgstr "B<0>" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "meaning wait for any child process whose process group ID is equal to " #| "that of the calling process." msgid "" "meaning wait for any child process whose process group ID is equal to that " "of the calling process at the time of the call to B()." msgstr "" "означает, что нужно ждать любого потомка, чей идентификатор группы процессов " "равен таковому у вызвавшего процесса." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "E 0" msgid "E B<0>" msgstr "E 0" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "meaning wait for the child whose process ID is equal to the value of I." msgstr "" "означает, что нужно ждать любого потомка, чей идентификатор процесса равен " "I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The value of I is an OR of zero or more of the following constants:" msgstr "" "Значение I создаётся путем битовой операции ИЛИ над следующими " "константами:" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "return immediately if no child has exited." msgstr "" "означает немедленный возврат, если ни один потомок не завершил выполнение." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "also return if a child has stopped (but not traced via B(2)). " "Status for I children which have stopped is provided even if this " "option is not specified." msgstr "" "также возвращаться, если есть остановленный потомок (но не трассируемый " "через B(2)). Состояние I<трассируемого> остановленного потомка " "предоставляется даже если этот аргумент не указан." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.6.10)" msgstr "B (начиная с Linux 2.6.10)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "also return if a stopped child has been resumed by delivery of B." msgstr "" "также возвращаться, если работа остановленного потомка возобновилась из-за " "получения сигнала B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "(For Linux-only options, see below.)" msgstr "(Аргументы, имеющиеся только в Linux, см. далее.)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If I is not NULL, B() and B() store status " "information in the I to which it points. This integer can be inspected " "with the following macros (which take the integer itself as an argument, not " "a pointer to it, as is done in B() and B()!):" msgstr "" "Если I не равен NULL, то B() и B() сохраняют " "информацию о состоянии в переменной типа I, на которую указывает " "I. Это целое число можно исследовать с помощью следующих макросов " "(они принимают в качестве аргумента само целое, а не указатель на него как " "B() и B()!):" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BIB<)>" msgstr "BIB<)>" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "returns true if the child terminated normally, that is, by calling " "B(3) or B<_exit>(2), or by returning from main()." msgstr "" "возвращает истинное значение, если потомок нормально завершился, то есть " "вызвал B(3) или B<_exit>(2), или вернулся из функции main()." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BIB<)>" msgstr "BIB<)>" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "returns the exit status of the child. This consists of the least " "significant 8 bits of the I argument that the child specified in a " "call to B(3) or B<_exit>(2) or as the argument for a return " "statement in main(). This macro should be employed only if B " "returned true." msgstr "" "возвращает код завершения потомка. Он состоит из восьми младших бит " "аргумента I, который потомок указал при вызове B(3) или " "B<_exit>(2) или в аргументе оператора return в функции main(). Этот макрос " "можно использовать, только если B вернул истинное значение." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BIB<)>" msgstr "BIB<)>" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "returns true if the child process was terminated by a signal." msgstr "возвращает истинное значение, если потомок завершился из-за сигнала." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BIB<)>" msgstr "BIB<)>" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "returns the number of the signal that caused the child process to " "terminate. This macro should be employed only if B returned " "true." msgstr "" "возвращает номер сигнала, который привел к завершению потомка. Этот макрос " "можно использовать, только если B вернул истинное значение." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BIB<)>" msgstr "BIB<)>" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "returns true if the child produced a core dump (see B(5)). This macro " "should be employed only if B returned true." msgstr "" "возвращает истину, если потомок создал дамп памяти (смотрите B(5)). " "Этот макрос можно использовать только, если при B возвращается " "истинное значение." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This macro is not specified in POSIX.1-2001 and is not available on some " "UNIX implementations (e.g., AIX, SunOS). Therefore, enclose its use inside " "I<#ifdef WCOREDUMP ... #endif>." msgstr "" "Данный макрос не описан в POSIX.1-2001 и недоступен в некоторых реализациях " "UNIX (например, AIX, SunOS). Поэтому указывайте его внутри I<#ifdef " "WCOREDUMP ... #endif>." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BIB<)>" msgstr "BIB<)>" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "returns true if the child process was stopped by delivery of a signal; this " "is possible only if the call was done using B or when the child " "is being traced (see B(2))." msgstr "" "возвращает истинное значение, если потомок остановлен по сигналу; это " "возможно только, если при вызове был указан флаг B или если над " "потомком выполняется трассировка (см. B(2))." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BIB<)>" msgstr "BIB<)>" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "returns the number of the signal which caused the child to stop. This macro " "should be employed only if B returned true." msgstr "" "возвращает номер сигнала, из-за которого потомок был остановлен. Этот макрос " "можно использовать только, если при B возвращается истинное " "значение." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BIB<)>" msgstr "BIB<)>" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(since Linux 2.6.10) returns true if the child process was resumed by " "delivery of B." msgstr "" "(начиная с Linux 2.6.10) возвращает истинное значение, если потомок " "продолжил работу, получив сигнал B." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "waitid()" msgstr "waitid()" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B() system call (available since Linux 2.6.9) provides more " "precise control over which child state changes to wait for." msgstr "" "Системный вызов B() (доступен, начиная с Linux 2.6.9) предоставляет " "более полный контроль над тем, какого изменения состояния нужно ждать у " "потомка." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I and I arguments select the child(ren) to wait for, as " "follows:" msgstr "Аргументы I и I определяют какого(их) потомков ждать:" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I == B" msgstr "I == B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Wait for the child whose process ID matches I." msgstr "Ждать потомка, чей ID процесса совпадает с I." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I == B (since Linux 5.4)" msgstr "I == B (начиная с Linux 5.4)" #. commit 3695eae5fee0605f316fbaad0b9e3de791d7dfaf #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Wait for the child referred to by the PID file descriptor specified in " "I. (See B(2) for further information on PID file " "descriptors.)" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I == B" msgstr "I == B" #. commit 821cc7b0b205c0df64cce59aacc330af251fa8f7 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Wait for any child whose process group ID matches I. Since Linux 5.4, " "if I is zero, then wait for any child that is in the same process group " "as the caller's process group at the time of the call." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I == B" msgstr "I == B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Wait for any child; I is ignored." msgstr "Ждать любого потомка; значение I игнорируется." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The child state changes to wait for are specified by ORing one or more of " "the following flags in I:" msgstr "" "Ожидаемые изменения состояния потомков задаются следующими флагами в " "I (объединяются через OR):" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Wait for children that have terminated." msgstr "Ждать завершения потомков." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Wait for children that have been stopped by delivery of a signal." msgstr "Ждать потомков, которые завершатся по получению сигнала." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Wait for (previously stopped) children that have been resumed by delivery of " "B." msgstr "" "Ждать возобновления работы потомков (ранее остановленных) при получении " "сигнала B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The following flags may additionally be ORed in I:" msgstr "" "Дополнительно с помощью OR в I могут задаваться следующие флаги:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "As for B()." msgstr "Как в B()." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Leave the child in a waitable state; a later wait call can be used to again " "retrieve the child status information." msgstr "" "Оставить потомка в состоянии ожидания; последующий вызов wait сможет снова " "получить информацию о состоянии потомка." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Upon successful return, B() fills in the following fields of the " "I structure pointed to by I:" msgstr "" "При успешном возврате, B() заполняет следующие поля в структуре " "I, указываемой из I:" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The process ID of the child." msgstr "ID процесса потомка." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The real user ID of the child. (This field is not set on most other " "implementations.)" msgstr "" "Реальный пользовательский ID потомка. (Это поле не заполняется в большинстве " "других реализаций.)" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Always set to B." msgstr "Всегда устанавливается в B." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Either the exit status of the child, as given to B<_exit>(2) (or " "B(3)), or the signal that caused the child to terminate, stop, or " "continue. The I field can be used to determine how to interpret " "this field." msgstr "" "Заполняется кодом завершения потомка, заданном в B<_exit>(2) (или в " "B(3)), или номером сигнала, который прервал, остановил или продолжил " "работу потомка. Что записано в данном поле можно определить по значению поля " "I." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "I" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Set to one of: B (child called B<_exit>(2)); B " "(child killed by signal); B (child killed by signal, and dumped " "core); B (child stopped by signal); B (traced " "child has trapped); or B (child continued by B)." msgstr "" "Устанавливается в одно из: B (потомок вызвал B<_exit>(2)); " "B (потомок завершил работу по сигналу); B (потомок " "завершил работу по сигналу и был создан дамп памяти); B " "(потомок приостановлен по сигналу); B (трассируемый потомок был " "захвачен); или B (потомок продолжил работу по сигналу " "B)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B was specified in I and there were no children in a " "waitable state, then B() returns 0 immediately and the state of the " "I structure pointed to by I depends on the " "implementation. To (portably) distinguish this case from that where a child " "was in a waitable state, zero out the I field before the call and " "check for a nonzero value in this field after the call returns." msgstr "" "Если в I указан флаг B и нет потомков в состоянии " "ожидания, то B() сразу возвращает 0, а состояние структуры " "I, на которую указывает I, зависит от реализации. Чтобы " "(точно) отличать этот случай от того, что потомок был в ожидаемом состоянии, " "обнулите поле I перед вызовом и проверьте ненулевое значение в этом " "поле после отработки вызова." #. POSIX.1-2001 leaves this possibility unspecified; most #. implementations (including Linux) zero out the structure #. in this case, but at least one implementation (AIX 5.1) #. does not -- MTK Nov 04 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "POSIX.1-2008 Technical Corrigendum 1 (2013) adds the requirement that when " "B is specified in I and there were no children in a " "waitable state, then B() should zero out the I and " "I fields of the structure. On Linux and other implementations " "that adhere to this requirement, it is not necessary to zero out the " "I field before calling B(). However, not all " "implementations follow the POSIX.1 specification on this point." msgstr "" "В POSIX.1-2008 Technical Corrigendum 1 (2013) добавлено требование, что при " "указании B в I и нет потомков в состоянии ожидания, то " "вызов B() должен возвращать в структуре обнулённые поля I и " "I. В Linux и других реализациях придерживаются этого требования, " "поэтому не нужно обнулять поле I перед вызовом B(). Однако в " "этом не все реализации следуют POSIX.1." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "RETURN VALUE" msgstr "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "B(): on success, returns the process ID of the terminated child; on " #| "error, -1 is returned." msgid "" "B(): on success, returns the process ID of the terminated child; on " "failure, -1 is returned." msgstr "" "В случае успешного выполнения B() возвращает ID процесса " "завершившегося потомка; при ошибке возвращается -1." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "B(): on success, returns the process ID of the child whose state " #| "has changed; if B was specified and one or more child(ren) " #| "specified by I exist, but have not yet changed state, then 0 is " #| "returned. On error, -1 is returned." msgid "" "B(): on success, returns the process ID of the child whose state " "has changed; if B was specified and one or more child(ren) " "specified by I exist, but have not yet changed state, then 0 is " "returned. On failure, -1 is returned." msgstr "" "В случае успешного выполнения B() возвращает ID процесса потомка, " "чьё состояние изменилось; если задан флаг B и существует один или " "более потомков, заданных в I, без изменённого состояния, то " "возвращается 0. При ошибке возвращается -1." #. FIXME As reported by Vegard Nossum, if infop is NULL, then waitid() #. returns the PID of the child. Either this is a bug, or it is intended #. behavior that needs to be documented. See my Jan 2009 LKML mail #. "waitid() return value strangeness when infop is NULL". #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "B(): returns 0 on success or if B was specified and no " #| "child(ren) specified by I has yet changed state; on error, -1 is " #| "returned." msgid "" "B(): returns 0 on success or if B was specified and no " "child(ren) specified by I has yet changed state; on failure, -1 is " "returned." msgstr "" "Вызов B() возвращает 0 в случае успешного выполнения или если задан " "флаг B и пока не существует потомка(ов), указанного в I,с " "изменённым состоянием. При ошибке возвращается -1." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "Each of these calls sets I to an appropriate value in the case of " #| "an error." msgid "On failure, each of these calls sets I to indicate the error." msgstr "" "Каждый из этих вызовов записывает в I соответствующую причину ошибки." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ERRORS" msgstr "ОШИБКИ" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The PID file descriptor specified in I is nonblocking and the process " "that it refers to has not terminated." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(for B()) The calling process does not have any unwaited-for children." msgstr "(для B()) У вызвавшего процесса нет ожидающих потомков." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(for B() or B()) The process specified by I " "(B()) or I and I (B()) does not exist or is " "not a child of the calling process. (This can happen for one's own child if " "the action for B is set to B. See also the I " "section about threads.)" msgstr "" "(для B() или B()) Процесс, заданный I (B()) " "или I и I (B()), не существует или не является потомком " "вызвавшего процесса. (Это может случиться для своего потомка, если действие " "для B установлено в B. См. также раздел I о " "нитях.)" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was not set and an unblocked signal or a B was caught; " "see B(7)." msgstr "" "Флаг B не задан и был пойман неблокируемый сигнал или B; " "см. B(7)." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The I argument was invalid." msgstr "Недопустимое значение I." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "(for B() or B()) I is equal to B." msgstr "" #. type: SH #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "VERSIONS" msgstr "ВЕРСИИ" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "C library/kernel differences" msgstr "Отличия между библиотекой C и ядром" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() is actually a library function that (in glibc) is implemented as " "a call to B(2)." msgstr "" "В действительности, B() — библиотечная функция, которая (в glibc) " "реализована через вызов B(2)." #. e.g., i386 has the system call, but not x86-64 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On some architectures, there is no B() system call; instead, this " "interface is implemented via a C library wrapper function that calls " "B(2)." msgstr "" "Для некоторых архитектур нет системного вызова B(); его заменяет " "интерфейс, реализованный через обёрточную функцию библиотеки C, которая " "вызывает B(2)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The raw B() system call takes a fifth argument, of type I. If this argument is non-NULL, then it is used to return " "resource usage information about the child, in the same manner as " "B(2). See B(2) for details." msgstr "" "Системный вызов ядра B() имеет пятый аргумент с типом I. Если его значение не равно NULL, то он используется для возврата " "информации по используемым ресурсам в потомке, в том же виде что и " "B(2). Подробности смотрите в B(2)." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "STANDARDS" msgstr "СТАНДАРТЫ" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "POSIX.1-2008." msgstr "POSIX.1-2008." #. type: SH #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "HISTORY" msgstr "ИСТОРИЯ" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "SVr4, 4.3BSD, POSIX.1-2001." msgstr "SVr4, 4.3BSD, POSIX.1-2001." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "NOTES" msgstr "ПРИМЕЧАНИЯ" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A child that terminates, but has not been waited for becomes a \"zombie\". " "The kernel maintains a minimal set of information about the zombie process " "(PID, termination status, resource usage information) in order to allow the " "parent to later perform a wait to obtain information about the child. As " "long as a zombie is not removed from the system via a wait, it will consume " "a slot in the kernel process table, and if this table fills, it will not be " "possible to create further processes. If a parent process terminates, then " "its \"zombie\" children (if any) are adopted by B(1), (or by the " "nearest \"subreaper\" process as defined through the use of the B(2) " "B operation); B(1) automatically performs a " "wait to remove the zombies." msgstr "" "Потомок, который завершился, но которого не ждали, становится " "«зомби» (zombie). Ядро поддерживает минимальный набор информации о процессах " "зомби (PID, состояние завершения, использованные ресурсы), чтобы позже " "позволить родителю выполнить процесс ожидания для получения информации о " "потомке. До тех пор, пока зомби не будет удалён из системы через процесс " "ожидания (wait), он занимает пространство (slot) в таблице процессов ядра, и " "если таблица заполнится, станет невозможно создавать новые процессы. Если " "родительский процесс завершает работу, то его потомки «зомби» (если есть) " "усыновляются процессом B(1) (или ближайшим «сборщиком», определённым " "посредством вызова B(2)с операцией B); " "B(1) автоматически выполняет процедуру ожидания для удаления зомби." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "POSIX.1-2001 specifies that if the disposition of B is set to " "B or the B flag is set for B (see " "B(2)), then children that terminate do not become zombies and a " "call to B() or B() will block until all children have " "terminated, and then fail with I set to B. (The original " "POSIX standard left the behavior of setting B to B " "unspecified. Note that even though the default disposition of B is " "\"ignore\", explicitly setting the disposition to B results in " "different treatment of zombie process children.)" msgstr "" "В POSIX.1-2001 указано, что если для B указан флаг B или " "B (смотрите B(2)), то завершающиеся потомки не " "становятся зомби, а вызов B() или B() заблокирует выполнение " "до тех пор, пока все потомки не завершат работу, и затем завершится с " "ошибкой I, равной B (в оригинальном стандарте POSIX такое " "значение настройки B в B не определено. Заметим, что хотя " "поведение B по умолчанию является «игнорирование», явная установка " "в B приводит другому обращению с потомками зомби)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Linux 2.6 conforms to the POSIX requirements. However, Linux 2.4 (and " "earlier) does not: if a B() or B() call is made while " "B is being ignored, the call behaves just as though B were " "not being ignored, that is, the call blocks until the next child terminates " "and then returns the process ID and status of that child." msgstr "" "Linux 2.6 соответствует данной спецификации. Однако, Linux 2.4 (и ранее) не " "соответствует: если вызов B() или B() сделан при " "игнорировании B, вызов работает как если бы B не " "игнорировался, то есть, вызов блокирует работу до тех пор, пока следующий " "потомок не завершит работу и затем возвращает ID процесса и состояние этого " "потомка." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Linux notes" msgstr "Замечания, касающиеся Linux" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "In the Linux kernel, a kernel-scheduled thread is not a distinct construct " "from a process. Instead, a thread is simply a process that is created using " "the Linux-unique B(2) system call; other routines such as the " "portable B(3) call are implemented using B(2). " "Before Linux 2.4, a thread was just a special case of a process, and as a " "consequence one thread could not wait on the children of another thread, " "even when the latter belongs to the same thread group. However, POSIX " "prescribes such functionality, and since Linux 2.4 a thread can, and by " "default will, wait on children of other threads in the same thread group." msgstr "" "В ядре Linux нити, управляемые ядром, устройством не отличаются от процесса. " "Нить \\(em это просто процесс, который создан уникальным (существующим " "только в Linux) системным вызовом B(2); другие процедуры, такие как " "переносимая версия B(3), также реализованы с помощью " "B(2). До Linux 2.4, нить представляла собой специализированный " "вариант процесса, и, как следствие, нить не могла ждать потомков другой " "нити, даже когда последняя принадлежала той же группе нитей. Однако, в POSIX " "вписали такую функциональность, и, начиная с Linux 2.4, нить может, и по " "умолчанию будет ждать потомков других нитей в той же группе нитей." #. commit 91c4e8ea8f05916df0c8a6f383508ac7c9e10dba #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The following Linux-specific I are for use with children created " "using B(2); they can also, since Linux 4.7, be used with B():" msgstr "" "Следующие значения I, присущие только Linux, используются для " "потомков, созданных с помощью B(2); начиная с Linux 4.7, они также " "могут использоваться с B():" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B<__WCLONE>" msgstr "B<__WCLONE>" #. since 0.99pl10 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Wait for \"clone\" children only. If omitted, then wait for \"non-clone\" " "children only. (A \"clone\" child is one which delivers no signal, or a " "signal other than B to its parent upon termination.) This option " "is ignored if B<__WALL> is also specified." msgstr "" "Ждать только «клонированных (clone)» потомков. Если не указано, то ожидаются " "только «не клонированные» потомки («клонированным» считается потомок, " "который не доставляет сигнал, или сигнал, отличный от B, своему " "родителю при завершении). Этот аргумент игнорируется, если также указано " "B<__WALL>." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B<__WALL> (since Linux 2.4)" msgstr "B<__WALL> (начиная с Linux 2.4)" #. since patch-2.3.48 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Wait for all children, regardless of type (\"clone\" or \"non-clone\")." msgstr "" "Ждать всех потомков независимо от типа (\"клонированный\" или " "\"неклонированный\")." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B<__WNOTHREAD> (since Linux 2.4)" msgstr "B<__WNOTHREAD> (начиная с Linux 2.4)" #. since patch-2.4.0-test8 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Do not wait for children of other threads in the same thread group. This " "was the default before Linux 2.4." msgstr "" "Не ждать потомков других нитей в той же группе нитей. Это поведение по " "умолчанию до Linux 2.4." #. commit bf959931ddb88c4e4366e96dd22e68fa0db9527c #. prevents cases where an unreapable zombie is created if #. /sbin/init doesn't use __WALL. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Since Linux 4.7, the B<__WALL> flag is automatically implied if the child is " "being ptraced." msgstr "" "Начиная с Linux 4.7, в случае, когда потомок был вызван с помощью ptrace, " "флаг B<__WALL> назначается автоматически." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BUGS" msgstr "ОШИБКИ" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "According to POSIX.1-2008, an application calling B() must ensure " "that I points to a I structure (i.e., that it is a non-" "null pointer). On Linux, if I is NULL, B() succeeds, and " "returns the process ID of the waited-for child. Applications should avoid " "relying on this inconsistent, nonstandard, and unnecessary feature." msgstr "" "Согласно POSIX.1-2008, приложение, вызывающее B(), должно убедиться, " "что I указывает на структуру I (т. е., что это указатель " "не равен null). В Linux, если I равно NULL, то B() " "выполняется успешно и возвращает ID процесса ожидавшегося потомка. " "Приложения не должны полагаться на это несогласованное, нестандартное и " "ненужное свойство." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "EXAMPLES" msgstr "ПРИМЕРЫ" #. fork.2 refers to this example program. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The following program demonstrates the use of B(2) and B(). " "The program creates a child process. If no command-line argument is " "supplied to the program, then the child suspends its execution using " "B(2), to allow the user to send signals to the child. Otherwise, if " "a command-line argument is supplied, then the child exits immediately, using " "the integer supplied on the command line as the exit status. The parent " "process executes a loop that monitors the child using B(), and uses " "the W*() macros described above to analyze the wait status value." msgstr "" "В следующей программе показано использование B(2) и B(). " "Программа создаёт процесс потомок. Если программа запущена без параметров, " "то потомок приостанавливает выполнение с помощью B(2), чтобы " "позволить пользователю послать сигнал потомку. Иначе, если в командной " "строке задан параметр, то потомок завершает работу сразу, используя " "переданное в параметре командной строки целое число как код завершения. " "Процесс родитель работает в цикле, следя за потомком с помощью B(), " "и использует макросы W*(), описанные ранее, для анализа значения состояния " "ожидания." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The following shell session demonstrates the use of the program:" msgstr "Следующий сеанс работы в оболочке показывает работу с программой:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "$B< ./a.out &>\n" "Child PID is 32360\n" "[1] 32359\n" "$B< kill -STOP 32360>\n" "stopped by signal 19\n" "$B< kill -CONT 32360>\n" "continued\n" "$B< kill -TERM 32360>\n" "killed by signal 15\n" "[1]+ Done ./a.out\n" "$\n" msgstr "" "$B< ./a.out &>\n" "Child PID is 32360\n" "[1] 32359\n" "$B< kill -STOP 32360>\n" "stopped by signal 19\n" "$B< kill -CONT 32360>\n" "continued\n" "$B< kill -TERM 32360>\n" "killed by signal 15\n" "[1]+ Done ./a.out\n" "$\n" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Program source" msgstr "Исходный код программы" #. type: Plain text #: archlinux debian-unstable opensuse-tumbleweed #, no-wrap msgid "" "#include Estdint.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/types.hE\n" "#include Esys/wait.hE\n" "#include Eunistd.hE\n" "\\&\n" "int\n" "main(int argc, char *argv[])\n" "{\n" " int wstatus;\n" " pid_t cpid, w;\n" "\\&\n" " cpid = fork();\n" " if (cpid == -1) {\n" " perror(\"fork\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " if (cpid == 0) { /* Code executed by child */\n" " printf(\"Child PID is %jd\\en\", (intmax_t) getpid());\n" " if (argc == 1)\n" " pause(); /* Wait for signals */\n" " _exit(atoi(argv[1]));\n" "\\&\n" " } else { /* Code executed by parent */\n" " do {\n" " w = waitpid(cpid, &wstatus, WUNTRACED | WCONTINUED);\n" " if (w == -1) {\n" " perror(\"waitpid\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " if (WIFEXITED(wstatus)) {\n" " printf(\"exited, status=%d\\en\", WEXITSTATUS(wstatus));\n" " } else if (WIFSIGNALED(wstatus)) {\n" " printf(\"killed by signal %d\\en\", WTERMSIG(wstatus));\n" " } else if (WIFSTOPPED(wstatus)) {\n" " printf(\"stopped by signal %d\\en\", WSTOPSIG(wstatus));\n" " } else if (WIFCONTINUED(wstatus)) {\n" " printf(\"continued\\en\");\n" " }\n" " } while (!WIFEXITED(wstatus) && !WIFSIGNALED(wstatus));\n" " exit(EXIT_SUCCESS);\n" " }\n" "}\n" msgstr "" #. SRC END #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "SEE ALSO" msgstr "СМОТРИТЕ ТАКЖЕ" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B<_exit>(2), B(2), B(2), B(2), B(2), " "B(2), B(2), B(2), B(3), " "B(5), B(7), B(7)" msgstr "" "B<_exit>(2), B(2), B(2), B(2), B(2), " "B(2), B(2), B(2), B(3), " "B(5), B(7), B(7)" #. type: TH #: debian-bookworm #, no-wrap msgid "2023-02-05" msgstr "5 февраля 2023 г." #. type: TH #: debian-bookworm #, no-wrap msgid "Linux man-pages 6.03" msgstr "Linux man-pages 6.03" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "#include Estdint.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/wait.hE\n" "#include Eunistd.hE\n" msgstr "" "#include Estdint.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/wait.hE\n" "#include Eunistd.hE\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "int\n" "main(int argc, char *argv[])\n" "{\n" " int wstatus;\n" " pid_t cpid, w;\n" msgstr "" "int\n" "main(int argc, char *argv[])\n" "{\n" " int wstatus;\n" " pid_t cpid, w;\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " cpid = fork();\n" " if (cpid == -1) {\n" " perror(\"fork\");\n" " exit(EXIT_FAILURE);\n" " }\n" msgstr "" " cpid = fork();\n" " if (cpid == -1) {\n" " perror(\"fork\");\n" " exit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, fuzzy, no-wrap #| msgid "" #| " if (cpid == 0) { /* Code executed by child */\n" #| " printf(\"Child PID is %ld\\en\", (long) getpid());\n" #| " if (argc == 1)\n" #| " pause(); /* Wait for signals */\n" #| " _exit(atoi(argv[1]));\n" msgid "" " if (cpid == 0) { /* Code executed by child */\n" " printf(\"Child PID is %jd\\en\", (intmax_t) getpid());\n" " if (argc == 1)\n" " pause(); /* Wait for signals */\n" " _exit(atoi(argv[1]));\n" msgstr "" " if (cpid == 0) { /* Код, выполняемый потомком */\n" " printf(\"Child PID is %ld\\en\", (long) getpid());\n" " if (argc == 1)\n" " pause(); /* Ожидание сигналов */\n" " _exit(atoi(argv[1]));\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " } else { /* Code executed by parent */\n" " do {\n" " w = waitpid(cpid, &wstatus, WUNTRACED | WCONTINUED);\n" " if (w == -1) {\n" " perror(\"waitpid\");\n" " exit(EXIT_FAILURE);\n" " }\n" msgstr "" " } else { /* Код, выполняемый родителем */\n" " do {\n" " w = waitpid(cpid, &wstatus, WUNTRACED | WCONTINUED);\n" " if (w == -1) {\n" " perror(\"waitpid\");\n" " exit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (WIFEXITED(wstatus)) {\n" " printf(\"exited, status=%d\\en\", WEXITSTATUS(wstatus));\n" " } else if (WIFSIGNALED(wstatus)) {\n" " printf(\"killed by signal %d\\en\", WTERMSIG(wstatus));\n" " } else if (WIFSTOPPED(wstatus)) {\n" " printf(\"stopped by signal %d\\en\", WSTOPSIG(wstatus));\n" " } else if (WIFCONTINUED(wstatus)) {\n" " printf(\"continued\\en\");\n" " }\n" " } while (!WIFEXITED(wstatus) && !WIFSIGNALED(wstatus));\n" " exit(EXIT_SUCCESS);\n" " }\n" "}\n" msgstr "" " if (WIFEXITED(wstatus)) {\n" " printf(\"exited, status=%d\\en\", WEXITSTATUS(wstatus));\n" " } else if (WIFSIGNALED(wstatus)) {\n" " printf(\"killed by signal %d\\en\", WTERMSIG(wstatus));\n" " } else if (WIFSTOPPED(wstatus)) {\n" " printf(\"stopped by signal %d\\en\", WSTOPSIG(wstatus));\n" " } else if (WIFCONTINUED(wstatus)) {\n" " printf(\"continued\\en\");\n" " }\n" " } while (!WIFEXITED(wstatus) && !WIFSIGNALED(wstatus));\n" " exit(EXIT_SUCCESS);\n" " }\n" "}\n" #. type: TH #: fedora-40 fedora-rawhide mageia-cauldron #, no-wrap msgid "2023-10-31" msgstr "31 октября 2023 г." #. type: TH #: fedora-40 mageia-cauldron #, no-wrap msgid "Linux man-pages 6.06" msgstr "Linux man-pages 6.06" #. type: Plain text #: fedora-40 fedora-rawhide mageia-cauldron #, no-wrap msgid "" "#include Estdint.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/wait.hE\n" "#include Eunistd.hE\n" "\\&\n" "int\n" "main(int argc, char *argv[])\n" "{\n" " int wstatus;\n" " pid_t cpid, w;\n" "\\&\n" " cpid = fork();\n" " if (cpid == -1) {\n" " perror(\"fork\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " if (cpid == 0) { /* Code executed by child */\n" " printf(\"Child PID is %jd\\en\", (intmax_t) getpid());\n" " if (argc == 1)\n" " pause(); /* Wait for signals */\n" " _exit(atoi(argv[1]));\n" "\\&\n" " } else { /* Code executed by parent */\n" " do {\n" " w = waitpid(cpid, &wstatus, WUNTRACED | WCONTINUED);\n" " if (w == -1) {\n" " perror(\"waitpid\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " if (WIFEXITED(wstatus)) {\n" " printf(\"exited, status=%d\\en\", WEXITSTATUS(wstatus));\n" " } else if (WIFSIGNALED(wstatus)) {\n" " printf(\"killed by signal %d\\en\", WTERMSIG(wstatus));\n" " } else if (WIFSTOPPED(wstatus)) {\n" " printf(\"stopped by signal %d\\en\", WSTOPSIG(wstatus));\n" " } else if (WIFCONTINUED(wstatus)) {\n" " printf(\"continued\\en\");\n" " }\n" " } while (!WIFEXITED(wstatus) && !WIFSIGNALED(wstatus));\n" " exit(EXIT_SUCCESS);\n" " }\n" "}\n" msgstr "" #. type: TH #: fedora-rawhide #, no-wrap msgid "Linux man-pages 6.7" msgstr "Linux man-pages 6.7" #. type: TH #: opensuse-leap-15-6 #, no-wrap msgid "2023-03-30" msgstr "30 марта 2023 г." #. type: TH #: opensuse-leap-15-6 #, no-wrap msgid "Linux man-pages 6.04" msgstr "Linux man-pages 6.04" #. type: TH #: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "Linux man-pages 6.7" msgid "Linux man-pages (unreleased)" msgstr "Linux man-pages 6.7"