系統集成中進程間通信技術的運用

前言:尋找寫作靈感?中文期刊網用心挑選的系統集成中進程間通信技術的運用,希望能為您的閱讀和創作帶來靈感,歡迎大家閱讀并分享。

系統集成中進程間通信技術的運用

【摘要】本文主要以系統集成為對象,介紹了進程間通信這一技術的特點,并對該技術的應用方式加以說明,以期對未來行業發展有一定借鑒。

【關鍵詞】系統集成;進程間通信;應用

1引言

目前部分復雜產品領域例如汽車以及航空航天,傳統建模技術在外形設計時無法完全滿足設計使用要求。這就要求我們采用更新更先進的技術。進程間通信這一技術采用曲面造型的方式,該方式執行效率較高,同時數值穩定,將其應用在系統集成領域能夠較好地實現數據模塊通信及傳遞的作用。

2簡述

Windows系統進程Windows系統的進程能夠執行程序命令同時創建相關程序,進程在執行與創建程序的過程能夠出現進程句柄,關于進程句柄,其實質是實例化的句柄,進程間通信這一技術即是指操作系統借助實例化的句柄于其他程序進行信息與數據的交換這一過程。

2.1簡述進程定義

對于進程而言,一次程序執行的過程就叫做進程。對操作系統進行管理,然后開始程序運行就出現了進程,進程會與已制定的條件下進行程序的開始與結束。換言之程序就是進程靜態的描述,對操作系統進行管理則進程被啟動,開始運行,然后一定條件下進程中止或者結束。運行進程時需要一定量計算機設備資源例如處理器或內存或者外部設備,所以進程可以被看作操作系統基本的調度單位。執行一個普通程序,就相當于一個新的進程產生,當程序執行完畢,相應進程就隨之結束消亡。對于程序而言,其實質是一段靜態的代碼,是系統應用執行時所用的藍本,需要借助相關計算機設備資源如內存或處理器來實現,因此可以把計算機看作操作系統數據調度的資源。也就是說,進程可以看成程序動態執行的一次過程。應用執行藍本所需的程序可以多次被加載至系不同系統內存區域然后產生不同的進程。程序并行中多個進程在一開始不一定會同時出現然后一直維持直至整個程序消亡結束,而是能夠根據需要智能化動態性產生與消亡。也就是說,進程運行過程可以生成多個進程,新生進程也能夠生成全新進程,循環往復。子進程在誕生時所需資源全部由父系進程提供,進程之間的不同的運行規律能夠相互獨立。異種進程互相獨立,在同一個內存空間交錯運行,這是與“線程”所不同之處。相同進程又可以分解成若干個線程,線程之間可以在邏輯上同時運行。然而,線程之間共存同一個內存空間,線程之間無需介入操作系統即可自行調度,這一特點大大減小系統資源使用,同時也使效率得到提升。

2.2簡述進程存儲

對于Windows信息操作系統而言,其系統進程都存在變量,當程序啟動時,變量就隨之會進行啟動,程序使用時自動載入到程序的基地址。但是程序被分配到的地址實質是一個虛擬地址,而不是真正的物理地址,同時操作系統被分配到的地址其范圍只存在一個,因此訪問系統存儲空間時需要分配相關物理地址,我們將這類方式稱為映射。Windows信息操作系統可以不停在系統內存空間內映射出虛擬存儲的空間,而此過程可以借助索引表來實現虛擬地址與物理地址之間的轉換,使之變為真實物理地址,在此過程中程序地址無變化發生。由于程序中所示地址直接指向于間接地址,而不是指向物理存儲器。因此進程可以借助虛擬信息存儲器達到地址之間互不干擾,若是有多個進程一起運行,不同進程之間不相關,使得進程沖突進一步出現降低,也使得覆蓋率有所降低。

2.3簡述

Windows相關進程創建目前系統主要是保證多個任務間不影響獨立性,若是Windows的各系統模塊之間單獨分開執行時,需要借助多進程。此時創建進程需要采用系統提供的函數。此時系統所創建新生進程將完全獨立在調用進程之外。然而采用函數成功創建進程時,新生進程所生成相關句柄與ID能夠通過一定結構返回,然后通過相關進程句柄得到新建進程控制權。若要終止進程可以調用相關函數,此類函數能夠終止進程所有附屬運行的DLL以及線程。

2.4簡述進程間通信技術

