Unix domain socket

Z Wikipedie, otevřené encyklopedie

Unix domain socket, česky unixový soket, je v informatice prostředkem meziprocesové komunikace, jenž je charakterizován restrikcí na jednu instanci operačního systému (méně přesně na jeden počítač) a možností zajistit komunikaci v obou směrech. Tyto dvě vlastnosti, instrument unixového soketu odlišující od jiných typů interprocesní komunikace, vycházejí z jeho návrhu, který počítá se dvěma komunikačními kanály (jedním pro každý směr), ne však se síťovými identifikátory (jimiž jsou zpravidla IP adresy).

Nástroj lze použít ke komunikaci dvou procesů, nebo ke komunikaci dvou vláken jednoho procesu. Zajištění funkčnosti spadá do režie jádra operačního systému, přičemž rozhraní je zpřístupněno prostřednictvím systémových volání. Způsob obsluhy rozhraní komunikujícími stranami je podobný jako v případě síťových soketů. Jak z názvu prostředku vyplývá, unixový soket je příznačný pro unixové operační systémy.

Použití

Unix domain socket se typicky používá pro komunikaci klient–server v rámci jednoho počítače, např. při komunikaci databázových aplikací s databázovým serverem (systémem řízení báze dat). Při programování jsou využívány knihovní funkce socketpair, sendmsg, recvmsg, cmsg.

Související články

  • Roura — obdoba pro jednosměrnou komunikaci v režii jedné instance operačního systému
  • Síťový soket — obdoba pro použití v počítačové síti (dle protokolové sady TCP/IP)

Externí odkazy