RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一文詳細(xì)了解五種IO模型

GReq_mcu168 ? 來源:嚕嚕呀? ? 作者:嚕嚕呀? ? 2022-02-14 14:38 ? 次閱讀

一、基本概念

五種IO模型包括:阻塞IO、非阻塞IO、IO多路復(fù)用、信號(hào)驅(qū)動(dòng)IO、異步IO。

首先需要了解下系統(tǒng)調(diào)用的幾個(gè)函數(shù)和基本概念。

1.1 簡(jiǎn)單介紹幾個(gè)系統(tǒng)調(diào)用函數(shù)

由于我對(duì)于C語言不熟悉,幾個(gè)系統(tǒng)函數(shù)參考了一些文章,如果錯(cuò)誤歡迎指出!

recvfrom

Linux系統(tǒng)提供給用戶用于接收網(wǎng)絡(luò)IO的系統(tǒng)接口。從套接字上接收一個(gè)消息,可同時(shí)應(yīng)用于面向連接和無連接的套接字。

如果此系統(tǒng)調(diào)用返回值<0,并且 errno為EWOULDBLOCK或EAGAIN(套接字已標(biāo)記為非阻塞,而接收操作被阻塞或者接收超時(shí) )時(shí),連接正常,阻塞**接收數(shù)據(jù)(這很關(guān)鍵,前4種IO模型都設(shè)計(jì)此系統(tǒng)調(diào)用)。

select

select系統(tǒng)調(diào)用允許程序同時(shí)在多個(gè)底層文件描述符上,等待輸入的到達(dá)或輸出的完成。以數(shù)組形式存儲(chǔ)文件描述符,64位機(jī)器默認(rèn)2048個(gè)。當(dāng)有數(shù)據(jù)準(zhǔn)備好時(shí),無法感知具體是哪個(gè)流OK了,所以需要一個(gè)一個(gè)的遍歷,函數(shù)的時(shí)間復(fù)雜度為O(n)。

poll

以鏈表形式存儲(chǔ)文件描述符,沒有長(zhǎng)度限制。本質(zhì)與select相同,函數(shù)的時(shí)間復(fù)雜度也為O(n)。

epoll

是基于事件驅(qū)動(dòng)的,如果某個(gè)流準(zhǔn)備好了,會(huì)以事件通知,知道具體是哪個(gè)流,因此不需要遍歷,函數(shù)的時(shí)間復(fù)雜度為O(1)。

sigaction

用于設(shè)置對(duì)信號(hào)的處理方式,也可檢驗(yàn)對(duì)某信號(hào)的預(yù)設(shè)處理方式。Linux使用SIGIO信號(hào)來實(shí)現(xiàn)IO異步通知機(jī)制。

1.2 同步&異步

同步和異步是針對(duì)應(yīng)用程序和內(nèi)核交互而言的,也可理解為被被調(diào)用者(操作系統(tǒng))的角度來說。

同步是用戶進(jìn)程觸發(fā)IO操作并等待或輪詢的去查看是否就緒,而異步是指用戶進(jìn)程觸發(fā)IO操作以后便開始做自己的事情,而當(dāng)IO操作已經(jīng)完成的時(shí)候會(huì)得到IO完成的通知,需要CPU支持

1.3 阻塞&非阻塞

阻塞和非阻塞是針對(duì)于進(jìn)程在訪問數(shù)據(jù)的時(shí)候,也可理解為調(diào)用者(程序)角度來說。根據(jù)IO操作的就緒狀態(tài)來采取的不同的方式。

阻塞方式下讀取或?qū)懭敕椒▽⒁恢钡却?,而非阻塞方式下讀取或?qū)懭敕椒〞?huì)立即返回一個(gè)狀態(tài)值。

下午擼代碼餓了,好久沒吃KFC了,決定去整個(gè)全家桶 ,這一切都要從一個(gè)全家桶說起~

我跑去肯德基買全家桶,但是很不巧,輪到我時(shí),全家桶賣完了,我只能等著新做一份 …

二、阻塞IO模型

