精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

嵌入式平臺(tái)中配置雙協(xié)議棧的問題

網(wǎng)絡(luò) 網(wǎng)絡(luò)管理
下面我們對(duì)于嵌入式開發(fā)平臺(tái)中配置雙協(xié)議棧的相關(guān)問題進(jìn)行了探討和研究,想本文的總結(jié)對(duì)大家有所了解。

最近有不少網(wǎng)友問到如何進(jìn)行那個(gè)配置雙協(xié)議棧的問題。我們可以來從下面的文章中做一個(gè)具體的了解。我們都知道,網(wǎng)絡(luò)的發(fā)展速度驚人,格式的功能以及應(yīng)用令人眼花繚亂。在這些功能以及應(yīng)用的背后,是眾多網(wǎng)絡(luò)協(xié)議的支持。那么這里我們來重點(diǎn)講解一下Windows平臺(tái)上使用Visual C++ 6.0開發(fā)環(huán)境進(jìn)行嵌入式TCP/IP協(xié)議棧的開發(fā)和仿真調(diào)試手段。詳細(xì)講解了如何使用Winpcap接收和發(fā)送IP數(shù)據(jù)報(bào)文以及在Windows上配置雙協(xié)議棧的一些問題。

1 引言

隨著Internet的廣泛的應(yīng)用,在嵌入式設(shè)備中支持TCP/IP協(xié)議以連接到Internet網(wǎng)絡(luò)并與外界通信的需求更加強(qiáng)烈,這就需要在嵌入式系統(tǒng)中支持TCP/IP協(xié)議棧.雖然目前的商用嵌入式操作系統(tǒng),如VxWorks、QNX、pSOS、VRTX等,均提供基于TCP/IP的網(wǎng)絡(luò)組件,但為了滿足各個(gè)方面的應(yīng)用需要,其實(shí)現(xiàn)過于復(fù)雜,需要占用大量的系統(tǒng)資源.而嵌入式系統(tǒng)的本身資源有限,并且其應(yīng)用和功能比較單一,具有較強(qiáng)的針對(duì)性,因此也并不需要一個(gè)完整的TCP/IP網(wǎng)絡(luò)協(xié)議組件,只需要實(shí)現(xiàn)與需求相關(guān)的部分協(xié)議,不使用的協(xié)議則不需要支持.在另一方面,對(duì)于某些特定的嵌入式系統(tǒng),甚至需要優(yōu)化TCP/IP協(xié)議棧或者在TCP/IP協(xié)議棧中編寫自己需要的網(wǎng)絡(luò)協(xié)議.那些不能提供開放源碼的商用嵌入式系統(tǒng)的TCP/IP協(xié)議棧都很難滿足用戶的配置需求,需要用戶自行開發(fā)和定制適合自己系統(tǒng)需求的嵌入式TCP/IP協(xié)議棧.

2 嵌入式協(xié)議棧的開發(fā)和調(diào)試問題

一般的嵌入式系統(tǒng)的開發(fā)和調(diào)試都是使用其相應(yīng)的開發(fā)調(diào)試工具連接計(jì)算機(jī)和目標(biāo)機(jī)進(jìn)行交叉開發(fā)和調(diào)試.例如被廣泛使用的VxWorks嵌入式實(shí)時(shí)操作系統(tǒng)的開發(fā)工具Tornado,它就是一套強(qiáng)有力的交叉開發(fā)工具,用戶可以在計(jì)算機(jī)上使用圖形界面對(duì)目標(biāo)機(jī)上的應(yīng)用程序進(jìn)行調(diào)試.

但即便是使用像Tornado這樣優(yōu)秀的嵌入式開發(fā)環(huán)境,在交叉調(diào)試協(xié)議棧此類比較大型的程序時(shí),還是顯得力不從心,其開發(fā)調(diào)試是件費(fèi)時(shí)費(fèi)力的工作,大大增加了系統(tǒng)的開發(fā)難度和開發(fā)調(diào)試的周期.在目前的嵌入式系統(tǒng)的調(diào)試工具還不盡如人意的現(xiàn)狀下,對(duì)嵌入式TCP/IP協(xié)議棧的開發(fā)如果能前期在Windows平臺(tái)上進(jìn)行開發(fā)和仿真調(diào)試,將是一件很有意義的工作.

嵌入式TCP/IP協(xié)議棧雖然是基于嵌入式操作系統(tǒng),但除了接收和發(fā)送數(shù)據(jù)包以外,幾乎并不直接與底層硬件打交道.因此在Windows平臺(tái)上仿真調(diào)試和運(yùn)行TCP/IP協(xié)議棧是完全可行的,可以完成絕大部分功能的開發(fā)與調(diào)試,后期再移植到嵌入式系統(tǒng)上,只需進(jìn)一步稍加調(diào)試和測試便能實(shí)現(xiàn)整個(gè)嵌入式軟件系統(tǒng)的功能和性能.這樣的開發(fā)流程能夠極大的提高開發(fā)的效率,減少開發(fā)的周期.

