Socket de domeniu Unix [1] ( Eng. Unix domain socket , UDS) sau socket IPC (interprocess communication socket) este un punct final de schimb de date similar cu o priză Internet , dar nu utilizează un protocol de rețea pentru interacțiune (schimb de date). Folosit pe sistemele de operare care acceptă standardul POSIX pentru comunicarea între procese . Termenul POSIX corect este POSIX Local IPC Sockets . La fel ca socketurile TCP , aceste socketuri acceptă streaming fiabil (macrosoft SOCK_STREAM). Ele pot funcționa și în moduri de transmisie a datagramelor : transmisie ordonată și fiabilă (SOCK_SEQPACKET) sau neordonată și nesigură (SOCK_DGRAM). Pentru o descriere detaliată a socket-urilor și API -urilor Unix , consultați pagina de manual Unix din secțiunea 7.
Conexiunile de domeniu Unix sunt în esență fluxuri de octeți , la fel ca conexiunile de rețea, dar toate datele rămân în același computer (adică datele sunt schimbate local). UDS-urile folosesc sistemul de fișiere ca spațiu de nume de adrese, adică sunt reprezentate de procese ca inoduri în sistemul de fișiere. Acest lucru permite a două procese diferite să deschidă același soclu pentru a comunica unul cu celălalt. Cu toate acestea, o anumită interacțiune, schimbul de date, nu utilizează sistemul de fișiere, ci doar bufferele de memorie ale nucleului.
Pe lângă trimiterea de date, procesele pot trimite descriptori de fișiere printr-o conexiune bazată pe UDS (inclusiv descriptori de fișiere pentru socketurile de domeniu) folosind apelurile de sistem sendmsg()și recvmsg(). Aceasta înseamnă că socket-urile de domeniu pot fi folosite ca sistem de comunicare obiect-posibilitate .
Comunicarea intraprocesuala | |
---|---|
Metode | |
Protocoale și standarde selectate |