epoll實現(xiàn)原理 epoll水平觸發(fā)和邊緣觸發(fā)的區(qū)別?
epoll水平觸發(fā)和邊緣觸發(fā)的區(qū)別?1. 使用水平觸發(fā)器可以在沒有epoll時降級選擇2。水平觸發(fā)器對于應(yīng)用程序更簡單,更適合HTTP請求-響應(yīng)模式。(讀取后寫入,不管寫入狀態(tài)如何)觸發(fā):當(dāng)受監(jiān)視的文
epoll水平觸發(fā)和邊緣觸發(fā)的區(qū)別?
1. 使用水平觸發(fā)器可以在沒有epoll時降級選擇
2。水平觸發(fā)器對于應(yīng)用程序更簡單,更適合HTTP請求-響應(yīng)模式。(讀取后寫入,不管寫入狀態(tài)如何)觸發(fā):當(dāng)受監(jiān)視的文件描述符上發(fā)生讀寫事件時,epoll Wait()通知處理程序進(jìn)行讀寫操作。如果這次沒有完全讀寫數(shù)據(jù)(例如,讀寫緩沖區(qū)太?。?,下次使用epoll()時,它不會通知您,即只通知您一次,直到第二個讀寫事件出現(xiàn)在文件描述符上才通知您
!這種模式比水平觸發(fā)器更有效,而且系統(tǒng)不會充滿你不關(guān)心的現(xiàn)成文件描述符
!阻塞IO:讀取阻塞的文件描述符時,如果文件描述符上沒有可讀取的數(shù)據(jù),它將阻塞,直到數(shù)據(jù)可讀為止。寫入被阻止的文件描述符時,如果文件描述符上沒有空間(通常是緩沖區(qū))可供寫入,
水平觸發(fā)和邊緣觸發(fā)的區(qū)別?
1。當(dāng)沒有epoll時,使用水平觸發(fā)器可以降級到選擇2。水平觸發(fā)器對于應(yīng)用程序更簡單,并且更適合HTTP請求-響應(yīng)模式。
(讀取后寫入,無論寫入狀態(tài)如何)
邊沿觸發(fā)方式和脈沖觸發(fā)方式有什么區(qū)別?
在保持高電平或低電平期間觸發(fā)電平觸發(fā)器。
邊緣觸發(fā)器從高到低或從低到高觸發(fā)。
2、觸發(fā)邏輯不同:
電平觸發(fā),即只有在高電平或低電平時,才做指定的動作,即0、1的邏輯觸發(fā)。
邊緣觸發(fā)器是脈沖突變觸發(fā)器,這意味著有高電平到低電平轉(zhuǎn)換,或翻轉(zhuǎn)轉(zhuǎn)換。此轉(zhuǎn)換過程觸發(fā)一個操作,邏輯上為0-1或1-0。
3、不同的觸發(fā)模式:
邊緣觸發(fā)通常需要很短的時間。邊緣觸發(fā)通常需要我們的水平和快速反應(yīng)。電平觸發(fā)器只需要高或低。沒有時間要求。例如,如果該級別在10秒內(nèi)始終較低,則也會觸發(fā)該級別。
例如中斷計時或計數(shù),最好使用邊沿觸發(fā)器,用電平觸發(fā)器誤差會很大,電平觸發(fā)器一般用于簡單報警,開關(guān)等時間要求不高。
邊緣觸發(fā)器和脈沖觸發(fā)器有什么區(qū)別?
邊緣觸發(fā)器的輸出狀態(tài)(qn1)僅取決于時鐘有效時間的輸入狀態(tài)(↑或↓)和原始輸出狀態(tài)(QN)。除了時鐘的有效瞬間外,輸入輸出都是隔離的,因此具有很強(qiáng)的抗干擾能力,是一種實用的觸發(fā)方式。例如,74ls74雙D觸發(fā)器由時鐘上升沿(↑)觸發(fā);74ls73雙JK觸發(fā)器由時鐘下降沿(↓)觸發(fā)。還有一個特殊的閂鎖,如74ls373 8D閂鎖。在鎖存信號Le的高電平期間,輸出隨輸入而變化,并且Le的下降沿的數(shù)據(jù)被鎖定。脈沖觸發(fā)的主從JK觸發(fā)器不能簡單地通過時鐘下降沿時J和K的狀態(tài)來判斷qn1的狀態(tài)。當(dāng)q=0時,只能設(shè)置為1,當(dāng)q=1時,只能設(shè)置為0。波形表現(xiàn)得更清晰:如圖所示,在高電平時鐘期間,J和K的狀態(tài)會改變有效時間的邏輯關(guān)系。當(dāng)J=k=0時,Q保持不變。從中可以看出,由脈沖觸發(fā)的主從觸發(fā)器容易受到干擾。這不是一個實際的觸發(fā)器。它只是觸發(fā)器發(fā)展歷史的一部分,也就是教材中介紹的觸發(fā)器的原理和結(jié)構(gòu)。其實,不說更好,節(jié)省課時可以學(xué)到更多實用的內(nèi)容。