3 在Windows平臺(tái)上運(yùn)行嵌入式協(xié)議棧

在講解配置雙協(xié)議棧之前,我們來了解一下在Windows平臺(tái)上運(yùn)行嵌入式協(xié)議棧的內(nèi)容。在Windows平臺(tái)上仿真調(diào)試和運(yùn)行TCP/IP協(xié)議棧,首先需要在Visual C++ 6.0開發(fā)環(huán)境中創(chuàng)建一個(gè)Win32應(yīng)用程序的項(xiàng)目工程用于模擬嵌入式系統(tǒng),嵌入式TCP/IP協(xié)議棧就是在這個(gè)Win32的應(yīng)用程序中運(yùn)行.這樣,我們使用Windows平臺(tái)下的一個(gè)進(jìn)程模擬了一個(gè)多任務(wù)的嵌入式操作系統(tǒng).

一個(gè)多任務(wù)嵌入式操作系統(tǒng)需要具有任務(wù)管理、內(nèi)存管理以及任務(wù)間通信機(jī)制如信號(hào)量、消息隊(duì)列等功能.因此,如想在Windows平臺(tái)上運(yùn)行嵌入式TCP/IP協(xié)議棧,也必須提供上述多任務(wù)嵌入式操作系統(tǒng)的基本功能.

在多任務(wù)嵌入式操作系統(tǒng)中,任務(wù)是系統(tǒng)進(jìn)行調(diào)度的最基本的單元,參與資源競爭和CPU資源在任務(wù)間的分配,系統(tǒng)通過循環(huán)的方式為每個(gè)任務(wù)安排一定的 CPU時(shí)間片,而在宏觀上看仿佛是若干任務(wù)并發(fā)處理,形成多任務(wù)操作系統(tǒng).而在Winodows這樣的通用操作系統(tǒng)平臺(tái)上,則是由線程作為參與CPU時(shí)間 片資源競爭最小實(shí)體,因此,我們使用線程模擬嵌入式操作系統(tǒng)中的一個(gè)任務(wù).任務(wù)的創(chuàng)建、刪除和控制等操作通過調(diào)用Windows平臺(tái)中提供的線程的創(chuàng)建、 刪除和控制的Win32 API函數(shù)來實(shí)現(xiàn).

在多任務(wù)操作系統(tǒng)中,任務(wù)與任務(wù)之間需要協(xié)調(diào)動(dòng)作,相互配合,這就需要提供任務(wù)間相互通信的機(jī)制以進(jìn)行同步和互斥.嵌入式系統(tǒng)中一般提供信號(hào)量、事件和消 息機(jī)制這三種主要的任務(wù)間通信手段.同樣,在Windows平臺(tái)上的Win32 API也提供相應(yīng)的用于進(jìn)程/線程間通信的信號(hào)量、事件和消息機(jī)制的函數(shù).#p#

由于Windows是一個(gè)強(qiáng)大的通用分時(shí)操作系統(tǒng),能夠提供完善的操 作系統(tǒng)接口.因此,多任務(wù)嵌入式操作系統(tǒng)完全可以在Windows平臺(tái)上模擬.不過,這種模擬也只是近似的,畢竟對(duì)于多數(shù)嵌入式系統(tǒng)都是實(shí)時(shí)系統(tǒng),而 Windows卻是分時(shí)系統(tǒng),無法保證其系統(tǒng)的實(shí)時(shí)性.

想要對(duì)配置雙協(xié)議棧有所掌握,肯定是要了解TCP/IP協(xié)議棧的開發(fā)的。至于嵌入式TCP/IP協(xié)議棧的開發(fā),考慮TCP/IP協(xié)議族的復(fù)雜性以及其協(xié)議棧龐大的代碼量,試圖完全從頭到尾徹底的重新編寫一套TCP/IP協(xié)議棧的代碼是極為艱難的,需要大量的人力、物力和時(shí)間的投入.其實(shí)目前TCP/IP技術(shù)已經(jīng)十分成熟,幾乎所有的通用操作系統(tǒng)都提供TCP/IP協(xié)議棧用于網(wǎng)絡(luò)支持,包括那些公開源碼的操作系統(tǒng).因此考慮移植源碼公開的TCP/IP協(xié)議棧,同時(shí)根據(jù)需求對(duì)其進(jìn)行適量的精簡和改進(jìn).

目前,比較常見的源碼公開的TCP/IP協(xié)議棧軟件有:

