管道通信的概念
所謂管道,是指用于連接一個(gè)讀進(jìn)程和一個(gè)寫(xiě)進(jìn)程以實(shí)現(xiàn)他們之間的通信的一個(gè)共享文件。
管道通信系統(tǒng)主要由區(qū)段通信、干線通信和移動(dòng)通信三部分組成。
區(qū)段通信:主要指管道各區(qū)段內(nèi)部的通信。每個(gè)區(qū)段的通信系統(tǒng)不僅要滿足本區(qū)段的通信需要,而且也是干線通信網(wǎng)的組成部分。
干線通信:管道運(yùn)輸部門(mén)各級(jí)管理機(jī)構(gòu)之間及其與調(diào)度中心之間的通信。干線通信網(wǎng)一般溝通總部、大區(qū)中心和調(diào)度中心。
移動(dòng)通信:為滿足收集和傳遞管道沿線的各種監(jiān)視信號(hào)的需要,以及為滿足管道維護(hù)工作的需要所使用的超短波或甚高頻 (VHF)無(wú)線電通信系統(tǒng)。
管道通信作用:
1.它可以使互不相關(guān)的兩個(gè)進(jìn)程實(shí)現(xiàn)彼此通信。
2.該管道可以通過(guò)路徑名來(lái)指出,并且在文件系統(tǒng)中是可見(jiàn)的。在建立了管道之后,兩個(gè)進(jìn)程就可以把它當(dāng)作普通文件進(jìn)行讀寫(xiě)操作,使用非常方便。
3.FIFO 嚴(yán)格地遵循先進(jìn)先出規(guī)則,對(duì)管道及 FIFO 的讀總是從開(kāi)始處返回?cái)?shù)據(jù),對(duì)它們的寫(xiě)則把數(shù)據(jù)添加到末尾。
管道特性:不能能在創(chuàng)建時(shí)就確定確定數(shù)據(jù)流向(操作系統(tǒng)無(wú)法確定誰(shuí)讀誰(shuí)寫(xiě)),而是在使用的時(shí)候確定,因此操作系統(tǒng)會(huì)提供兩個(gè)描述符供使用,一個(gè)讀一個(gè)寫(xiě),這樣的確定方向就是將對(duì)應(yīng)的一段關(guān)閉掉即可,這樣方向的控制權(quán)就交給了用戶。
管道通信和共享存儲(chǔ)的區(qū)別
操作系統(tǒng)分為內(nèi)核態(tài)和用戶態(tài),管道就是在內(nèi)核中開(kāi)辟一塊緩沖區(qū),不同的進(jìn)程通過(guò)對(duì)這個(gè)緩沖取進(jìn)行讀寫(xiě)操作實(shí)現(xiàn)IPC。
共享內(nèi)存的最大特性: 最快的進(jìn)程間通信方式。
共享內(nèi)存的本質(zhì)是直接在物理空間上開(kāi)辟的一塊物理內(nèi)存,而非pcb的虛擬內(nèi)存,多個(gè)進(jìn)程可以將自己的虛擬地址映射到這塊內(nèi)存上面從而達(dá)到通信的目的,相比于其他方式,很明顯,這種方式有效的降低了輸入輸出數(shù)據(jù)的拷貝次數(shù),從而降低了效率。
文章綜合動(dòng)植物百科、CSDN、Serendipity_00、code配上格子衫
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論