IPC RPC LPC

進程間通信(IPC,Inter-Process Communication),指至少兩個進程或線程間傳送數據或信號的一些技術或方法。進程是計算機系統分配資源的最小單位。每個進程都有自己的一部分獨立的系統資源,彼此是隔離的。爲了能使不同的進程互相訪問資源並進行協調工作,纔有了進程間通信。這些進程可以運行在同一計算機上或網絡連接的不同計算機上。 進程間通信技術包括消息傳遞、同步、共享內存和遠程過程調用。 IPC是一種標準的Unix通信機制。

 

有兩種類型的進程間通信(IPC)

  本地過程調用(LPC)LPC用在多任務操作系統中,使得同時運行的任務能互相會話。這些任務共享內存空間使任務同步和互相發送信息。

  遠程過程調用(RPC)RPC類似於LPC,只是在網上工作。RPC開始是出現在Sun微系統公司和HP公司的運行UNIX操作系統的計算機中。

  通過IPC和RPC,程序能利用其它程序或計算機處理的進程。客戶機/服務器模式計算把遠程過 程調用與其它技術如消息傳遞一道,作爲系統間通信的一種機制。客戶機執行自己的任務,但靠服務器提供後端文件服務。RPC爲客戶機提供向後端服務器申請服 務的通信機制,如圖R-4所示。如果你把客戶機/服務器應用程序想作是一個分離的程序,服務器能運行數據訪問部分,因爲它離數據最近,客戶機能運行數據表 示和與用戶交互的前端部分。這樣,遠程過程調用可看作是把分割的程序通過網絡重組的部件。LPC有時也稱耦合(Coupling)機制。

  用這種方式分割程序,當用戶要訪問數據時就無需每次拷貝整個數據庫或它的大部分程序到用戶系統。其實,服務器只處理請求,甚至只執行一些數據計算,把得出的結果再發送給用戶。因爲當數據存放在一個地方時,數據庫同步很容易實現,所以多個用戶可同時訪問相同的數據。


IPC:(Inter Process Communication )跨進程通信
這個概念泛指進程之間任何形式的通信行爲,是個可以拿來到處套的術語。它不僅包括各種形式的消息傳遞,還可以指共享資源,以及同步對象[mutex 或者其他類似的東西,即確保安全的併發訪問共享資源(也就是防止兩個或兩個以上的對象同事對同一個數據成員進行修改,從而導致數據被破壞,或者競爭條件下同事讀/寫數據而導致錯誤的情況發生)]的東西。

RPC:(Reomote Procedure Call) 遠程過程調用
特指一種隱藏了過程調用時實際通信細節的IPC方法。客戶端將調用一個本地方法,而這個本地方法則是負責透明的與遠程服務端進行過程間通信。這個本地方法會講相關參數順序打包到一個消息中,然後把這個消息發送給服務端提供的方法,服務端的方法會從消息中解出序列化發出來的參數,然後執行,最後仍以同樣的方式將方法的返回值發送給客戶端。
--------------------- 
轉自:https://blog.csdn.net/u013894427/article/details/82789837

轉自:https://www.cnblogs.com/gsk99/archive/2010/12/13/1904541.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章