1). BSD Net網(wǎng)絡(luò)協(xié)議棧軟件.這是由加利福利亞大學(xué)伯克利分校計(jì)算機(jī)系統(tǒng)研究小組發(fā)布的,世界上***個(gè)被廣泛應(yīng)用TCP/IP軟件版本就是伯克利于1983年發(fā)布的4.2BSD,有許多系統(tǒng)的TCP/IP協(xié)議棧實(shí)現(xiàn)都是以它的源代碼為基礎(chǔ)而開發(fā)的.目前其***版本是1994年發(fā)布的4.4BSD-Lite2,又稱為Net/3.

2). Linux的TCP/IP協(xié)議棧軟件.作為一個(gè)遵循GUN公共許可協(xié)議,源碼全部公開的自由操作系統(tǒng)軟件,其TCP/IP協(xié)議棧部分源碼是以BSD的網(wǎng)絡(luò)協(xié)議棧為模型,支持BSD的Socket接口,但其內(nèi)部代碼是重新寫的,與4.4BSD-Lite2并不雷同.

3). lwIP是一個(gè)比較小型的源碼開放的TCP/IP協(xié)議棧軟件,是由瑞典計(jì)算機(jī)科學(xué)研究院的Adam Dunkels教授編寫.它只需要10K的RAM空間和40K的ROM存儲(chǔ)空間,因此非常適合嵌入式系統(tǒng)里使用.

4). uIP則是一個(gè)超小型的TCP/IP協(xié)議棧,僅能提供ARP、SLIP、TCP、ICMP和IP這幾種基本的協(xié)議.其所需資源非常的少,所以非常適合在8位和16位單片機(jī)上運(yùn)行.

對(duì)于TCP/IP協(xié)議棧的選擇主要根據(jù)用戶本身的需求和所能提供的軟硬件資源來確定.比如像BSD和Linux的TCP/IP協(xié)議棧屬于通用的協(xié)議棧,支持協(xié)議比較齊全,但也需要耗用大量的ROM和RAM存儲(chǔ)空間,對(duì)CPU的要求也比較高;而lwIP和uIP這類的協(xié)議棧是專門為嵌入式操作系統(tǒng)開發(fā)出來的,軟件結(jié)構(gòu)比較緊湊,對(duì)CPU和存儲(chǔ)器需求不高,但其所支持的協(xié)議種類及功能也非常有限.

4 WinPcap工具包介紹

在Windows平臺(tái)上仿真調(diào)試和運(yùn)行TCP/IP協(xié)議棧,還需要考慮協(xié)議棧如何接收和發(fā)送數(shù)據(jù)報(bào)文的問題,這就需要使用WinPcap來實(shí)現(xiàn).

WinPcap(Windows Packet Capture)是Windows平臺(tái)下一個(gè)公共的、免費(fèi)的網(wǎng)絡(luò)訪問系統(tǒng),能為Win32應(yīng)用程序提供網(wǎng)絡(luò)訪問的能力.它提供以下四項(xiàng)主要功能:

1) 捕獲原始數(shù)據(jù)報(bào)文,包括共享網(wǎng)絡(luò)上各主機(jī)發(fā)送/接收和相互交換的數(shù)據(jù)包;

2) 在數(shù)據(jù)報(bào)文發(fā)送往應(yīng)用程序之前,按照自定義的規(guī)則將某些特定的數(shù)據(jù)包過濾掉;

3) 在網(wǎng)絡(luò)上發(fā)送原始的數(shù)據(jù)報(bào)文;

4) 收集網(wǎng)絡(luò)通信過程中的統(tǒng)計(jì)信息;

WinPcap的主要功能在于獨(dú)立于主機(jī)協(xié)議而發(fā)送和接收原始數(shù)據(jù)報(bào)文,能夠監(jiān)聽共享網(wǎng)絡(luò)上傳送的數(shù)據(jù)包.因此,通過調(diào)用它提供的各種函數(shù),可以實(shí)現(xiàn)在 Windows平臺(tái)下將各類數(shù)據(jù)報(bào)文通過網(wǎng)絡(luò)適配器發(fā)送到共享網(wǎng)絡(luò)上去,同樣也可以接收網(wǎng)絡(luò)適配器上收到的各種原始的數(shù)據(jù)包.

要使用WinPcap,首先需要在Windows平臺(tái)上安裝WinPcap驅(qū)動(dòng)軟件,然后便可以在Win32的應(yīng)用程序中通過包含packet32.h這 個(gè)頭文件來使用由WinPcap的動(dòng)態(tài)鏈接庫packet32.dll或者靜態(tài)鏈接庫packet32.lib所提供的庫函數(shù)來對(duì)網(wǎng)絡(luò)適配器進(jìn)行打開、設(shè) 置、關(guān)閉操作和通過網(wǎng)絡(luò)適配器進(jìn)行接收或者發(fā)送數(shù)據(jù)報(bào)文.#p#

下面簡要介紹一下其主要函數(shù)的功能:

