Unix doménový soket

Unix domain socket [1] ( anglicky  Unix domain socket , UDS) nebo IPC socket (interprocess communication socket) je koncový bod pro výměnu dat podobný internetovému soketu , ale pro interakci (výměnu dat) nepoužívá síťový protokol. Používá se v operačních systémech , které podporují standard POSIX pro meziprocesovou komunikaci . Správný termín POSIX je POSIX Local IPC Sockets . Stejně jako TCP sockety i tyto sockety podporují spolehlivé streamování (makro SOCK_STREAM). Mohou také pracovat v režimech přenosu datagramů : řízený a spolehlivý přenos (SOCK_SEQPACKET) nebo neuspořádaný a nespolehlivý (SOCK_DGRAM). Podrobný popis Unixových soketů a API najdete na unixové manuálové stránce ze sekce 7.

Připojení domény Unix jsou v podstatě toky bajtů , podobně jako síťová připojení, ale všechna data zůstávají na stejném počítači (to znamená, že se data vyměňují lokálně). UDS používají souborový systém jako jmenný prostor adres, to znamená, že jsou reprezentovány procesy jako inody v souborovém systému. To umožňuje dvěma různým procesům otevřít stejný soket, aby spolu mohly komunikovat. Konkrétní interakce, výměna dat, však nepoužívá souborový systém, ale pouze vyrovnávací paměti jádra.

Kromě odesílání dat mohou procesy odesílat deskriptory souborů přes připojení založené na UDS (včetně deskriptorů souborů pro doménové sokety) pomocí systémových volání sendmsg()a recvmsg(). To znamená, že doménové sokety lze použít jako komunikační systém s možností objektů .

Viz také

Poznámky

  1. Voitov, 2010 .

Literatura

Další zdroje