目前Windows共提供以下進程間通信的方式,有RPC信息遠程調用過程,Pipe信息管道,文件映射,網絡信息套接字以及ATA信息系統等。其中Pipe信息管道的使用可以在進程間相互通信,該技術是指以內存為基礎的高層信息通信系統,該技術數據信息保存文件主要按照先進后出形式開展,管道信息通信過程中,實現同步進程需要按照系統讀寫相關操作進行。想要默認的背景下將程序寫入滿載管道之中,會因系統自動的阻塞程序而失敗,直到信息管道完全接受數據為止。若是進程寫進空管道中,此時進程能夠自動的阻塞,直到管道可以讀取數據。若是進程打開信息管道方式是只讀方式,將不能通過寫的方式進行,此時也會導致進程出現阻塞。我們常用管道信息技術主要有請求響應與消息隊列及訂閱和廣播組播形式。其中對話為支持客戶與服務組件持續的實時通信。此外請求響應能夠支持系統客戶端與服務器之間持續的同步交涉。對于消息隊列而言,能夠支持應用持續的異步通信。至于訂閱則支持信息異步傳送。最后廣播組播則是支持相同進程傳送信息到多組進程中。該管道技術分2類。其中匿名Pipe將句柄而非名字作為標識,這限制其只能于同一機器進行通信,但是不能用于網絡。作為Pipe技術能夠做到單向通信與雙向通信。我們通常將進程間通信劃分成進程間本地通信與遠程通信兩種,其中,遠程通信涉及到主機間相關進程通信。對于系統而言,常見進程間本地通信技術涵蓋信號,內存與管道以及消息隊列。信號量控制多個進程對共享資源的訪問。共享資源有兩類:互斥性共享資源,即任一時刻內只有一個進程能夠訪問。同步性共享資源,即同一時刻內可以有多個進程進行該資源訪問。此外,信號是一種進程之間相互通信的機制,能夠提供一種異步事件處理方法。對于異步事件而言,具有隨機性,在事件出現時,將信號發送至相關進程,然后進程會按預先的設定進行處理。信號操作有信號處理,阻塞及發送三方面。另外,共享內存屬于子系統進程間通信的機制,能夠最高效進行通信,共享內存利用兩個及兩個以上的進程共享一個內存區域,以此實現進程之間相互通信。一般由一項進程來開辟共享內存的區域,其他進程隨之直接將內存映射至各自的進程空間,最后開始數據讀寫。然而共享內存的不足在于多個進程訪問同一內存區域權限相同,使各進程間確定同步問題變得困難。但是可以借助信號量處理同步問題。目前共享內存的主要操作是創建打開共享內存等。

3簡述進程間通信這一技術應用于系統集成

3.1簡述系統集成相關中介程序

目前曲面造型這一系統理論較為先進。其算法模型以C++為平臺進行代碼修改及代碼編譯,通過字符命令運行模塊,該算法參數可以修改,將模塊集成于曲面造型信息系統,能夠有效地提升系統圖像界面。將指令借助界面程序加入后臺算法的模塊中,再釋放命令,使執行結果在自由圖像及系統圖像的窗口顯示,然后在終端的控制臺傳輸反饋信息。系統集成的過程中需要解決這個問題即如何把對話框的參數與菜單命令完美傳送至控制臺的程序中。由于程序無控制臺的標準輸入與輸出接口,使得將GUI的系統菜單命令及對話框的參數發送給控制臺的程序成為一個難點。研究發現控制臺的程序可以利用另一個相關控制臺的程序調用來完成輸入與輸出信息的重定向,基于這一特點完美編寫相關中介程序。該程序借助系統調用相關函數,可以同時創建完成子進程即細分理論的算法模塊及信息輸入與輸出的重定向工作。圖1是中介程序流程圖。中介程序通過借助細分算法的模塊程序來定向程序輸入的接口,工作界面程序使中介程序由后臺進程啟動,借助信息管道對信息界面的程序進行操作及鍵盤鼠標的信息輸入即時傳遞到中介程序,然后中介程序將信息傳遞到已重定向后臺模塊系統中,然后在界面信息的提示面板處識別中介程序相應信息到反饋文件后反饋的操作信息,以此實現與后臺算法的模塊間人機交互。利用后臺進程能夠保證信息由工作界面經過中介程再到核心的程序不會影響進行的操作。圖2是系統數據模塊結構圖。

3.2對于進程間通信這一技術應用的實例

通常代碼要實現需要借助View數據命令,此時界面按鈕主要的目的是將點擊的幾何模型顯示于圖像窗口,因此代碼編寫的過程中,對消息提示的面板信息會從文件的反饋信息中讀取,同時顯示相關信息,并反饋信息同時發送指令。該技術使用過程借助中介程序在細分算的模塊中實現擴展功能,執行優化效率指令,此時命令關鍵字詞無變化。

4結束語

對于進程間通信這一技術,利用多進程控制系統與管道及共享內存技術,有效解決控制臺相關程序模塊增加的現象。使得該技術應用實時性與可擴展性較好,系統集成與擴充較為容易。對于諸多領域有著不錯的效果。

參考文獻

[1]袁鴻,劉浩,廖文和.進程間通信技術在系統集成中的應用[J].重慶大學學報自然科學版,2008(4):436~441.

[2]馬驍,王博.基于統一通信的移動現場作業集成關鍵技術研究[J].通訊世界,2017(3):79~81.

[3]孫赫勇,陳元龍,孫華.基于企業服務總線的信息系統高效集成方法技術研究[J].鐵路計算機應用,2017(3):30~32.

[4]梁金千,管曉宏.基于進程的訪問控制模型[J].計算機工程,2007(2):25~27.

[5]鄭培余,姚紹文.一種基于進程外窗口掛鉤回調的軟件集成方法[J].計算機應用,2004(5):109~112.

作者:付騰 單位:中睿通信規劃設計有限公司

亚洲精品一二三区-久久