1) BOOLEAN PacketGetAdapterNames(LPSTR pStr,PULONG BufferSize) 返回可以得到的網(wǎng)絡(luò)適配器列表及描述.

2) LPADAPTER PacketOpetAdapter(LPTSTR AdapterName) 打開一個(gè)網(wǎng)絡(luò)適配器.

3) BOOLEAN PacketSetBuff(LPADAPTER AdapterObject,int dim) 設(shè)置捕獲數(shù)據(jù)報(bào)的內(nèi)核級(jí)緩沖區(qū)大小.

4) BOOLEAN PacketSetHwFilter(LPADAPTER AdapterObject,ULONG Filter) 為接收到的數(shù)據(jù)報(bào)設(shè)置硬件過濾規(guī)則.一般而言,需要將其設(shè)置為 NDIS_PACKET_TYPE_PROMISCUOUS(混雜模式),即接收所有流過的數(shù)據(jù)報(bào)文.

5) LPPACKET PacketAllocatePacket(void) 如果運(yùn)行成功,返回一個(gè)_PACKET結(jié)構(gòu)的指針,否則返回NULL.成功返回的結(jié)果將會(huì)傳送到PacketReceivePacket()函數(shù),接收來自驅(qū)動(dòng)的網(wǎng)絡(luò)數(shù)據(jù)報(bào).

6) VOID PacketInitPacket(LPPACKET lpPacket, PVOID Buffer, UINT Length) 初始化一個(gè)_PACKET結(jié)構(gòu).

7) BOOLEAN PacketSendPacket(LPADAPTER AdapterObject,LPPACKET lpPacket, BOOLEAN Sync) 發(fā)送一個(gè)或多個(gè)數(shù)據(jù)報(bào)的副本.

8) BOOLEAN PacketReceivePacket(LPADAPTER AdapterObject,LPPACKET lpPacket,BOOLEAN Sync) 從NPF驅(qū)動(dòng)程序讀取網(wǎng)絡(luò)數(shù)據(jù)報(bào)及統(tǒng)計(jì)信息.

9) VOID PacketFreePacket(LPPACKET lpPacket) 釋放參數(shù)提供的_PACKET結(jié)構(gòu).

10) VOID PacketCloseAdapter(LPADAPTER lpAdapter) 關(guān)閉參數(shù)中提供的網(wǎng)絡(luò)適配器,釋放相關(guān)的ADAPTER結(jié)構(gòu).

5 在Windows平臺(tái)下協(xié)議棧發(fā)送和接收函數(shù)的設(shè)計(jì)

了解配置雙協(xié)議棧的問題之前,我們還要清楚:在Windows平臺(tái)下通過WinPcap可以直接對(duì)網(wǎng)絡(luò)適配器進(jìn)行操作,從而實(shí)現(xiàn)發(fā)送和接收數(shù)據(jù)報(bào)文的目的.在使用WinpCap前首先需要進(jìn)行初始化 操作,其步驟如下:調(diào)用PacketGetAdapterNames()獲取當(dāng)前網(wǎng)絡(luò)適配器的名稱,再調(diào)用PacketOpenAdapter()函數(shù)打 開一個(gè)網(wǎng)絡(luò)適配器,然后還需要調(diào)用PacketSetHwFilter()函數(shù)設(shè)置網(wǎng)絡(luò)適配器的過濾規(guī)則和調(diào)用PacketSetBuff()設(shè)置捕獲數(shù) 據(jù)報(bào)的內(nèi)核級(jí)緩沖區(qū)大小.

當(dāng)協(xié)議棧需要發(fā)送數(shù)據(jù)報(bào)文時(shí),首先需要調(diào)用PacketAllocatePacket()函數(shù)為發(fā)送數(shù)據(jù)報(bào)文創(chuàng)建一個(gè)網(wǎng)絡(luò)數(shù)據(jù)報(bào)結(jié)構(gòu),然后調(diào)用 PacketInitPacket()函數(shù)對(duì)該結(jié)構(gòu)進(jìn)行初始化,將存儲(chǔ)待發(fā)送數(shù)據(jù)報(bào)文的緩沖區(qū)指針和長度填入網(wǎng)絡(luò)數(shù)據(jù)報(bào)結(jié)構(gòu),再接下來便是調(diào)用 PacketSendPacket()函數(shù)將數(shù)據(jù)報(bào)文從指定的網(wǎng)絡(luò)適配器中發(fā)送出去,之后需要調(diào)用PacketFreePacket()函數(shù)釋放掉剛才申 請(qǐng)的網(wǎng)絡(luò)數(shù)據(jù)報(bào)文結(jié)構(gòu)的內(nèi)存空間.這樣,一個(gè)TCP/IP協(xié)議棧就能夠完成將一個(gè)數(shù)據(jù)報(bào)文通過WinPcap操作網(wǎng)絡(luò)適配器發(fā)送到網(wǎng)絡(luò)上的工作.