學(xué)習(xí)過操作系統(tǒng)的知識(shí)后,可以知道:不管是網(wǎng)絡(luò)IO還是磁盤IO,對(duì)于讀操作而言,都是等到網(wǎng)絡(luò)的某個(gè)數(shù)據(jù)分組到達(dá)后/數(shù)據(jù)準(zhǔn)備好后,將數(shù)據(jù)拷貝到內(nèi)核空間的緩沖區(qū)中,再?gòu)膬?nèi)核空間拷貝到用戶空間的緩沖區(qū)。

此時(shí)我已饑渴難耐,全程盯著后廚,等待著一分一秒(別多想 ),終于全家桶做好了,在此期間雖然什么事也沒干,但是最后能吃到全家桶,我很幸福。

此處需要一個(gè)清新的腦回路,我就是程序,我想要全家桶,于是發(fā)起了系統(tǒng)調(diào)用,而后廚加工的過程就是在做數(shù)據(jù)準(zhǔn)備和拷貝工作。全家桶最終到手,數(shù)據(jù)終于從內(nèi)核空間拷貝到了用戶空間。

簡(jiǎn)單看下執(zhí)行流程:

一文詳細(xì)了解五種IO模型

接下來發(fā)揮看圖說話的專長(zhǎng)了:阻塞IO的執(zhí)行過程是進(jìn)程進(jìn)行系統(tǒng)調(diào)用,等待內(nèi)核將數(shù)據(jù)準(zhǔn)備好并復(fù)制到用戶態(tài)緩沖區(qū)后,進(jìn)程放棄使用CPU并一直阻塞在此,直到數(shù)據(jù)準(zhǔn)備好。

三、非阻塞IO模型

此時(shí)我每隔5分鐘詢問全家桶好了沒,在數(shù)次盤問后,終于出爐了。在每一次盤問之前,對(duì)于程序來說是非阻塞的,占用CPU資源,可以做其他事情。

每次應(yīng)用程序詢問內(nèi)核是否有數(shù)據(jù)準(zhǔn)備好。如果就緒,就進(jìn)行拷貝操作;如果未就緒,就不阻塞程序,內(nèi)核直接返回未就緒的返回值,等待用戶程序下一個(gè)輪詢。

一文詳細(xì)了解五種IO模型

大致經(jīng)歷兩個(gè)階段:

等待數(shù)據(jù)階段:未阻塞, 用戶進(jìn)程需要盲等,不停的去輪詢內(nèi)核。

數(shù)據(jù)復(fù)制階段:阻塞,此時(shí)進(jìn)行數(shù)據(jù)復(fù)制。

在這兩個(gè)階段中,用戶進(jìn)程只有在數(shù)據(jù)復(fù)制階段被阻塞了,而等待數(shù)據(jù)階段沒有阻塞,但是用戶進(jìn)程需要盲等,不停地輪詢內(nèi)核,看數(shù)據(jù)是否準(zhǔn)備好。

四、IO多路復(fù)用模型

排了很長(zhǎng)的隊(duì),終于輪到我支付后,拿到了一張小票,上面有號(hào)次。當(dāng)全家桶出爐后,會(huì)喊相應(yīng)的號(hào)次來取。KFC營(yíng)業(yè)員小姐姐打小票出號(hào)次的動(dòng)作相當(dāng)于操作系統(tǒng)多開了個(gè)線程,專門接收客戶端的連接。我只關(guān)注叫到的是不是我的號(hào),因此程序還需在服務(wù)端注冊(cè)我想監(jiān)聽的事件類型。

多路復(fù)用一般都是用于網(wǎng)絡(luò)IO,服務(wù)端與多個(gè)客戶端的建立連接。下面是神奇的多路復(fù)用執(zhí)行過程:

一文詳細(xì)了解五種IO模型

相比于阻塞IO模型,多路復(fù)用只是多了一個(gè)select/poll/epoll函數(shù)。select函數(shù)會(huì)不斷地輪詢自己所負(fù)責(zé)的文件描述符/套接字的到達(dá)狀態(tài),當(dāng)某個(gè)套接字就緒時(shí),就對(duì)這個(gè)套接字進(jìn)行處理。select負(fù)責(zé)輪詢等待,recvfrom負(fù)責(zé)拷貝。當(dāng)用戶進(jìn)程調(diào)用該select,select會(huì)監(jiān)聽所有注冊(cè)好的IO,如果所有IO都沒注冊(cè)好,調(diào)用進(jìn)程就阻塞。

