日本a√视频在线,久久青青亚洲国产,亚洲一区欧美二区,免费g片在线观看网站

        <style id="k3y6c"><u id="k3y6c"></u></style>
        <s id="k3y6c"></s>
        <mark id="k3y6c"></mark>
          
          

          <mark id="k3y6c"></mark>

          新聞中心

          EEPW首頁 > 手機與無線通信 > 設計應用 > 一種基于嵌入式實時操作系統(tǒng)的微機保護裝置網(wǎng)絡通信方案

          一種基于嵌入式實時操作系統(tǒng)的微機保護裝置網(wǎng)絡通信方案

          作者: 時間:2011-05-20 來源:網(wǎng)絡 收藏


            2 基于雙緩沖隊列的設計

          本文引用地址:http://yuyingmama.com.cn/article/156291.htm

            的基石是套接字,一個套接字是通信的一端,在這一端上可以找到與其對應的一個名字。一個正在被使用的套接字都有它的類型和其相關的任務,VxWorks可以實現(xiàn)與BSD4.4TCP/IP兼容的Socket編程接口。由于面向連接的服務器使用的傳輸層協(xié)議可保證數(shù)據(jù)傳送的可靠性和順序性,因此,本文的系統(tǒng)端采用基于流Socket的客戶機/服務器(Client/Server)編程模式,其程序可以分為客戶端程序和服務端程序。其通信模型如圖2所示。


            2.1 客戶端程序設計

            所謂客戶端服務程序,就是主要用來發(fā)出服務請求的程序??蛻舳顺绦蛟O計要知道服務端的地址、服務所提供的端*及服務使用的傳輸層協(xié)議(TCP協(xié)議)。在客戶/服務器模式中,客戶端程序可以通過兩種形式找到服務器:一是通過指定服務器的IP地址和端*來找到服務端;二是通過廣播的形式來來尋找服務器。本系統(tǒng)的客戶端程序應用第一種形式來尋找服務器。知道了服務端的位置后,客戶端任務就可以打開一個套接字,然后通過連接服務器來發(fā)送和接收數(shù)據(jù)。

            面向連接的TCP客戶端編程結構分為部分:一是以TCP連接服務器,TCP協(xié)議是一種可保證傳輸可靠,且能順序的傳輸層協(xié)議。在連接服務器之前,先要申請一個SOCK_STREAM類型的套接字,該套接字的通信域應制定為PF_INET類型;二是使用TCP與服務器通信,因為TCP是面向連接的協(xié)議,在連接建立以后,它可以通過send、recv等調(diào)用來進行通信,就像管道一樣;三是關閉TCP連接,即在客戶端程序結束,或使用完一個套接字后,可以使用close來關閉一個套接字。

            2.2 服務端程序設計

            在服務端程序設計中,可以根據(jù)對要實現(xiàn)的網(wǎng)絡服務功能來設計自己的應用層協(xié)議。本系統(tǒng)服務端使用的TCP是面向連接的服務端。在這種模式下,服務端程序的設計就可以不考慮數(shù)據(jù)的可靠傳送,而只要接受連接請求,并通過該連接進行通信即可,這樣,底層的傳輸協(xié)議就自然會保證數(shù)據(jù)傳送的可靠性。

            服務端程序設計的兩種基本模式是循環(huán)模式和并發(fā)模式。循環(huán)模式就是服務端進程在總體機構上是一個循環(huán),一次處理一個請求。并發(fā)模式的服務端進程一般可以同時處理多個請求,結構上一般采用父進程接受請求,然后產(chǎn)生子進程,這樣一般為多進程結構。

            本文選用面向連接服務端的循環(huán)模式,此模式的建立步驟如下:

           ?。?)創(chuàng)建一個SOCK_STREAM類型的套接字;

           ?。?)調(diào)用bind指定地址和端口;

           ?。?)調(diào)用listen未處理連接請求的隊列長度;

           ?。?)調(diào)用accept等待連接請求,一旦有連接請求,accept返回一個新的套接字描述符;

            (5)通過新的描述符與客戶端交互信息,交互完畢,即關閉新產(chǎn)生的套接字并返回第四步。

            3 系統(tǒng)模型設計

            系統(tǒng)中基于Socket模式下的通信過程分為控制端發(fā)起的通信過程和受控端發(fā)起的通信過程,這兩種過程都是基于客戶/服務器的網(wǎng)絡編程模式。在客戶/服務器模式中,請求的一方稱為客戶,提供服務的一方稱為服務器。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


          評論


          相關推薦

          技術專區(qū)

          關閉