嵌入式平臺(tái)中配置雙協(xié)議棧的問題#p#

使用WinPcap接收網(wǎng)絡(luò)適配器上收集到的網(wǎng)絡(luò)上的數(shù)據(jù)報(bào)文,首先需要?jiǎng)?chuàng)建一個(gè)高優(yōu)先級(jí)別的任務(wù)或者線程,一般在TCP/IP協(xié) 議棧的網(wǎng)絡(luò)接口層初始化時(shí)即需要?jiǎng)?chuàng)建一個(gè)這樣的任務(wù)或者線程,然后在該任務(wù)或者線程函數(shù)里調(diào)用PacketAllocatePacket()為接收數(shù)據(jù)報(bào) 文創(chuàng)建網(wǎng)絡(luò)數(shù)據(jù)報(bào)結(jié)構(gòu),再調(diào)用PacketInitPacket()函數(shù)為接收的數(shù)據(jù)報(bào)文分配內(nèi)存緩沖區(qū),這個(gè)緩沖區(qū)需要盡量大一點(diǎn)兒,否則一旦網(wǎng)絡(luò)上數(shù) 據(jù)報(bào)文比較多,而協(xié)議棧上層來不及處理,則會(huì)造成數(shù)據(jù)報(bào)文的丟失.接下來便是循環(huán)的調(diào)用PacketReceivePacket()函數(shù)從指定的網(wǎng)絡(luò)適配 器讀取數(shù)據(jù)報(bào)文,并將數(shù)據(jù)報(bào)文拷貝到協(xié)議棧的內(nèi)存空間,再通過操作系統(tǒng)提供的任務(wù)或線程間通信的機(jī)制將該數(shù)據(jù)報(bào)文發(fā)送到TCP/IP協(xié)議棧的接收任務(wù)或者線程進(jìn)行報(bào)文的分析和處理.這個(gè)數(shù)據(jù)接收的任務(wù)和線程將永遠(yuǎn)不會(huì)返回,始終循環(huán)調(diào)用PacketReceivePacket()函數(shù)讀取網(wǎng)絡(luò)適配器上接收到的網(wǎng)絡(luò)上傳輸過來的數(shù)據(jù)報(bào)文并將其交付給TCP/IP協(xié)議棧進(jìn)行處理.

6 在Windows平臺(tái)上配置雙協(xié)議棧的問題

由于Windows平臺(tái)本身自帶有TCP/IP協(xié)議棧,而我們又需要在Windows平臺(tái)上運(yùn)行一個(gè)嵌入式TCP/IP協(xié)議棧,實(shí)際上是在Windows這一個(gè)操作系統(tǒng)上配置了雙TCP/IP協(xié)議棧.

要使這兩個(gè)TCP/IP協(xié)議棧相互之間互不影響并能各自良好的運(yùn)行,首先需要為兩個(gè)協(xié)議棧各自分配不同的IP地址;其次在嵌入式TCP/IP協(xié)議棧中的數(shù)據(jù)鏈路層的Mac地址,一定不能使用Windows平臺(tái)的TCP/IP協(xié)議棧使用的網(wǎng)絡(luò)適配器的地址,除非計(jì)算機(jī)裝有兩塊網(wǎng)絡(luò)適配器,Windows平臺(tái)的TCP/IP協(xié)議棧使用一個(gè)網(wǎng)絡(luò)適配器進(jìn)行數(shù)據(jù)的收發(fā),而嵌入式TCP/IP協(xié)議棧使用另一個(gè)網(wǎng)網(wǎng)絡(luò)適配器收發(fā)數(shù)據(jù)報(bào)文.其實(shí)在嵌入式TCP/IP協(xié) 議棧中,其鏈路層的Mac地址可以通過修改程序代碼設(shè)置任意的虛擬Mac地址,但這必須首先調(diào)用WinPcap的PacketSetHwFilter() 函數(shù)設(shè)置網(wǎng)絡(luò)適配器的接收模式為NDIS_PACKET_TYPE_PROMISCUOUS(混雜模式)用于指定網(wǎng)羅適配器接收所有流過的數(shù)據(jù)報(bào)文,否 則,網(wǎng)絡(luò)適配器會(huì)根據(jù)本身的Mac地址對(duì)網(wǎng)絡(luò)上接收到的數(shù)據(jù)報(bào)文進(jìn)行Mac過濾,丟棄掉不屬于該網(wǎng)絡(luò)適配器接收的數(shù)據(jù)報(bào)文.

7 小結(jié)

