Light-industry-up.ru

Экосистема промышленности

Unix domain socket

12-10-2023

Unix domain socket (Доменный сокет Unix) или IPC-сокет (сокет межпроцессного взаимодействия) — конечная точка обмена данными, схожая с Интернет-сокетом, но не использующая сетевой протокол для взаимодействия (обмена данными). Он используется в операционных системах, поддерживающих стандарт POSIX, для межпроцессного взаимодействия. Корректным термином стандарта POSIX является POSIX Local IPC Sockets.

Доменные соединения Unix являются по сути байтовыми потоками, сильно напоминая сетевые соединения, но при этом все данные остаются внутри одного компьютера (т.е. обмен данными происходит локально). UDS используют файловую систему как адресное пространство имен, т.е. они представляются процессами как иноды в файловой системе. Это позволяет двум различным процессам открывать один и тот же сокет для взаимодействия между собой. Однако, текущее взаимодействие (обмен данными) не использует файловую систему, а только буферы памяти ядра.

В дополнение к отсылаемым данным процессы могут отсылать файловые дескрипторы через соединение на основе UDS (включая файловые дескрипторы для доменных сокетов), используя системные вызовы sendmsg() и recvmsg(). Это означает, что доменные сокеты могут быть использованы как объектно-возможностная коммуникационная система.

См. также

Дополнительные источники

  • socketpair(2): создание пары связанных сокетов — страница справки man по системным вызовам GNU/Linux  (англ.)
  • sendmsg(2): отсылка сообщения в сокет — страница справки man по системным вызовам GNU/Linux  (англ.)
  • recvmsg(2): получение сообщения из сокета — страница справки man по системным вызовам GNU/Linux  (англ.)
  • cmsg(3): вспомогательные данные сокета, включая отправку/получение файловых дескрипторов — страница справки man по библиотечным функциям GNU/Linux  (англ.)
  • ucspi-unix, клиент-серверные утилиты командной строки для работы с UDS
  • unix domain sockets
  • Unix sockets vs Internet sockets
  • Unix Domain Sockets for Java

Unix domain socket.

© 2014–2023 light-industry-up.ru, Россия, Краснодар, ул. Листопадная 53, +7 (861) 501-67-06