對(duì)于客戶端來說,一般感受不到阻塞,因?yàn)檎?qǐng)求來了,可以用放到線程池里執(zhí)行;但對(duì)于執(zhí)行select的操作系統(tǒng)而言,是阻塞的,需要阻塞地等待某個(gè)套接字變?yōu)榭勺x。

IO多路復(fù)用其實(shí)是阻塞在select,poll,epoll這類系統(tǒng)調(diào)用上的,復(fù)用的是執(zhí)行select,poll,epoll的線程。

五、信號(hào)驅(qū)動(dòng)IO模型

跑KFC嫌麻煩,剛好有個(gè)會(huì)員,直接點(diǎn)份外賣,美滋滋。當(dāng)外賣送達(dá)時(shí),會(huì)收到取餐電話(信號(hào))。在收到取餐電話之前,我可以愉快地吃雞或者學(xué)習(xí)。

當(dāng)數(shù)據(jù)報(bào)準(zhǔn)備好的時(shí)候,內(nèi)核會(huì)向應(yīng)用程序發(fā)送一個(gè)信號(hào),進(jìn)程對(duì)信號(hào)進(jìn)行捕捉,并且調(diào)用信號(hào)處理函數(shù)來獲取數(shù)據(jù)報(bào)。

一文詳細(xì)了解五種IO模型

該模型也分為兩個(gè)階段:

數(shù)據(jù)準(zhǔn)備階段:未阻塞,當(dāng)數(shù)據(jù)準(zhǔn)備完成之后,會(huì)主動(dòng)的通知用戶進(jìn)程數(shù)據(jù)已經(jīng)準(zhǔn)備完成,對(duì)用戶進(jìn)程做一個(gè)回調(diào)。

數(shù)據(jù)拷貝階段:阻塞用戶進(jìn)程,等待數(shù)據(jù)拷貝。

六、異步IO模型此時(shí)科技的發(fā)展已經(jīng)超乎想象了,外賣機(jī)器人將全家桶自動(dòng)送達(dá)并轉(zhuǎn)換成營(yíng)養(yǎng)快速注入我的體內(nèi),同時(shí)還能得到口感的滿足。注入結(jié)束后,機(jī)器人會(huì)提醒我注入完畢。在這個(gè)期間我可以放心大膽的玩,甚至注射的時(shí)候也不需要停下來!

類比一下,就是用戶進(jìn)程發(fā)起系統(tǒng)調(diào)用后,立刻就可以開始去做其他的事情,然后直到I/O數(shù)據(jù)準(zhǔn)備好并復(fù)制完成后,內(nèi)核會(huì)給用戶進(jìn)程發(fā)送通知,告訴用戶進(jìn)程操作已經(jīng)完成了。

一文詳細(xì)了解五種IO模型

特點(diǎn):

異步I/O執(zhí)行的兩個(gè)階段都不會(huì)阻塞讀寫操作,由內(nèi)核完成。

完成后內(nèi)核將數(shù)據(jù)放到指定的緩沖區(qū),通知應(yīng)用程序來取。

七、Java中的BIO,NIO,AIO操作系統(tǒng)的IO模型是底層基石,Java對(duì)于IO的操作其實(shí)就是進(jìn)一步的封裝。適配一些系統(tǒng)調(diào)用方法,讓我們玩地更爽。

BIO,NIO,AIO涉及相關(guān)實(shí)操代碼已收錄至我的github,歡迎star~

7.1 BIO--同步阻塞的編程方式

JDK1.4之前常用的編程方式。

實(shí)現(xiàn)過程:

首先在服務(wù)端啟動(dòng)一個(gè)ServerSocket來監(jiān)聽網(wǎng)絡(luò)請(qǐng)求,客戶端啟動(dòng)Socket發(fā)起網(wǎng)絡(luò)請(qǐng)求,默認(rèn)情況下ServerSocket會(huì)建立一個(gè)線程來處理此請(qǐng)求,如果服務(wù)端沒有線程可用,客戶端則會(huì)阻塞等待或遭到拒絕,并發(fā)效率比較低。