作者在工作中按照上述方法,成功的在Windows平臺(tái)上運(yùn)行并調(diào)試了Linux的TCP/IP協(xié)議棧,并最終將其移植到VxWorks操作系統(tǒng)中運(yùn)行.在調(diào)試過程中,作者明顯感覺Windows的VC6開發(fā)平臺(tái)下調(diào)試確實(shí)比直接使用Tornado調(diào)試要方便和快捷許多.由于前期在Windows平臺(tái)上調(diào)試時(shí)解決了大部分移植和修改TCP/IP協(xié)議棧的問題,后期在Tornado下調(diào)試時(shí)基本上沒有花費(fèi)太多的時(shí)間,大大提高了工作的效率,減小了開發(fā)的周期.

責(zé)任編輯:佟健 來源: hi.baidu.com
相關(guān)推薦

2011-11-08 15:40:47

LwIP協(xié)議棧嵌入式

2010-06-09 11:20:15

嵌入式IPv6協(xié)議棧

2010-09-09 16:42:18

嵌入式IPv6協(xié)議棧

2010-06-10 12:10:23

嵌入式IPv6協(xié)議棧

2023-04-27 07:06:18

2009-09-04 10:10:01

嵌入式LinuxLinux平臺(tái)多協(xié)議路由器

2023-05-04 00:27:40

2010-09-08 18:09:01

雙協(xié)議棧

2011-06-21 11:30:31

嵌入式 Qt

2010-07-05 16:25:13

IPX SPX協(xié)議

2009-08-20 10:57:40

嵌入式開發(fā)微軟

2010-01-12 17:32:40

ARM平臺(tái)

2011-01-14 13:13:23

嵌入式Linux開發(fā)

2010-05-26 13:57:22

IPv6協(xié)議

2020-04-22 11:51:41

物聯(lián)網(wǎng)嵌入式編程IOT

2009-12-24 17:21:38

嵌入式Linux

2022-01-04 22:19:38

Linux開發(fā)嵌入式

2022-01-03 23:33:40

Linux組件系統(tǒng)

2023-01-04 09:37:16

2022-12-14 08:06:08

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

