|
MSGCTL(2) MSGCTL(2)
НАЗВАНИЕ
msgctl - операции управления очередью сообщений
СИНТАКСИС
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/msg.h>
int msgctl (msqid, cmd, buf)
int msqid, cmd;
struct msqid_ds *buf;
ОПИСАНИЕ
Системный вызов msgctl позволяет выполнять операции управления очередью сообщений. Операция определяется значением аргумента cmd, которое должно быть одним из следующих:
- IPC_STAT
- Поместить текущее значение каждого поля структуры
данных, ассоциированной с идентификатором очереди
сообщений msqid, в структуру, на которую указывает
buf. Содержимое структуры описано в intro(2).
{Требуется право на чтение.}
- IPC_SET
- Присвоить следующим полям структуры данных, ассоциированной с идентификатором msqid, соответствующие значения, находящиеся в структуре, на которую
указывает buf:
msg_perm.uid
msg_perm.gid
msg_perm.mode /* Только младшие 9 бит */
msg_qbytes
Это действие может выполняться только процессом,
действующий идентификатор пользователя которого
равен либо идентификатору суперпользователя, либо
значению поля msg_perm.cuid или msg_perm.uid в
структуре данных, ассоциированной с msqid. Только
суперпользователь может увеличивать значение поля
msg_qbytes.
- IPC_RMID
- Удалить из системы идентификатор очереди сообщений, определяемый значением msqid, ликвидировать
очередь сообщений и ассоциированную с ней структуру данных. Эта команда может выполняться только
процессом, который имеет действующий идентификатор
пользователя, равный либо идентификатору суперпользователя, либо значению поля msg_perm.cuid или
msg_perm.uid в структуре данных, ассоциированной с
msqid.
Системный вызов msgctl завершается неудачей, если выполнено хотя бы одно из следующих условий:
- [EINVAL]
- Значение аргумента msgid не является корректным идентификатором очереди сообщений.
- [EINVAL]
- Некорректное значение аргумента cmd, определяющее выполняемое действие.
- [EACCES]
- Значение аргумента cmd равно IPC_STAT и нет
прав на чтение у вызывающего процесса
- [см.
intro(2)].
- [EPERM]
- Значение аргумента cmd равно IPC_RMID или
IPC_SET и действующий идентификатор пользователя вызывающего процесса не равен ни
идентификатору суперпользователя, ни значению поля msg_perm.cuid или msg_perm.uid в
структуре данных, ассоциированной с msqid.
- [EPERM]
- Значение аргумента cmd равно IPC_SET и была
предпринята попытка увеличить значение поля
msg_qbytes, а действующий идентификатор
пользователя вызывающего процесса не равен
идентификатору суперпользователя.
- [EFAULT]
- Аргумент buf указывает за пределы отведенного процессу адресного пространства.
СМ. ТАКЖЕ
intro(2), msgget(2), msgop(2).
ДИАГНОСТИКА
При успешном завершении результат равен 0; в случае
ошибки возвращается -1, а переменной errno присваивается код ошибки.
|
 |
 |
|
Новости мира IT:
- 02.02 - Apple задумала выпустить iPhone в формате «раскладушки»
- 02.02 - Соцсети вскоре столкнутся с массовыми набегами ИИ-агентов, предупредили учёные
- 02.02 - Обещанная Павлом Дуровым интеграция Grok c Telegram до сих пор не случилась и, похоже, уже никогда не случится
- 02.02 - Запустилась соцсеть Moltbook, где общаются только ИИ-агенты — людям разрешили только наблюдать
- 29.01 - Линус Торвальдс принял план передачи управления репозиторием ядра Linux в непредвиденных ситуациях
- 29.01 - ИИ-стартап Илона Маска xAI получит $2 млрд от Tesla до конца марта
- 29.01 - Бигтехи снова забрасывают OpenAI деньгами — Nvidia, Microsoft и Amazon обсуждают инвестиции на $60 млрд
- 29.01 - Samsung утроила квартальную прибыль до рекордных $14 млрд, но по итогам года впервые уступила SK hynix
- 29.01 - Google заплатит $135 млн за тайный сбор данных пользователей Android и больше не будет «шпионить» без спроса
- 26.01 - Представлен смартфон NexPhone, совмещающий Android, Debian и Windows
- 26.01 - Российская команда Parivision сенсационно выиграла первый крупный турнир года по Counter-Strike 2
- 26.01 - Стоимость акций Sandisk неожиданно взлетела на 1000 % всего за несколько месяцев
- 26.01 - Россияне столкнулись с массовым сбоем сервисов, позволявших обходить ограничения мобильного интернета
- 20.01 - Организация Open Quantum Design работает над проектом по созданию открытого квантового компьютера
- 20.01 - Роскомнадзор заявил об удвоении количества DDoS-атак в 2025 году
- 20.01 - В Яндекс Картах теперь можно делиться геопозицией с близкими
- 20.01 - OpenAI пообещала практический ИИ уже в этом году — и похвалилась выручкой в $20 млрд за прошлый
- 20.01 - Роскомнадзор разогнал блокировки на 59 % в прошлом году — под запрет попали 1,3 млн материалов
- 14.01 - Компания Anthropic выделила 1.5 млн долларов проекту Python
- 14.01 - Состоялся релиз Firefox 147
Архив новостей
|
 |
 |
 |
|
|
 |
 |
 |
|
|
|
 |
 |
|