Unix domain socket
Unix domain socket on prosessien väliseen kommunikaatioon (IPC) tarkoitettu mekanismi, jota käytetään pistokerajapinnan kautta (AF_UNIX tai AF_LOCAL osoiteperhe).[1] Mekanismia käytetään samalla tietokoneella sijaitsevien prosessien välillä kommunikointiin.[1] Mekanismilla voidaan käyttää nimeämätöntä tai tiettyyn tiedostojärjestelmässä sijaitsevaan polkuun liitetysti.[1] Linux tukee myös abstraktia nimiavaruutta.[1]
Tiedostojärjestelmään liitettyjen polkujen kautta voidaan käyttää tiedostojen oikeuksia rajaamaan pääsyä prosesseille ja voidaan hakea vastapään oikeudet: verkkoprotokollien kanssa oikeuksien hallinta on erillinen mekanismi. Kun esimerkiksi IP-yhteydet samalle koneelle kiertävät "loopback"-yhteyden kautta, Unix domain socket voi hyödyntää tietoa että molemmat puolet ovat samalla tietokoneella: tällöin vältetään tarkistussummien käsittely, otsikkotietojen lisäykset, reitityksen käsittely ja niin edelleen.[2]
Kun yhteyden molemmat päädyt ovat samalla koneella ydin voi välttää tiedon kopioiden tekemisen (nolla-kopio -menettely).[3] Unix domain socketilla voidaan välittää tiedostokahvoja (engl. descriptor) pelkän sisällön sijaan.[4]
Katso myös
[muokkaa | muokkaa wikitekstiä]Lähteet
[muokkaa | muokkaa wikitekstiä]- 1 2 3 4 unix(7) man7.org. Viitattu 2.12.2021. (englanniksi)
- ↑ Robert Watson: unix domain sockets vs. internet sockets lists.freebsd.org. 25.2.2005. Viitattu 2.12.2021. (englanniksi)
- ↑ Unix Domain Sockets kernel-internals.org. Viitattu 1.10.2026. (englanniksi)
- ↑ 3.4. Sockets and Network Connections dwheeler.com. Viitattu 30.10.2026. (englanniksi)