linux程序通訊(ipc)

2021-05-26 21:02:05 字數 544 閱讀 6889

1、  管道(半雙工管道是最常用的ipc)

只能在有關係的程序間才能使用,shell上常用

2、  命名管道

在檔案系統中命名管道式以特殊檔案的形式存在的。不在同一程序組的兩個程序通訊可以使用命名管道。

3、  訊息佇列

核心空間中的內部鍊錶,通過linux核心在各個程序之間傳遞內容

4、  訊號

用於在乙個或多個程序間傳遞非同步訊號。

linux系統中定義了一系列的訊號,這些訊號可以由核心產生,也可以由系統中其他程序產生,只要這些程序有足夠的許可權。

程序可以遮蔽掉大多數的訊號,除了sigstop與sickill

5、  訊號量

訊號量是一種計數器,用來控制對多個程序共享的資源所進行的訪問。常被用作乙個鎖機制,在某個程序正在對待特定資源進行操作時,訊號量可以防止另乙個程序去訪問它。生產者和消費者的模型是訊號量的典型使用。

6、  共享記憶體(最快的一種)

多個程序之間共享記憶體區域的一種程序間的通訊方式,他是在多個程序之間對記憶體段進行對映的方式實現記憶體共享

7、  套接字

Linux程序 程序間通訊IPC

一 linux程序 1 程序的記憶體映像 2 解釋 bss段 在採用段式記憶體管理的架構中,bss段 bss segment 通常是指用來存放程式中未初始化的全域性變數的一塊記憶體區域。bss是英文block started by symbol的簡稱。bss段屬於靜態記憶體分配。資料段 在採用段式記...

Linux程序間通訊 IPC

linux下的程序通訊手段基本上是從unix平台上的程序通訊手段繼承而來的。而對unix發展做出重大貢獻的兩大主力at t的貝爾實驗室及bsd 加州大學伯克利分校的伯克利軟體發布中心 在程序間通訊方面的側重點有所不同。前者對unix早期的程序間通訊手段進行了系統的改進和擴充,形成了 system v...

Linux程序間通訊(IPC)

程序通訊有例如以下一些目的 a 傳輸資料 乙個程序須要將它的資料傳送給還有乙個程序。傳送的資料量在乙個位元組到幾m位元組之間 b 共享資料 多個程序想要操作共享資料。乙個程序對共享資料的改動,別的程序應該立馬看到。c 通知事件 乙個程序須要向還有乙個或一組程序傳送訊息。通知它 它們 發生了某種事件 ...