程序通訊方式

2021-07-22 21:05:03 字數 689 閱讀 8443

unix中有如下的通訊方式:

1) 檔案和記錄鎖定。

為避免兩個程序間同時要求訪問同一共享資源而引起訪問和操作的混亂,在程序對

共享資源進行訪問前必須對其進行鎖定,該程序訪問完後再釋放。這是unix為共享

資源提供的互斥性保障。

2 )管道。

管道一般用於兩個不同程序之間的通訊。當乙個程序建立乙個管道,並呼叫fork創

建自己的乙個子程序後,父程序關閉讀管道端,子程序關閉寫管道端,這樣 提供了

兩個程序之間資料流動的一種方式。

3 ) fifo 。

fifo是一種先進先出的佇列。它類似於乙個管道,只允許資料的單向流動。每個

fifo都有乙個名字,允許不相關的程序訪問同乙個fifo。因此也成為命名管。

4)訊息佇列。

unix下不同程序之間可實現共享資源的一種機制;unix允許不同程序將格式化的數

據流以訊息形式傳送給任意

程序。對訊息佇列具有操作許可權的程序都可以使用msget完成對訊息佇列的操作控制

。通過使用訊息型別,程序可以按任何順序讀訊息,或為訊息安排優先順序順序。

5 )訊號燈。

作為程序間通訊的一種方法,它不是用於交換大批資料,而用於多程序之間的同步

(協調對共享儲存段的訪問)。

6 )共享記憶體。

通過訊號燈實現儲存共享(類似「紅燈停、綠燈行」)

程序通訊方式 與 執行緒通訊方式

程序通訊方式 與 執行緒通訊方式 程序通訊方式 7種 管道pipe 管道是一種半雙工的通訊方式,資料只能單向流動,而且只能在具有親緣關係的程序間使用。程序的親緣關係通常是指父子程序關係。命名管道fifo 有名管道也是半雙工的通訊方式,但是它允許無親緣關係程序間的通訊。訊息佇列messagequeue...

程序間通訊方式

謝謝作者 用於程序間通訊 ipc 的四種不同技術 共享記憶體,臨界區,管道,訊息 1.訊息傳遞 管道,fifo,posix和system v訊息佇列 2.同步 互斥鎖,條件變數,讀寫鎖,檔案和記錄鎖,posix和system v訊號燈 3.共享記憶體區 匿名共享記憶體區,有名posix共享記憶體區,...

程序的通訊方式

管道 pipe 管道是一種半雙工的通訊方式,資料只能單向流動,而且只能在具有親緣關係的程序間使用。程序的親緣關係通常是指父子程序關係。有名管道 named pipe 有名管道也是半雙工的通訊方式,但是它允許無親緣關係程序間的通訊。訊號量 semophore 訊號量是乙個計數器,可以用來控制多個程序對...