亚洲视频在线看| 91国偷自产一区二区三区观看| 97久草视频| 日韩精品一区二区三| 国产亚洲一区二区三区不卡| 欧美日韩国产一级片| 东北少妇不带套对白| 成年人视频网站在线| 国产一区二区影院| 欧美性做爰毛片| 欧产日产国产v| 久久av超碰| 欧美大黄免费观看| 亚洲最大综合网| www.色在线| 国产精品女上位| 久久99影院| 国产又黄又粗又长| 视频一区欧美精品| 欧美福利小视频| 亚洲天堂精品一区| 亚洲黄页在线观看| 日韩三区在线观看| 99re精彩视频| 欧美香蕉视频| 午夜精品久久一牛影视| 国产又爽又黄ai换脸| 久久国产精品高清一区二区三区| 国产乱妇无码大片在线观看| 国产精品777| 一级片中文字幕| 国产精品hd| 免费成人高清视频| 欧美一级特黄高清视频| 蜜桃国内精品久久久久软件9| 精品噜噜噜噜久久久久久久久试看| 五月婷婷丁香综合网| 在线女人免费视频| 激情成人中文字幕| 97免费视频观看| caopo在线| 中文字幕中文字幕一区二区| 日韩精品电影网站| 男人的天堂av高清在线| 91丨九色porny丨蝌蚪| 国产欧美日本在线| 手机在线观看毛片| 国产91在线|亚洲| 91精品国产综合久久久久久丝袜| 在线观看毛片av| 蜜臀av一级做a爰片久久| 日韩美女在线看| 夜夜躁日日躁狠狠久久av| 老司机午夜精品视频在线观看| 2025国产精品视频| 国产成人无码av| 久久久久国产精品一区三寸| 国产成人精品免高潮费视频| 高潮毛片又色又爽免费| 老司机免费视频久久 | 自拍网站在线观看| 日韩欧美中文字幕在线观看 | 日本不卡在线视频| 国产精品丝袜久久久久久高清| 波多野结衣电车痴汉| 奇米四色…亚洲| 成人高h视频在线| 国产男男gay网站| 国产成都精品91一区二区三| av一区二区三区四区电影| 人人妻人人玩人人澡人人爽| 9色porny自拍视频一区二区| 欧美日韩在线观看一区| 国产www.大片在线| 亚洲三级免费电影| 日韩xxxx视频| 午夜无码国产理论在线| 欧美精品99久久久**| 丰满少妇一区二区三区专区| 精品人人人人| 一区二区成人av| 午夜精品一区二区三级视频| 欧美日本一区二区高清播放视频| 亚州精品天堂中文字幕| 午夜精品一区二| 国产一区日韩二区欧美三区| 国产精品日韩一区二区| 国产大片在线免费观看| 伊人色综合久久天天人手人婷| 国产96在线 | 亚洲| 91综合国产| 精品国产乱码久久久久久1区2区 | 久久av影视| 精品久久国产精品| 日本网站在线播放| 另类的小说在线视频另类成人小视频在线 | 国产成人av自拍| 秋霞久久久久久一区二区| 菠萝蜜视频国产在线播放| 五月天亚洲婷婷| 中文字幕在线视频精品| 偷拍视屏一区| 久久九九免费视频| 中文字幕在线播| 盗摄精品av一区二区三区| 天天综合色天天综合色hd| 国产白丝在线观看| 欧美日韩一区三区| 精品国产人妻一区二区三区| 久久精品不卡| 欧美最猛性xxxxx免费| 国产又大又黄又爽| 国产午夜一区二区三区| 日韩欧美国产综合在线| 成人免费91| 亚洲视频一区二区| 国产精品第一页在线观看| 理论电影国产精品| 色播五月综合| 一个人看的www视频在线免费观看 一个人www视频在线免费观看 | 日韩少妇与小伙激情| 国产伦精品一区二区三区视频我| 国产91丝袜在线18| 国产又大又长又粗又黄| 国产一区二区主播在线| 日韩电影免费观看中文字幕| 麻豆成人在线视频| 国产在线一区二区综合免费视频| 日韩免费三级| 都市激情综合| 国产视频亚洲视频| 日本一区二区网站| 成人蜜臀av电影| 青青草视频国产| 国产精品欧美一区二区三区不卡| 日韩中文字幕欧美| 五月激情丁香网| 久久久久国产精品麻豆| 男人天堂网视频| 三级小说欧洲区亚洲区| 8090成年在线看片午夜| 人妻无码中文字幕免费视频蜜桃| 亚洲一区二区3| 国产人妻精品午夜福利免费| 午夜精品久久| 97欧洲一区二区精品免费| 新版中文在线官网| 日韩欧美二区三区| 久久亚洲AV无码| 成人涩涩免费视频| 日韩av高清在线看片| 欧亚精品一区| 日本精品久久久久影院| 九色在线免费| 欧美日韩免费一区二区三区视频| jizzjizz日本少妇| 激情偷乱视频一区二区三区| 国产精品美女在线播放| 成人豆花视频| 欧美精品18videosex性欧美| 狠狠躁夜夜躁av无码中文幕| 亚洲不卡在线观看| 北岛玲一区二区| 日韩精品一区第一页| 天堂资源在线亚洲资源| 欧美videos粗暴| 另类专区欧美制服同性| 黑人操亚洲女人| 日本高清不卡一区| 国产精品18在线| 国产酒店精品激情| 久久黄色片视频| 成人网18免费网站| 亚洲a级在线播放观看| xxxcom在线观看| 亚洲色在线视频| 国产精品九九九九| 无吗不卡中文字幕| jizz18女人高潮| 国产**成人网毛片九色| 国内外成人激情视频| 91一区二区| 国产综合色一区二区三区| 桃花岛成人影院| 久久伊人精品一区二区三区| 四虎永久在线观看| 欧美日韩精品一区二区三区 | 尤物网在线观看| 五月婷婷激情视频| 亚洲人一二三区| 免费a级黄色片| 国产自产2019最新不卡| 啊啊啊一区二区| 午夜国产一区二区| 黄色国产精品一区二区三区| 欧美黑粗硬大| 3344国产精品免费看| 黄色av电影在线观看| 日韩av在线播放资源| 国产男女裸体做爰爽爽| 色噜噜夜夜夜综合网| 久久国产精品二区| 国产精品国产自产拍高清av| 国产一级伦理片| 精品无码三级在线观看视频| 国产又黄又大又粗视频| 欧美日韩1080p| 一区二区免费在线观看| 日韩高清电影免费| 成人免费在线看片| 亚洲欧洲日韩精品在线| 日韩av黄色在线观看| 国产精品蜜臀| 欧美大奶子在线| 3p视频在线观看| 国产午夜精品理论片a级探花| 国产熟女一区二区丰满| 欧美丝袜第三区| 草久视频在线观看| 亚洲成人免费视频| 欧美成人精品欧美一级| 最好看的中文字幕久久| 永久免费毛片在线观看| 91麻豆蜜桃一区二区三区| 成人在线观看一区二区| 国产大陆a不卡| 人人爽人人爽av| 久久国产精品露脸对白| 男人天堂成人在线| 亚洲在线成人| av免费播放网址| 亚洲麻豆av| 丰满的少妇愉情hd高清果冻传媒| 亚洲精品国产成人影院| youjizz.com亚洲| 欧美大人香蕉在线| 亚洲自拍三区| 91亚洲国产| 欧美aaa在线观看| 91青青国产在线观看精品| 亚洲视频精品一区| 婷婷伊人综合| 四虎永久免费网站| 欧美一区二区三区久久精品| 椎名由奈jux491在线播放 | 国产xxxxx视频| 日韩电影免费在线看| 中文字幕第80页| 美女脱光内衣内裤视频久久影院| 亚洲视频在线a| 精品在线播放免费| 肉色超薄丝袜脚交| 国产不卡视频一区| 男男一级淫片免费播放| 99国产精品久久久久久久久久久| 日韩www视频| 久久精品在线观看| 欧美性猛交xxxx乱大交少妇| 亚洲视频资源在线| 亚洲国产精一区二区三区性色| 午夜精品久久久久久| 中文字幕超碰在线| 欧美性大战久久久久久久蜜臀| 伊人成人在线观看| 日韩小视频在线观看专区| 高清乱码毛片入口| 精品调教chinesegay| 91在线视频免费看| 欧美伦理91i| 国产精品粉嫩| 成人福利视频在线观看| 豆花视频一区二区| 欧美日韩一区综合| 亚洲精品99| 国产成人精品视频免费看| 日本欧美韩国一区三区| 男插女视频网站| 久久亚洲一区二区三区四区| 亚洲一级理论片| 亚洲一本大道在线| 亚洲欧美一二三区| 欧美一区二区三区男人的天堂| 人成网站在线观看| 尤物yw午夜国产精品视频明星| 1区2区3区在线视频| 欧美性资源免费| 日韩福利影视| 久久av免费观看| 7777久久香蕉成人影院| 国产美女网站在线观看| 久久超碰97中文字幕| 在线观看国产免费视频| 国产精品久久午夜| 欧美另类一区二区| 91麻豆精品国产91久久久久久 | 91福利免费视频| 亚洲精品国产拍免费91在线| 最新电影电视剧在线观看免费观看| 欧美劲爆第一页| 小说区图片区亚洲| 欧美久久久久久| 伊人久久大香线蕉av超碰演员| 国产九九在线视频| 99久久精品国产网站| 夫妻性生活毛片| 在线亚洲人成电影网站色www| 亚洲精品字幕在线| 色妞一区二区三区| 少妇一区视频| 国产伦精品一区二区三区照片| 先锋资源久久| 不卡av免费在线| 99精品欧美一区二区蜜桃免费 | 国产精品麻豆一区二区三区| 欧美激情在线狂野欧美精品| 久久亚洲精品人成综合网| 久久久福利视频| 91久久黄色| 波多野结衣电影免费观看| 国产精品麻豆一区二区| 亚洲乱码国产乱码精品| 亚洲黄色片网站| 青春草视频在线观看| 91免费精品视频| 欧美丰满日韩| 亚洲天堂2018av| 中文字幕不卡在线| 国产精品高清无码| 亚洲欧美日韩中文视频| 五月天国产在线| 精品国产乱码久久久久久郑州公司 | 青青草视频在线观看免费| 亚洲激情久久久| 91福利在线免费| 国产亚洲精品久久飘花| 激情婷婷欧美| 日本wwwwwww| 一区二区三区自拍| www.我爱av| 欧美激情视频在线观看| 秋霞午夜一区二区三区视频| 国产大尺度在线观看| 精品一区二区三区视频在线观看| 欧美日韩中文字幕视频| 欧美日韩精品三区| 老司机精品视频在线观看6| 成人久久久久久久| 你懂的网址国产 欧美| 又色又爽又黄18网站| 亚洲制服欧美中文字幕中文字幕| 成人毛片在线精品国产| 久久久视频精品| 私拍精品福利视频在线一区| www.四虎成人| 国产精品网曝门| 国产精品欧美久久久久天天影视| 久久精品国产欧美亚洲人人爽| 精品国产鲁一鲁****| 日本熟妇人妻xxxx| 26uuu国产电影一区二区| 在线免费观看av网址| 日韩一区二区三区国产| 亚洲国产中文在线| 国产美女主播在线播放| 久久久久久久久岛国免费| 免费精品一区二区| 久久成人在线视频| 久久视频在线观看| 最近免费中文字幕中文高清百度| 国产精品色在线| 亚洲av无码一区二区三区dv| 91高清免费在线观看| 欧美艳星介绍134位艳星| 精品人妻一区二区三| 精品毛片三在线观看| 成人在线免费视频| 产国精品偷在线| 日日摸夜夜添夜夜添国产精品| 日韩在线观看免| 亚洲成人黄色在线观看| 91天天综合| 婷婷五月综合缴情在线视频| 国产欧美日韩三区| www.成人在线观看| 欧美在线视频网站| 国产精品久久久久久影院8一贰佰| 国产伦理在线观看| 日本道在线观看一区二区| av软件在线观看| 欧美一区二区综合| 国产精品一区二区x88av| 波多野结衣啪啪| 欧美激情一级欧美精品| 狠狠操综合网| 老司机免费视频| 欧美精品777| 日韩和的一区二在线| 欧美一区二区激情| 日韩理论片中文av| 蜜桃成人在线视频|