# Russian translation of manpages # This file is distributed under the same license as the manpages-l10n package. # Copyright © of this file: # aereiae , 2014. # Alexey , 2015. # Azamat Hackimov , 2013-2017. # Dmitriy S. Seregin , 2013. # Dmitry Bolkhovskikh , 2017. # ITriskTI , 2013. # Max Is , 2016. # Yuri Kozlov , 2011-2019. # Иван Павлов , 2017. # Малянов Евгений Викторович , 2014. msgid "" msgstr "" "Project-Id-Version: manpages-l10n\n" "POT-Creation-Date: 2024-06-01 06:05+0200\n" "PO-Revision-Date: 2019-10-06 08:59+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 "MSGOP" msgstr "MSGOP" #. 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 "msgrcv, msgsnd - System V message queue operations" msgstr "msgrcv, msgsnd - операции с очередью сообщений System V" #. 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/msg.hE>\n" msgstr "B<#include Esys/msg.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<, const void *>IB<, size_t >IB<, int >IB<);>\n" msgid "" "BIB<, const void >IB<[.>IB<], size_t >IB<,>\n" "B< int >IB<);>\n" msgstr "BIB<, const void *>IB<, size_t >IB<, int >IB<);>\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<, void *>IB<, size_t >IB<, long >IB<,>\n" #| "B< int >IB<);>\n" msgid "" "BIB<, void >IB<[.>IB<], size_t >IB<, long >IB<,>\n" "B< int >IB<);>\n" msgstr "" "BIB<, void *>IB<, size_t >IB<, long >IB<,>\n" "B< int >IB<);>\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 "" "The B() and B() system calls are used to send messages to, " "and receive messages from, a System\\ V message queue. The calling process " "must have write permission on the message queue in order to send a message, " "and read permission to receive a message." msgstr "" "Системные вызовы B() и B() используются для отправки и " "получения сообщений из очереди сообщений System\\ V. Вызывающий процесс " "должен иметь права на запись в очередь сообщений, чтобы отправлять сообщения " "и права на чтение для получения сообщений." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I argument is a pointer to a caller-defined structure of the " "following general form:" msgstr "" "Аргумент I представляет собой указатель на структуру, определяемую " "вызывающим как:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "struct msgbuf {\n" " long mtype; /* message type, must be E 0 */\n" " char mtext[1]; /* message data */\n" "};\n" msgstr "" "struct msgbuf {\n" " long mtype; /* тип сообщения, значение должно быть E 0 */\n" " char mtext[1]; /* данные сообщения */\n" "};\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I field is an array (or other structure) whose size is specified " "by I, a nonnegative integer value. Messages of zero length (i.e., no " "I field) are permitted. The I field must have a strictly " "positive integer value. This value can be used by the receiving process for " "message selection (see the description of B() below)." msgstr "" "Поле I является массивом (или другой структурой), размер которого " "определяется I — неотрицательным целым значением. Разрешены сообщения " "нулевой длины (т.е. без поля I). Поле I должно быть только " "положительным целым значением. Это значение используется процессом-" "получателем для выбора сообщения (см. описание B() далее)." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "msgsnd()" msgstr "msgsnd()" #. 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 appends a copy of the message pointed to by " "I to the message queue whose identifier is specified by I." msgstr "" "Системный вызов B() добавляет копию сообщения, указанного I, в " "очередь сообщений, идентификатор которой задаётся в I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If sufficient space is available in the queue, B() succeeds " "immediately. The queue capacity is governed by the I field in " "the associated data structure for the message queue. During queue creation " "this field is initialized to B bytes, but this limit can be modified " "using B(2). A message queue is considered to be full if either of " "the following conditions is true:" msgstr "" "Если в очереди достаточно места, то B() сразу успешно завершается. " "Размер очереди управляется полем I в связанной структуре данных " "очереди сообщений. При создании очереди это поле инициализируется значением " "B байт, но данное ограничение можно изменить с помощью B(2). " "Очередь сообщений считается заполненной при одном из следующих условий:" #. type: IP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "\\[bu]" msgstr "\\[bu]" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Adding a new message to the queue would cause the total number of bytes in " "the queue to exceed the queue's maximum size (the I field)." msgstr "" "Добавление нового сообщения привело бы к превышению общего количества байт " "очереди над максимальным количеством размером очереди (поле I)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Adding another message to the queue would cause the total number of messages " "in the queue to exceed the queue's maximum size (the I field). " "This check is necessary to prevent an unlimited number of zero-length " "messages being placed on the queue. Although such messages contain no data, " "they nevertheless consume (locked) kernel memory." msgstr "" "Добавление другого сообщения привело бы к превышению общего количества " "сообщений очереди над максимальным количеством размером очереди (поле " "I). Эта проверка необходима для предотвращения помещения в " "очередь бесконечного количества сообщений нулевой длины. Хотя такие " "сообщения не содержат данных, тем не менее, они потребляют (блокируют) " "память ядра." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If insufficient space is available in the queue, then the default behavior " "of B() is to block until space becomes available. If B " "is specified in I, then the call instead fails with the error " "B." msgstr "" "Если в очереди недостаточно места, то по умолчанию B() блокирует " "выполнение до появления свободного места. Если в I указан " "B, то вызов вместо этого завершается с ошибкой B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "A blocked B() call may also fail if:" msgstr "Заблокированный вызов B() может завершиться ошибкой если:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "the queue is removed, in which case the system call fails with I set " "to B; or" msgstr "" "очередь удалена (в этом случае системный вызов выдаст ошибку, определив " "I в значение B;" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "a signal is caught, in which case the system call fails with I set to " "B;B B(7). (B() is never automatically " "restarted after being interrupted by a signal handler, regardless of the " "setting of the B flag when establishing a signal handler.)" msgstr "" "пойман сигнал; в этом случае системный вызов завершается с ошибкой и " "присваивает I значение B; B<см.> B(7). Вызов " "B() никогда не перезапускается автоматически после прерывания " "обработчиком сигнала, независимо от установки флага B при " "настройке обработчика сигнала." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Upon successful completion the message queue data structure is updated as " "follows:" msgstr "" "Перед успешным завершением структура данных очереди сообщений будет " "обновлена следующим образом:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "I is set to the process ID of the calling process." msgstr "" "Значение I устанавливается равным идентификатору вызывающего " "процесса." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "I is incremented by 1." msgstr "Значение I увеличивается на 1." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "I is set to the current time." msgstr "Значение I присваивается значение текущего времени." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "msgrcv()" msgstr "msgrcv()" #. 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 removes a message from the queue specified by " "I and places it in the buffer pointed to by I." msgstr "" "Системный вызов B() удаляет сообщение из очереди, указанной в " "I и помещает его в буфер, указанный в I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The argument I specifies the maximum size in bytes for the member " "I of the structure pointed to by the I argument. If the " "message text has length greater than I, then the behavior depends on " "whether B is specified in I. If B is " "specified, then the message text will be truncated (and the truncated part " "will be lost); if B is not specified, then the message isn't " "removed from the queue and the system call fails returning -1 with I " "set to B." msgstr "" "Параметр I задаёт максимальный размер (в байтах) элемента I " "структуры, находящейся по адресу, указанному в аргументе I. Если длина " "текста сообщения больше чем I, то поведение зависит от наличия флага " "B в I. Если B указан, то текст сообщения " "будет урезан (а урезанная часть потеряна); иначе сообщение не удаляется из " "очереди, а системный вызов возвращает -1 и присваивает I значение " "B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Unless B is specified in I (see below), the I " "argument specifies the type of message requested, as follows:" msgstr "" "Если в I (смотрите ниже ) не указан B, то в аргументе " "I указывается тип запрашиваемого сообщения:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "If I is 0, then the first message in the queue is read." msgstr "Если I равно нулю, то читается первое сообщение в очереди." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If I is greater than 0, then the first message in the queue of type " "I is read, unless B was specified in I, in which " "case the first message in the queue of type not equal to I will be " "read." msgstr "" "Если I больше нуля, то из очереди читается первое сообщение с типом " "I (если только в I не указан B. В этом случае из " "очереди читается первое сообщение, тип которого не равен I)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If I is less than 0, then the first message in the queue with the " "lowest type less than or equal to the absolute value of I will be " "read." msgstr "" "Если I меньше нуля, то из очереди читается первое сообщение со " "значением, меньшим или равным абсолютному значению I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I argument is a bit mask constructed by ORing together zero or " "more of the following flags:" 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 message of the requested type is in the queue. The " "system call fails with I set to B." msgstr "" "Немедленный возврат, если в очереди нет сообщений необходимого типа. При " "этом системный вызов возвращает ошибку, присваивая I значение " "B." #. 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 3.8)" msgstr "B (начиная с Linux 3.8)" #. commit 4a674f34ba04a002244edaf891b5da7fc1473ae8 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Nondestructively fetch a copy of the message at the ordinal position in the " "queue specified by I (messages are considered to be numbered " "starting at 0)." msgstr "" "Забирает копию сообщения без удаления из начальной позиции в очереди, " "заданной в I (сообщения нумеруются начиная с 0)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This flag must be specified in conjunction with B, with the " "result that, if there is no message available at the given position, the " "call fails immediately with the error B. Because they alter the " "meaning of I in orthogonal ways, B and B may " "not both be specified in I." msgstr "" "Этот флаг должен указываться вместе с B; в этом случае, если в " "заданной позиции сообщение отсутствует, то вызов завершается с ошибкой " "B немедленно. Флаги B и B не могут указываться " "вместе в I, так как кардинально изменяют смысл I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B flag was added for the implementation of the kernel " "checkpoint-restore facility and is available only if the kernel was built " "with the B option." msgstr "" "Флаг B был добавлен для реализации способности ядра для " "контрольных точек/восстановления и доступен только, если ядро собрано с " "параметром 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 "" "Used with I greater than 0 to read the first message in the queue " "with message type that differs from I." msgstr "" "Используется, если I больше 0, для чтения первого сообщения в " "очереди с типом, отличным от 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 "To truncate the message text if longer than I bytes." msgstr "" "Используется для урезания текста сообщения, если его размер больше I " "байт." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If no message of the requested type is available and B isn't " "specified in I, the calling process is blocked until one of the " "following conditions occurs:" msgstr "" "Если в очереди нет сообщения необходимого типа и в I не указан " "B, то вызывающий процесс будет заблокирован до тех пор, пока не " "произойдет одно из следующих событий:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "A message of the desired type is placed in the queue." msgstr "В очередь не будет помещено сообщение необходимого типа." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The message queue is removed from the system. In this case, the system call " "fails with I set to 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 "" "The calling process catches a signal. In this case, the system call fails " "with I set to B. (B() is never automatically " "restarted after being interrupted by a signal handler, regardless of the " "setting of the B flag when establishing a signal handler.)" msgstr "" "Вызывающий процесс не получит сигнал, который должен обработать. В этом " "случае системный вызов возвращает ошибку и присваивает переменной I " "значение B. Вызов B() никогда не перезапускается " "автоматически после прерывания обработчиком сигнала, независимо от установки " "флага B при настройке обработчика сигнала." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "I is set to the process ID of the calling process." msgstr "" "Значение I устанавливается равным идентификатору вызывающего " "процесса." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "I is decremented by 1." msgstr "Значение I уменьшается на 1." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "I is set to the current time." msgstr "Значение I становится равным текущему времени." #. 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 "" #| "On success, B() returns either the actual number of bytes " #| "read (for reading) or 0 (for writing). On failure, B() " #| "returns -1 and sets I to indicate the error." msgid "" "On success, B() returns 0 and B() returns the number of " "bytes actually copied into the I array. On failure, both functions " "return -1, and set I to indicate the error." msgstr "" "При успешном выполнении B() возвращается реальное количество " "прочитанных байт (при чтении) или 0 (при записи). При ошибке B() " "возвращает -1, а 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: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "When B() fails, I will be set to one among the following " #| "values:" msgid "B() can fail with the following errors:" msgstr "" "Значения I, устанавливаемые при возникновении ошибок в 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 "" "The calling process does not have write permission on the message queue, and " "does not have the B capability in the user namespace that " "governs its IPC namespace." msgstr "" "Вызывающий процесс не имеет прав записи в очередь сообщений и не имеет " "мандата B в пользовательском пространстве имён, которое " "управляет его пространством имён IPC." #. 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 message can't be sent due to the I limit for the queue and " "B was specified in I." msgstr "" "Сообщение не может быть отправлено, так как размер очереди превысит лимит, " "равный I, а в параметре I установлен флаг 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 "The address pointed to by I isn't accessible." 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 "The message queue was removed." 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 "" "Sleeping on a full message queue condition, the process caught 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 "" "Invalid I value, or nonpositive I value, or invalid I " "value (less than 0 or greater than the system value B)." msgstr "" "Задано неправильное значение I, не положительное значение I " "или неправильное значение I (меньше 0, или больше системного лимита, " "заданного 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 "" "The system does not have enough memory to make a copy of the message pointed " "to by I." msgstr "" "Недостаточно памяти в системе для копирования сообщения, указанного I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "When B() fails, I will be set to one among the following " #| "values:" msgid "B() can fail with the following errors:" msgstr "" "Значения I, устанавливаемые при возникновении ошибок в 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 "" "The message text length is greater than I and B isn't " "specified in I." msgstr "" "Длина текста получаемого сообщения больше, чем I, а в поле I " "не установлен флаг B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The calling process does not have read permission on the message queue, and " "does not have the B capability in the user namespace that " "governs its IPC namespace." msgstr "" "Вызывающий процесс не имеет прав чтобы прочитать очереди сообщений и не " "имеет мандата B в пространстве имён пользователя, который " "управляет его пространством имён IPC." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "While the process was sleeping to receive a message, the message queue was " "removed." msgstr "" "Процесс ждал приёма сообщения, и в это время очередь сообщений была удалена." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "While the process was sleeping to receive a message, the process caught a " "signal; see B(7)." msgstr "" "Во время ожидания приёма сообщения процесс получил сигнал; см. B(7)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "I was invalid, or I was less than 0." msgstr "Неверное значение I или I меньше 0." #. 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 3.14)" msgstr "B (начиная с Linux 3.14)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "I specified B, but not B." msgstr "В I указан флаг B, но нет B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "I specified both B and B." msgstr "В 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 "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 specified in I and no message of the requested " "type existed on the message queue." msgstr "" "В очереди нет сообщения необходимого типа, а в параметре I " "установлен флаг B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B and B were specified in I and the queue " "contains less than I messages." msgstr "" "Флаги B и 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 "B (since Linux 3.8)" msgstr "B (начиная с Linux 3.8)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "I was specified in I, and this kernel was configured " #| "without B." msgid "" "Both B and B were specified in I, and this " "kernel was configured without B." msgstr "" "Флаг I указан в I, но ядро собрано без параметра " "B." #. 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." #. MSG_COPY since glibc 2.18 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B and B flags are Linux-specific; their " "definitions can be obtained by defining the B<_GNU_SOURCE> feature test " "macro." msgstr "" "Флаги B и B есть только в Linux; их определения можно " "получить указав макрос тестирования свойств B<_GNU_SOURCE>." #. 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-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "POSIX.1-2001, SVr4." msgstr "POSIX.1-2001, SVr4." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I argument is declared as I in glibc 2.0 and " "2.1. It is declared as I in glibc 2.2 and later, as required by " "SUSv2 and SUSv3." msgstr "" "Аргумент I в glibc 2.0 и 2.1 объявлен как I. В glibc " "2.2 и новее, в соответствии с SUSv2 и SUSv3, он объявлен как I." #. 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 "" "The following limits on message queue resources affect the B() call:" 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 "" "Maximum size of a message text, in bytes (default value: 8192 bytes). On " "Linux, this limit can be read and modified via I." msgstr "" "Максимальный размер текста сообщения: по умолчанию он равен 8192 байтам (в " "Linux это ограничение можно прочитать и изменить через 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 "" "Maximum number of bytes that can be held in a message queue (default value: " "16384 bytes). On Linux, this limit can be read and modified via I. A privileged process (Linux: a process with the " "B capability) can increase the size of a message queue " "beyond B using the B(2) B operation." msgstr "" "Максимальное количество байт, которое может храниться в очереди сообщений " "(по умолчанию 16384 байт). В Linux это ограничение можно прочитать и " "изменить через I. Привилегированный процесс (Linux: " "процесс с мандатом 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 "" "The implementation has no intrinsic system-wide limits on the number of " "message headers (B) and the number of bytes in the message pool " "(B)." msgstr "" "Реализация не накладывает существенных системных ограничений на максимальное " "количество заголовков сообщений (B) и на количество байт в пуле " "сообщений (B)." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BUGS" msgstr "ОШИБКИ" #. http://marc.info/?l=linux-kernel&m=139048542803605&w=2 #. commit 4f87dac386cc43d5525da7a939d4b4e7edbea22c #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "In Linux 3.13 and earlier, if B() was called with the B " "flag, but without B, and the message queue contained less than " "I messages, then the call would block until the next message is " "written to the queue. At that point, the call would return a copy of the " "message, I of whether that message was at the ordinal position " "I. This bug is fixed in Linux 3.14." msgstr "" "В Linux 3.13 и старее, если B() был вызван с флагом B " "flag, но без B, и очередь сообщений содержала менее I " "сообщений, то вызов блокировал выполнения до тех пор, пока следующее " "сообщение не записывалось в очередь. written to the queue. В этот момент " "вызов возвращал копию сообщения, I<независимо> от того, что сообщение было в " "начальной позиции I. Этот дефект был исправлен в Linux 3.14." #. http://marc.info/?l=linux-kernel&m=139048542803605&w=2 #. commit 4f87dac386cc43d5525da7a939d4b4e7edbea22c #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Specifying both B and B in I is a logical " "error (since these flags impose different interpretations on I). In " "Linux 3.13 and earlier, this error was not diagnosed by B(). This " "bug is fixed in Linux 3.14." msgstr "" "Указание обоих флагов B и B в I является " "логической ошибкой (так как для флагов по-разному интерпретируется " "I). В Linux 3.13 и старее эта ошибка не определялась B(). " "Этот дефект был исправлен в Linux 3.14." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "EXAMPLES" msgstr "ПРИМЕРЫ" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The program below demonstrates the use of B() and B()." msgstr "" "Представленная ниже программа показывает использование B() и " "B()." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The example program is first run with the B<-s> option to send a message and " "then run again with the B<-r> option to receive a message." msgstr "" "В первый раз программа запускается с параметром B<-s> для отправки " "сообщения, а в второй — с параметром B<-r> для получения сообщения." #. 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 shows a sample run 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 -s>\n" "sent: a message at Wed Mar 4 16:25:45 2015\n" msgstr "" "$B< ./a.out -s>\n" "отправка: дата сообщения Wed Mar 4 16:25:45 2015\n" #. 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 -r>\n" "message received: a message at Wed Mar 4 16:25:45 2015\n" msgstr "" "$B< ./a.out -r>\n" "приём: дата сообщения Wed Mar 4 16:25:45 2015\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 fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "" "#include Eerrno.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/ipc.hE\n" "#include Esys/msg.hE\n" "#include Etime.hE\n" "#include Eunistd.hE\n" "\\&\n" "struct msgbuf {\n" " long mtype;\n" " char mtext[80];\n" "};\n" "\\&\n" "static void\n" "usage(char *prog_name, char *msg)\n" "{\n" " if (msg != NULL)\n" " fputs(msg, stderr);\n" "\\&\n" " fprintf(stderr, \"Usage: %s [options]\\en\", prog_name);\n" " fprintf(stderr, \"Options are:\\en\");\n" " fprintf(stderr, \"-s send message using msgsnd()\\en\");\n" " fprintf(stderr, \"-r read message using msgrcv()\\en\");\n" " fprintf(stderr, \"-t message type (default is 1)\\en\");\n" " fprintf(stderr, \"-k message queue key (default is 1234)\\en\");\n" " exit(EXIT_FAILURE);\n" "}\n" "\\&\n" "static void\n" "send_msg(int qid, int msgtype)\n" "{\n" " time_t t;\n" " struct msgbuf msg;\n" "\\&\n" " msg.mtype = msgtype;\n" "\\&\n" " time(&t);\n" " snprintf(msg.mtext, sizeof(msg.mtext), \"a message at %s\",\n" " ctime(&t));\n" "\\&\n" " if (msgsnd(qid, &msg, sizeof(msg.mtext),\n" " IPC_NOWAIT) == -1)\n" " {\n" " perror(\"msgsnd error\");\n" " exit(EXIT_FAILURE);\n" " }\n" " printf(\"sent: %s\\en\", msg.mtext);\n" "}\n" "\\&\n" "static void\n" "get_msg(int qid, int msgtype)\n" "{\n" " struct msgbuf msg;\n" "\\&\n" " if (msgrcv(qid, &msg, sizeof(msg.mtext), msgtype,\n" " MSG_NOERROR | IPC_NOWAIT) == -1) {\n" " if (errno != ENOMSG) {\n" " perror(\"msgrcv\");\n" " exit(EXIT_FAILURE);\n" " }\n" " printf(\"No message available for msgrcv()\\en\");\n" " } else {\n" " printf(\"message received: %s\\en\", msg.mtext);\n" " }\n" "}\n" "\\&\n" "int\n" "main(int argc, char *argv[])\n" "{\n" " int qid, opt;\n" " int mode = 0; /* 1 = send, 2 = receive */\n" " int msgtype = 1;\n" " int msgkey = 1234;\n" "\\&\n" " while ((opt = getopt(argc, argv, \"srt:k:\")) != -1) {\n" " switch (opt) {\n" " case \\[aq]s\\[aq]:\n" " mode = 1;\n" " break;\n" " case \\[aq]r\\[aq]:\n" " mode = 2;\n" " break;\n" " case \\[aq]t\\[aq]:\n" " msgtype = atoi(optarg);\n" " if (msgtype E= 0)\n" " usage(argv[0], \"-t option must be greater than 0\\en\");\n" " break;\n" " case \\[aq]k\\[aq]:\n" " msgkey = atoi(optarg);\n" " break;\n" " default:\n" " usage(argv[0], \"Unrecognized option\\en\");\n" " }\n" " }\n" "\\&\n" " if (mode == 0)\n" " usage(argv[0], \"must use either -s or -r option\\en\");\n" "\\&\n" " qid = msgget(msgkey, IPC_CREAT | 0666);\n" "\\&\n" " if (qid == -1) {\n" " perror(\"msgget\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " if (mode == 2)\n" " get_msg(qid, msgtype);\n" " else\n" " send_msg(qid, msgtype);\n" "\\&\n" " exit(EXIT_SUCCESS);\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(2), B(2), B(7), B(7), " "B(7)" msgstr "" "B(2), B(2), B(7), 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 msgid "POSIX.1-2001, POSIX.1-2008, SVr4." msgstr "POSIX.1-2001, POSIX.1-2008, SVr4." #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "#include Eerrno.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/ipc.hE\n" "#include Esys/msg.hE\n" "#include Etime.hE\n" "#include Eunistd.hE\n" msgstr "" "#include Eerrno.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/ipc.hE\n" "#include Esys/msg.hE\n" "#include Etime.hE\n" "#include Eunistd.hE\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "struct msgbuf {\n" " long mtype;\n" " char mtext[80];\n" "};\n" msgstr "" "struct msgbuf {\n" " long mtype;\n" " char mtext[80];\n" "};\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "static void\n" "usage(char *prog_name, char *msg)\n" "{\n" " if (msg != NULL)\n" " fputs(msg, stderr);\n" msgstr "" "static void\n" "usage(char *prog_name, char *msg)\n" "{\n" " if (msg != NULL)\n" " fputs(msg, stderr);\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " fprintf(stderr, \"Usage: %s [options]\\en\", prog_name);\n" " fprintf(stderr, \"Options are:\\en\");\n" " fprintf(stderr, \"-s send message using msgsnd()\\en\");\n" " fprintf(stderr, \"-r read message using msgrcv()\\en\");\n" " fprintf(stderr, \"-t message type (default is 1)\\en\");\n" " fprintf(stderr, \"-k message queue key (default is 1234)\\en\");\n" " exit(EXIT_FAILURE);\n" "}\n" msgstr "" " fprintf(stderr, \"Использование: %s [параметры]\\en\", prog_name);\n" " fprintf(stderr, \"Параметры:\\en\");\n" " fprintf(stderr, \"-s отправить сообщение с помощью msgsnd()\\en\");\n" " fprintf(stderr, \"-r прочитать сообщение с помощью msgrcv()\\en\");\n" " fprintf(stderr, \"-t тип сообщения (по умолчанию 1)\\en\");\n" " fprintf(stderr, \"-k ключ очереди сообщения (по умолчанию 1234)\\en\");\n" " exit(EXIT_FAILURE);\n" "}\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "static void\n" "send_msg(int qid, int msgtype)\n" "{\n" " time_t t;\n" " struct msgbuf msg;\n" msgstr "" "static void\n" "send_msg(int qid, int msgtype)\n" "{\n" " time_t t;\n" " struct msgbuf msg;\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " msg.mtype = msgtype;\n" msgstr " msg.mtype = msgtype;\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " time(&t);\n" " snprintf(msg.mtext, sizeof(msg.mtext), \"a message at %s\",\n" " ctime(&t));\n" msgstr "" " time(&t);\n" " snprintf(msg.mtext, sizeof(msg.mtext), \"дата сообщения %s\",\n" " ctime(&t));\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (msgsnd(qid, &msg, sizeof(msg.mtext),\n" " IPC_NOWAIT) == -1)\n" " {\n" " perror(\"msgsnd error\");\n" " exit(EXIT_FAILURE);\n" " }\n" " printf(\"sent: %s\\en\", msg.mtext);\n" "}\n" msgstr "" " if (msgsnd(qid, &msg, sizeof(msg.mtext),\n" " IPC_NOWAIT) == -1)\n" " {\n" " perror(\"msgsnd error\");\n" " exit(EXIT_FAILURE);\n" " }\n" " printf(\"отправка: %s\\en\", msg.mtext);\n" "}\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "static void\n" "get_msg(int qid, int msgtype)\n" "{\n" " struct msgbuf msg;\n" msgstr "" "static void\n" "get_msg(int qid, int msgtype)\n" "{\n" " struct msgbuf msg;\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, fuzzy, no-wrap #| msgid "" #| " if (msgrcv(qid, (void *) &msg, sizeof(msg.mtext), msgtype,\n" #| " MSG_NOERROR | IPC_NOWAIT) == -1) {\n" #| " if (errno != ENOMSG) {\n" #| " perror(\"msgrcv\");\n" #| " exit(EXIT_FAILURE);\n" #| " }\n" #| " printf(\"No message available for msgrcv()\\en\");\n" #| " } else\n" #| " printf(\"message received: %s\\en\", msg.mtext);\n" #| "}\n" msgid "" " if (msgrcv(qid, &msg, sizeof(msg.mtext), msgtype,\n" " MSG_NOERROR | IPC_NOWAIT) == -1) {\n" " if (errno != ENOMSG) {\n" " perror(\"msgrcv\");\n" " exit(EXIT_FAILURE);\n" " }\n" " printf(\"No message available for msgrcv()\\en\");\n" " } else {\n" " printf(\"message received: %s\\en\", msg.mtext);\n" " }\n" "}\n" msgstr "" " if (msgrcv(qid, (void *) &msg, sizeof(msg.mtext), msgtype,\n" " MSG_NOERROR | IPC_NOWAIT) == -1) {\n" " if (errno != ENOMSG) {\n" " perror(\"msgrcv\");\n" " exit(EXIT_FAILURE);\n" " }\n" " printf(\"С помощью msgrcv() сообщений не получено\\en\");\n" " } else\n" " printf(\"приём: %s\\en\", msg.mtext);\n" "}\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, fuzzy, no-wrap #| msgid "" #| "int\n" #| "main(int argc, char *argv[])\n" #| "{\n" #| " int qid, opt;\n" #| " int mode = 0; /* 1 = send, 2 = receive */\n" #| " int msgtype = 1;\n" #| " int msgkey = 1234;\n" msgid "" "int\n" "main(int argc, char *argv[])\n" "{\n" " int qid, opt;\n" " int mode = 0; /* 1 = send, 2 = receive */\n" " int msgtype = 1;\n" " int msgkey = 1234;\n" msgstr "" "int\n" "main(int argc, char *argv[])\n" "{\n" " int qid, opt;\n" " int mode = 0; /* 1 = send, 2 = receive */\n" " int msgtype = 1;\n" " int msgkey = 1234;\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, fuzzy, no-wrap #| msgid "" #| " while ((opt = getopt(argc, argv, \"srt:k:\")) != -1) {\n" #| " switch (opt) {\n" #| " case \\(aqs\\(aq:\n" #| " mode = 1;\n" #| " break;\n" #| " case \\(aqr\\(aq:\n" #| " mode = 2;\n" #| " break;\n" #| " case \\(aqt\\(aq:\n" #| " msgtype = atoi(optarg);\n" #| " if (msgtype E= 0)\n" #| " usage(argv[0], \"-t option must be greater than 0\\en\");\n" #| " break;\n" #| " case \\(aqk\\(aq:\n" #| " msgkey = atoi(optarg);\n" #| " break;\n" #| " default:\n" #| " usage(argv[0], \"Unrecognized option\\en\");\n" #| " }\n" #| " }\n" msgid "" " while ((opt = getopt(argc, argv, \"srt:k:\")) != -1) {\n" " switch (opt) {\n" " case \\[aq]s\\[aq]:\n" " mode = 1;\n" " break;\n" " case \\[aq]r\\[aq]:\n" " mode = 2;\n" " break;\n" " case \\[aq]t\\[aq]:\n" " msgtype = atoi(optarg);\n" " if (msgtype E= 0)\n" " usage(argv[0], \"-t option must be greater than 0\\en\");\n" " break;\n" " case \\[aq]k\\[aq]:\n" " msgkey = atoi(optarg);\n" " break;\n" " default:\n" " usage(argv[0], \"Unrecognized option\\en\");\n" " }\n" " }\n" msgstr "" " while ((opt = getopt(argc, argv, \"srt:k:\")) != -1) {\n" " switch (opt) {\n" " case \\(aqs\\(aq:\n" " mode = 1;\n" " break;\n" " case \\(aqr\\(aq:\n" " mode = 2;\n" " break;\n" " case \\(aqt\\(aq:\n" " msgtype = atoi(optarg);\n" " if (msgtype E= 0)\n" " usage(argv[0], \"параметр -t должен быть больше 0\\en\");\n" " break;\n" " case \\(aqk\\(aq:\n" " msgkey = atoi(optarg);\n" " break;\n" " default:\n" " usage(argv[0], \"Неизвестный параметр\\en\");\n" " }\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (mode == 0)\n" " usage(argv[0], \"must use either -s or -r option\\en\");\n" msgstr "" " if (mode == 0)\n" " usage(argv[0], \"нужно указать параметр -s или -r\\en\");\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " qid = msgget(msgkey, IPC_CREAT | 0666);\n" msgstr " qid = msgget(msgkey, IPC_CREAT | 0666);\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (qid == -1) {\n" " perror(\"msgget\");\n" " exit(EXIT_FAILURE);\n" " }\n" msgstr "" " if (qid == -1) {\n" " perror(\"msgget\");\n" " exit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (mode == 2)\n" " get_msg(qid, msgtype);\n" " else\n" " send_msg(qid, msgtype);\n" msgstr "" " if (mode == 2)\n" " get_msg(qid, msgtype);\n" " else\n" " send_msg(qid, msgtype);\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" " exit(EXIT_SUCCESS);\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: 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"