Mikä on Socket C?

“Socket C” on termi, jota käytetään joskus viittaamaan pistorasiakoodin kirjoittamiseen C -ohjelmointikielellä, ja joskus sitä käytetään viittaamaan varsinaiseen kirjastotiedostoon, joka sisältää joidenkin socket -toimintojen toteutuksen. Varsinainen socket C -kirjastotiedosto sisältää toteutuksia eri toiminnoille ja makroille, jotka tarjoavat kielikirjastojen tarjoamat perustoiminnot, vaikka C-liitäntätiedosto on käyttöjärjestelmäriippuvainen eikä sitä välttämättä toteuteta joissakin järjestelmissä. Pistorasian C -koodin kirjoittaminen edellyttää rajapinnan luomista vakiotulo- ja -lähtöprotokollalla, joka tunnetaan pistorasiana, ja sen käyttämistä tietojen lähettämiseen tai vastaanottamiseen, yleensä verkon kautta tai laitteiston kautta. C-ohjelmointikieli on tarkoitettu kannettavaksi, mutta pistorasioiden ohjelmointi perustuu joihinkin matalan tason järjestelmäkohtaisiin toimintoihin, joten joskus voi olla vaikeaa kirjoittaa ohjelmia C-muotoon, jotka käyttävät pistorasioita mutta ylläpitävät myös järjestelmien välistä siirrettävyyttä.

Pistorasia C tukee kolmea pistorasiatyyppiä. Ensimmäinen tunnetaan datagrammina, toinen on virta ja kolmas on raaka pääsy. Datagrammi on eräänlainen pistorasia, joka lähettää tietoja pieninä paketteina, joita kutsutaan paketeiksi. Jokainen paketti lähetetään lähteestä, joka sisältää tietoja etsimästään kohdepistokkeesta verkossa. Vaikka datagrammi voi olla tehokas tapa kommunikoida pistorasioiden kautta ja sitä käytetään usein sähköpostin lähettämiseen, se on myös häviöllinen, koska mitään lähetettyä pakettia ei taata saapuvan kohdepistorasiaan.

Stream -pistorasia muodostaa yhteyden toiseen pistorasiaan ja tiedot välitetään suoraan pistorasioiden välillä. Kun käytetään socket C -ohjelmoinnissa, tämäntyyppinen pistorasia varmistaa, että kaikki lähetetyt tiedot vastaanotetaan toisella puolella. Yksi komplikaatio on kuitenkin se, että pistorasia voi joskus käyttää estoa, mikä tarkoittaa, että pistorasia lopettaa prosessin suorittamisen, kunnes tiedot on vastaanotettu tai kunnes pistorasia on suljettu, vaikka säikeiden tai haarautuneiden prosessien käyttäminen voi ratkaista tämän ongelman useimmissa tapauksissa. Raaka -pistorasian käyttö tarjotaan keinona muodostaa liitäntä lähes laitteistotasolla mihin tahansa pistorasiaa isännöivään laitteeseen.

Pistorasioita käytetään yleisesti eri muodoissa Internet -viestintään. Laitteet ja ohjaimet, jotka mahdollistavat verkon muodostamisen, vaihtelevat suuresti käyttöjärjestelmän mukaan, joten voi olla vaikeaa löytää kaikkia mahdollisia yhdistelmiä tukeva C -pistorasiatiedosto. Tästä syystä itse kanta C -tiedosto ja socket -otsikkotiedosto sisältävät usein pitkän luettelon ehdollisista kääntämisdirektiiveistä, joten se kääntyy eri tavoin eri järjestelmissä.