Unix Socket – Server Examples
tehdä prosessista TCP −palvelin, Sinä täytyy noudattaa alla annettuja ohjeita –
-
luo pistorasia socket () – järjestelmäkutsulla.
-
sido pistorasia osoitteeseen bind () – järjestelmäkutsulla. Internetin palvelinpistorasiassa osoite koostuu isäntäkoneen porttinumerosta.
-
Kuuntele yhteyksiä listen () – järjestelmäkutsulla.
-
hyväksy yhteys accept () – järjestelmäkutsuun. Tämä puhelu yleensä estää, kunnes asiakas muodostaa yhteyden palvelimeen.
-
lähettää ja vastaanottaa tietoja luku () – ja kirjoitus () – järjestelmäkutsuilla.
nyt laitetaan nämä vaiheet lähdekoodin muotoon. Laita tämä koodi tiedostopalvelimeen.c ja kääntää sen gcc kääntäjä.
käsittele useita yhteyksiä
jotta palvelin voi käsitellä useita yhtäaikaisia yhteyksiä, teemme seuraavat muutokset yllä olevaan koodiin −
-
laita hyväksy-lauseke ja seuraava koodi äärettömään silmukkaan.
-
yhteyden muodostamisen jälkeen kutsutaan haarukka() uuden prosessin luomiseksi.
-
lapsiprosessi sulkee sockfd: n ja kutsuu doprocessing-funktiota, ohittaen argumenttina uuden socket-tiedostokuvauksen. Kun nämä kaksi prosessia ovat saattaneet keskustelunsa päätökseen, kuten dopingkäsittelyn() paluu osoittaa, tämä prosessi yksinkertaisesti poistuu.
-
emoprosessi sulkee newsockfd: n. Koska kaikki tämä koodi on äärettömässä silmukassa, se palaa hyväksy-lauseeseen odottamaan seuraavaa yhteyttä.
seuraava koodi seqment osoittaa dopingfunktion yksinkertaisen toteutuksen.