freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

linux環(huán)境進(jìn)程間通信(六)套接字-文庫吧資料

2025-06-25 14:14本頁面
  

【正文】 ct()之后,就應(yīng)給調(diào)用send()而不是sendto()了,因為調(diào)用了 connect之后,目標(biāo)就已經(jīng)確定了。常用的從套接口中接收數(shù)據(jù)的調(diào)用有:recv、recvfrom、recvmsg等,常用的向套接口中發(fā)送數(shù)據(jù)的調(diào)用有send、sendto、sendmsg等。(5)通信客戶機可以通過套接口接收服務(wù)器傳過來的數(shù)據(jù),也可以通過套接口向服務(wù)器發(fā)送數(shù)據(jù)。第二個參數(shù)指明客戶的地址結(jié)構(gòu),如果對客戶的身份不感興趣,可指定其為 空。通過accept()調(diào)用,服務(wù)器將在監(jiān)聽套接口的已連接隊列頭中,返回用于代表當(dāng)前連接的套接口描述字。內(nèi)核為listen()維護(hù)兩個隊列:已完成連接隊列和未完成連接隊列。connect()向指定的套接口請求建立連接。其中的connect()調(diào)用不涉及握手 過程;而在面向連接的通信方式中,connect()要完成一個嚴(yán)格的握手過程。因此,在linux內(nèi)核中,AF_***與PF_***被定義為同一個常數(shù),因此,在 編程時可以不加區(qū)分地使用他們。這里只想強調(diào)該結(jié)構(gòu)的第一個域,它表明該套接口使用的通信協(xié)議,如AF_INET。對 于使用TCP傳輸協(xié)議通信方式來說,通信雙方需要給自己綁定一個唯一標(biāo)識自己的套接口,以便建立連接;對于使用UDP傳輸協(xié)議,只需要服務(wù)器綁定一個標(biāo)識 自己的套接口就可以了,用戶則不需要綁定(在需要時,如調(diào)用connect時[注1],內(nèi)核會自動分配一個本地地址和本地端口號)。通信雙方一般由兩個方面標(biāo)識:地址和端口號(通常,一個IP地址和一個端口號常常被稱為一個套接口)。(2)綁定地址根據(jù)傳輸層協(xié)議(TCP、UDP)的不同,客戶機及服務(wù)器的處理方式也有很大不同。進(jìn)程可以像訪問一個已經(jīng)打開的文件一樣訪問套接口在sockfs中的對應(yīng)文件。一般來說,參數(shù)protocol可設(shè)置為0,除非用在原始套接口上(原始套接口有一些特殊功能,后面還將介 紹)。套接口編程的幾個重要步驟:(1)創(chuàng)建套接口,由系統(tǒng)調(diào)用socket實現(xiàn):int socket( int domain, int type, int ptotocol)。 }。 /* 因特網(wǎng)地址 */ /* Pad to size of `struct sockaddr39。 /* 描述協(xié)議族 */ in_port_t sin_port。 /* 14 bytes of protocol address */}。結(jié)構(gòu)形式如下:struct sockaddr { sa_family_t sa_family。}。 short type。 /* 任何協(xié)議族都有其特定的套接口特性,該域就指向特定協(xié)議族的套接口對象。 /* Asynchronous wake up list */ struct file *file。 /* 指明可對套接口進(jìn)行的各種操作 */ struct inode inode。 */ unsigned long flags。(1)表示套接口的數(shù)據(jù)結(jié)構(gòu)struct socket套接口是由socket數(shù)據(jù)結(jié)構(gòu)代表的,形式如下:struct socket{socket_state state。描述套接口的數(shù)據(jù)結(jié)構(gòu)是socket,將在后面給出。套接口可以說是 網(wǎng)絡(luò)編程中一個非常重要的概念,linux以文件的形式實現(xiàn)套接口,與套接口相應(yīng)的文件屬于sockfs特殊文件系統(tǒng),創(chuàng)建一個套接口就是在sockfs 中創(chuàng)建一個特殊文件,并建立起為實現(xiàn)套接口功能的相關(guān)數(shù)據(jù)結(jié)構(gòu)。我們這里假設(shè)讀者具有網(wǎng)絡(luò)方面的一些背景知識,如了解網(wǎng)絡(luò)的分層結(jié)構(gòu),通常所說的7層結(jié)構(gòu);了解IP地址以及路由的一些基本知識。層與層之間有嚴(yán)格的接口定義。比較常見的是unix域套接口(采用套接 口機制實現(xiàn)單機內(nèi)的進(jìn)程間通信)及網(wǎng)際通信域。一個套接口可以看作是進(jìn)程間 通信的端點(endpoint),每個套接口的名字都是唯一的(唯一的含義是不言而喻的),其他進(jìn)程可以發(fā)現(xiàn)、連接并且與之通信。Linux 環(huán)境進(jìn)程間通信(六):套接字20080410 13
點擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1