服務(wù)器實(shí)現(xiàn)的模式是一個(gè)連接一個(gè)線程,若有客戶端有連接請(qǐng)求服務(wù)端就需要啟動(dòng)一個(gè)線程進(jìn)行處理,如果這個(gè)連接不做任何事情會(huì)造成不必要的線程開銷。當(dāng)然,也可以通過線程池機(jī)制改善。

使用場(chǎng)景:

BIO適用于連接數(shù)目比較小且固定的架構(gòu),對(duì)服務(wù)器資源要求高,并發(fā)局限于應(yīng)用中。

7.2 NIO--同步非阻塞的編程方式

7.2.1 NIO簡(jiǎn)介

NIO 本身是基于事件驅(qū)動(dòng)思想來完成的,當(dāng) socket 有流可讀或可寫入時(shí),操作系統(tǒng)會(huì)相應(yīng)地通知應(yīng)用程序進(jìn)行處理,應(yīng)用再將流讀取到緩沖區(qū)或?qū)懭氩僮飨到y(tǒng)。一個(gè)有效的請(qǐng)求對(duì)應(yīng)一個(gè)線程,當(dāng)連接沒有數(shù)據(jù)時(shí),是沒有工作線程來處理的。

服務(wù)器實(shí)現(xiàn)模式為一個(gè)請(qǐng)求一個(gè)通道,即客戶端發(fā)送的連接請(qǐng)求都會(huì)注冊(cè)到多路復(fù)用器上,多路復(fù)用器輪詢到連接有 I/O 請(qǐng)求時(shí)才啟動(dòng)一個(gè)線程進(jìn)行處

使用場(chǎng)景:

NIO 方式適用于連接數(shù)目多且連接比較短(輕操作)的架構(gòu),比如聊天服務(wù)器,并發(fā)局限于應(yīng)用中,編程復(fù)雜,JDK1.4 開始支持。

7.2.2 NIO中的幾種重要角色

有緩沖區(qū)Buffer,通道Channel,多路復(fù)用器Selector。

7.2.2.1 Buffer

在NIO庫(kù)中,所有數(shù)據(jù)都是用緩沖區(qū)(用戶空間緩沖區(qū))處理的。在讀取數(shù)據(jù)時(shí),它是直接讀到緩沖區(qū)中的;在寫入數(shù)據(jù)時(shí),也是寫入到緩沖區(qū)中。任何時(shí)候訪問NIO中的數(shù)據(jù),都是通過緩沖區(qū)進(jìn)行操作。

緩沖區(qū)實(shí)際上是一個(gè)數(shù)組,并提供了對(duì)數(shù)據(jù)的結(jié)構(gòu)化訪問以及維護(hù)讀寫位置等信息。

Buffer的應(yīng)用固定邏輯

相關(guān)的代碼我會(huì)更新至github~

寫操作順序

clear()

put() -> 寫操作

flip() ->重置游標(biāo)

SocketChannel.write(buffer); ->將緩存數(shù)據(jù)發(fā)送到網(wǎng)絡(luò)的另一端

clear()

讀操作順序

clear()

SocketChannel.read(buffer); ->從網(wǎng)絡(luò)中讀取數(shù)據(jù)

buffer.flip()

buffer.get() ->讀取數(shù)據(jù)

buffer.clear()

7.2.2.2 Channel

nio中對(duì)數(shù)據(jù)的讀取和寫入要通過Channel,它就像水管一樣,是一個(gè)通道。通道不同于流的地方就是通道是雙向的,可以用于讀、寫和同時(shí)讀寫操作。

7.2.2.3 Selector

多路復(fù)用器,用于注冊(cè)通道??蛻舳税l(fā)送的連接請(qǐng)求都會(huì)注冊(cè)到多路復(fù)用器上,多路復(fù)用器輪詢到連接有I/O請(qǐng)求時(shí)才啟動(dòng)一個(gè)線程進(jìn)行處理

