Unix domain socket [1] ( eng. Unix domain socket , UDS) tai IPC socket (interprocess communication socket) on tiedonsiirron päätepiste, joka on samanlainen kuin Internet-pistoke , mutta se ei käytä verkkoprotokollaa vuorovaikutukseen (tiedonvaihtoon). Käytetään käyttöjärjestelmissä, jotka tukevat POSIX -standardia prosessien välisessä tiedonsiirrossa . Oikea POSIX-termi on POSIX Local IPC Sockets . Kuten TCP -vastakkeet, nämä pistokkeet tukevat luotettavaa suoratoistoa (SOCK_STREAM-makro). Ne voivat toimia myös datagrammien lähetystiloissa : järjestetty ja luotettava lähetys (SOCK_SEQPACKET) tai järjestämätön ja epäluotettava (SOCK_DGRAM). Yksityiskohtainen kuvaus Unix-socketeista ja API :ista on unix-man-sivulla osiosta 7.
Unix-verkkotunnuksen yhteydet ovat pohjimmiltaan tavuvirtoja , aivan kuten verkkoyhteydet, mutta kaikki tiedot pysyvät samassa tietokoneessa (eli tiedot vaihdetaan paikallisesti). UDS:t käyttävät tiedostojärjestelmää osoitteen nimiavaruudena, eli niitä edustavat prosessit tiedostojärjestelmän inodeina . Tämä mahdollistaa sen, että kaksi eri prosessia voivat avata saman pistorasian kommunikoidakseen keskenään. Tietty vuorovaikutus, tiedonvaihto, ei kuitenkaan käytä tiedostojärjestelmää, vaan vain ytimen muistipuskureita.
Tietojen lähettämisen lisäksi prosessit voivat lähettää tiedostokuvauksia UDS-pohjaisen yhteyden kautta (mukaan lukien tiedostokuvaajat toimialuevastakkeille) käyttämällä sendmsg()ja järjestelmäkutsuja recvmsg(). Tämä tarkoittaa, että verkkoalueen pistorasioita voidaan käyttää objektimahdollisuuden viestintäjärjestelmänä.
Prosessien välinen viestintä | |
---|---|
menetelmät | |
Valitut protokollat ja standardit |