進程間通信
如果兩個進程,想要知道對方在干嘛,或者進行協調運行,就需要進程間通信。下面介紹一下常見的進程間通信方式。
無名管道: 管道是一種半雙工的通信方式。數據只能單向流動,而且只能在,具有親緣關系的進程間使用。進程間的親緣關系,通常指父子進程關系。
有名管道: 有名管道也是,半雙工的通信方式,但是它允許無親緣關系進程間的通信。
消息隊列:消息隊列是有消息的鏈表,存放在內核中,并由消息隊列標識符標識。它克服了信號傳遞信息少,管道只能承載無格式字符流以及緩沖區大小受限等特點。
信號量: 是一個計數器,可以用來控制多個進程對共享內存的訪問。它作為一種鎖機制,防止某個進程,正在訪問共享資源的時候,其他進程也訪問該資源,造成資源搶占。
信號: 一種較復雜的通信方式,用于通知和接收進程某個事件的發生。
共享內存: 是映射一段能被其他進程所訪問的內存,這段共享內存由一個進程創建,但多個進程都可以訪問。
套接字: 是一種進程間通信機制,與其他通信機制不同的是,它可用于 不同機器間的進程通信。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
通信
+關注
關注
18文章
6070瀏覽量
136419 -
操作系統
+關注
關注
37文章
6892瀏覽量
123739 -
進程
+關注
關注
0文章
204瀏覽量
13995
發布評論請先 登錄
相關推薦
進程間通信之Linux下進程間通信概述
在上一章中,讀者已經知道了進程是一個程序的一次執行。這里所說的進程一般是指運行在用戶態的進程,而由于處于用戶態的不同進程之間是彼此隔離的,就像處于不同城市的人們,它們必須通過某種
發表于 10-18 16:21
?0次下載
Linux進程間通信方式——管道
管道是Linux中進程間通信的一種方式,它把一個程序的輸出直接連接到另一個程序的輸入。Linux的管道主要包括兩種:無名管道和有名管道。
發表于 06-01 09:13
?1482次閱讀
Linux進程間的五種通信方式介紹 3
進程間通信(IPC,InterProcess Communication)是指在不同進程之間傳播或交換信息。IPC的方式通常有管道(包括無名
Linux進程間的五種通信方式介紹 4
進程間通信(IPC,InterProcess Communication)是指在不同進程之間傳播或交換信息。IPC的方式通常有管道(包括無名
Linux進程間的五種通信方式介紹 6
進程間通信(IPC,InterProcess Communication)是指在不同進程之間傳播或交換信息。IPC的方式通常有管道(包括無名
Linux進程間的五種通信方式介紹 5
進程間通信(IPC,InterProcess Communication)是指在不同進程之間傳播或交換信息。IPC的方式通常有管道(包括無名
評論