7.3 AIO--異步非阻塞編程方式

進(jìn)行讀寫操作時(shí),只須直接調(diào)用api的read或write方法即可。一個(gè)有效請(qǐng)求對(duì)應(yīng)一個(gè)線程,客戶端的IO請(qǐng)求都是OS先完成了再通知服務(wù)器應(yīng)用去啟動(dòng)線程進(jìn)行處理。

使用場(chǎng)景

AIO方式使用于連接數(shù)目多且連接比較長(zhǎng)(重操作)的架構(gòu),比如相冊(cè)服務(wù)器,充分調(diào)用OS參與并發(fā)操作,編程比較復(fù)雜,JDK1.7開始支持。

八、總結(jié)從效率上來說,可以簡(jiǎn)單理解為阻塞IO<非阻塞IO<多路復(fù)用IO<信號(hào)驅(qū)動(dòng)IO<異步IO。從同步和異步來說,只有異步IO模型是異步的,其他均為同步。

原文標(biāo)題:一口氣說出5種IO模型的

文章出處:【微信公眾號(hào):硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11292

    瀏覽量

    209323
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7604

    瀏覽量

    136684
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4327

    瀏覽量

    62569

原文標(biāo)題:一口氣說出5種IO模型的

文章出處:【微信號(hào):mcu168,微信公眾號(hào):硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    常見的PCB表面處理技術(shù)

    PCB(印刷電路板)的表面處理技術(shù)對(duì)于保證電路板的焊接性能、電氣連接可靠性以及耐腐蝕性具有重要意義,不同的表面處理技術(shù)適用于不同的應(yīng)用場(chǎng)景和性能要求。本文將帶您詳細(xì)了解常見的PCB表面處理技術(shù)。
    的頭像 發(fā)表于 12-11 09:17 ?252次閱讀

    解讀Linux 5IO模型

    Linux里有IO模型:阻塞IO、非阻塞IO、多路復(fù)用I
    的頭像 發(fā)表于 11-09 11:12 ?306次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>解讀Linux 5<b class='flag-5'>種</b><b class='flag-5'>IO</b><b class='flag-5'>模型</b>

    晶閘管導(dǎo)通的情況

    晶閘管作為一種重要的電力電子器件,其導(dǎo)通狀態(tài)受多種因素影響。以下是晶閘管導(dǎo)通的詳細(xì)情況,每種情況都結(jié)合了晶閘管的工作原理、結(jié)構(gòu)特性及外部條件進(jìn)行闡述。
    的頭像 發(fā)表于 08-27 16:25 ?1888次閱讀

    【附實(shí)操視頻】聆思CSK6大模型開發(fā)板接入國(guó)內(nèi)主流大模型(星火大模型、言、豆包、kimi、智譜glm、通義千問)

    輸出的結(jié)果進(jìn)行語音合成實(shí)現(xiàn)端側(cè)播報(bào)。 目前已經(jīng)接通言、豆包、kimi、智譜glm、通義千問等國(guó)內(nèi)主流大模型,詳細(xì)模板和操作步驟可以參考附件文檔。
    發(fā)表于 08-22 10:12

    想要了解下大模型知識(shí)

    工作需要,想要了解下大模型算力建設(shè)知識(shí)。
    發(fā)表于 08-20 15:31

    了解MySQL索引機(jī)制

    的呢?起靜下心來,耐心看完這篇文章吧,干貨不啰嗦,相信你定會(huì)有所收獲。 、索引模型 模型也就是數(shù)據(jù)結(jié)構(gòu),常見的三
    的頭像 發(fā)表于 07-25 14:05 ?283次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>了解</b>MySQL索引機(jī)制

    體式IO與分布式IO:工業(yè)控制系統(tǒng)的兩架構(gòu)

    受到青睞。然而,體式IO架構(gòu)在小型系統(tǒng)中仍然有著廣泛的應(yīng)用。了解這兩架構(gòu)的特點(diǎn)和區(qū)別,有助于工程師和決策者為企業(yè)選擇最合適的工業(yè)控制系統(tǒng)解決方案。
    的頭像 發(fā)表于 07-17 16:12 ?1020次閱讀
    <b class='flag-5'>一</b>體式<b class='flag-5'>IO</b>與分布式<b class='flag-5'>IO</b>:工業(yè)控制系統(tǒng)的兩<b class='flag-5'>種</b>架構(gòu)

    波特模型和swot分析的區(qū)別

    。。 、波特模型概述 波特模型(Porter's Five Forces Model)是由美國(guó)著名管理學(xué)家邁克爾·波特(Micha
    的頭像 發(fā)表于 07-05 14:39 ?4484次閱讀

    什么是波特模型,如何應(yīng)用

    波特模型(Porter's Five Forces Model)是邁克爾·波特(Michael E. Porter)于1979年提出的,用于分析行業(yè)競(jìng)爭(zhēng)狀況和企業(yè)競(jìng)爭(zhēng)戰(zhàn)略的一種理論模型
    的頭像 發(fā)表于 07-05 14:36 ?2089次閱讀

    簡(jiǎn)述使用波特模型的三個(gè)步驟

    企業(yè)了解行業(yè)的競(jìng)爭(zhēng)環(huán)境,從而制定相應(yīng)的競(jìng)爭(zhēng)策略。以下是使用波特模型的三個(gè)步驟。 第步:識(shí)別行業(yè) 在使用波特
    的頭像 發(fā)表于 07-05 14:34 ?832次閱讀

    帶你詳細(xì)了解工業(yè)電腦

    扇設(shè)計(jì)、承受振動(dòng)和惡劣環(huán)境的能力、輕松配置、全面的I/O選項(xiàng)、延長(zhǎng)生命周期、耐用的組件。了解如何為您的應(yīng)用選擇工業(yè)電腦對(duì)提高設(shè)施的生產(chǎn)力和效率至關(guān)重要。詳細(xì)了解
    的頭像 發(fā)表于 06-12 14:24 ?401次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>帶你<b class='flag-5'>詳細(xì)了解</b>工業(yè)電腦

    pcb應(yīng)變測(cè)試有多重要?了解!

    pcb應(yīng)變測(cè)試有多重要?了解!
    的頭像 發(fā)表于 02-24 16:26 ?1078次閱讀

    EtherCAT IO的接線方法和流程是怎樣的?

    (例如傳感器和執(zhí)行器)的接線和配置過程。 、EtherCAT IO的基本概念 在詳細(xì)討論具體的接線方法和流程之前,我們首先需要了解EtherCAT
    的頭像 發(fā)表于 02-02 16:57 ?1996次閱讀

    虹科技術(shù)丨詳解IO-Link Wireless技術(shù)如何影響工業(yè)無線自動(dòng)化

    在工業(yè)無線自動(dòng)化的飛速發(fā)展進(jìn)程中,IO-Link Wireless技術(shù)成為了項(xiàng)具有顛覆性的創(chuàng)新。它將IO-Link協(xié)議與無線連接完美結(jié)合,解決了傳統(tǒng)通信技術(shù)在工業(yè)應(yīng)用中的痛點(diǎn)。本文將深入解析
    的頭像 發(fā)表于 02-02 09:52 ?444次閱讀
    虹科技術(shù)丨<b class='flag-5'>一</b><b class='flag-5'>文</b>詳解<b class='flag-5'>IO</b>-Link Wireless技術(shù)如何影響工業(yè)無線自動(dòng)化

    帶您詳細(xì)了解IEEE802.3bt(PoE++)的有關(guān)特點(diǎn)

    Hqst華強(qiáng)盛(盈盛電子)導(dǎo)讀:帶您詳細(xì)了解IEEE802.3bt(PoE++)的有關(guān)特點(diǎn),讓我們對(duì)IEEE802.3bt(PoE++)協(xié)議有更具體的了解
    的頭像 發(fā)表于 01-04 11:26 ?2157次閱讀
    帶您<b class='flag-5'>一</b>起<b class='flag-5'>詳細(xì)了解</b>IEEE802.3bt(PoE++)的有關(guān)特點(diǎn)
    RM新时代网站-首页