1.管道模型通訊
管道模型與軟件生命周期模型——瀑布模型(Waterfall Model)很相似。所謂的瀑布模型,其實就是將整個軟件開發(fā)過程分成多個階段,往往是上一個階段完全做完,才將輸出結果交給下一個階段。從管道的這個名稱可以看出來,管道是一種單向傳輸數(shù)據(jù)的機制,它其實是一段緩存,里面的數(shù)據(jù)只能從一端寫入,從另一端讀出。如果想互相通信,我們需要創(chuàng)建兩個管道才行。
管道又可以分為:匿名管道和命名管道。
一方面,我們能夠看到,管道里面的內(nèi)容被讀取出來,打印到了終端上;另一方面,echo 那個命令正常退出了,也即交接完畢,前一個項目組就完成了使命,可以解散了。管道通信,我們可以看出,瀑布模型的開發(fā)流程效率比較低下,因為團隊之間無法頻繁地溝通。而且,管道的使用模式,也不適合進程間頻繁的交換數(shù)據(jù)。
2.消息隊列
消息隊列可以理解為發(fā)郵件,每一封郵件都視為一個獨立的數(shù)據(jù)單元,也就是消息體,每個消息體都是固定大小的存儲塊,在字節(jié)流上不連續(xù)。
3.共享內(nèi)存
每個進程都有自己獨立的虛擬內(nèi)存空間,不同的進程的虛擬內(nèi)存空間映射到不同的物理內(nèi)存中去。這個進程訪問 A 地址和另一個進程訪問 A 地址,其實訪問的是不同的物理內(nèi)存地址,對于數(shù)據(jù)的增刪查改互不影響。
4.信號
信號可以在任何時候發(fā)送給某一進程,進程需要為這個信號配置信號處理函數(shù)。當某個信號發(fā)生的時候,就默認執(zhí)行這個函數(shù)就可以了。這就相當于咱們運維一個系統(tǒng)應急手冊,當遇到什么情況,做什么事情,都事先準備好,出了事情照著做就可以了。
審核編輯:湯梓紅
-
嵌入式
+關注
關注
5093文章
19178瀏覽量
307709 -
進程
+關注
關注
0文章
204瀏覽量
13996 -
通訊方式
+關注
關注
0文章
9瀏覽量
2192
發(fā)布評論請先 登錄
相關推薦
深入解析Linux程序與進程
![深入解析Linux程序與<b class='flag-5'>進程</b>](https://file1.elecfans.com/web3/M00/02/C5/wKgZPGdiO2SAYKPeAAAi38nFzDs009.png)
機智云智能家居網(wǎng)關方案的組網(wǎng)方式與通訊協(xié)議解析
![機智云智能家居網(wǎng)關方案的組網(wǎng)<b class='flag-5'>方式</b>與<b class='flag-5'>通訊</b>協(xié)議解析](https://file.elecfans.com/web2/M00/40/03/pYYBAGJrSWqAb-nSAAAXmKtCFeo833.jpg)
機智云智能家居網(wǎng)關方案的組網(wǎng)方式與通訊協(xié)議解析
一文搞懂Linux進程的睡眠和喚醒
Python中多線程和多進程的區(qū)別
![Python中多線程和多<b class='flag-5'>進程</b>的區(qū)別](https://file1.elecfans.com/web2/M00/0A/EF/wKgaomcYcmaAS08XAAAsH7JtzO0544.png)
PLC多種通訊方式匯總學習~
![PLC多種<b class='flag-5'>通訊</b><b class='flag-5'>方式</b>匯總學習~](https://file1.elecfans.com//web2/M00/07/D9/wKgZombzYsqATy8iAAAUdBPX6Gc25.jpeg)
三菱PLC有哪些通訊方式
鴻蒙開發(fā):【進程模型】
![鴻蒙開發(fā):【<b class='flag-5'>進程</b>模型】](https://file1.elecfans.com/web2/M00/ED/FA/wKgaomZplvCAGCyTAAII3Jd9LPk312.jpg)
評論