[發明專利]一種KUX系統下基于數據管道的進程間通訊的實現方法在審
| 申請號: | 201410686530.6 | 申請日: | 2014-11-26 |
| 公開(公告)號: | CN104375900A | 公開(公告)日: | 2015-02-25 |
| 發明(設計)人: | 吳丹宇 | 申請(專利權)人: | 浪潮電子信息產業股份有限公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54 |
| 代理公司: | 濟南信達專利事務所有限公司 37100 | 代理人: | 姜明 |
| 地址: | 250101 山東*** | 國省代碼: | 山東;37 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 kux 系統 基于 數據 管道 進程 通訊 實現 方法 | ||
技術領域
本發明涉及UNIX以及KUX的操作系統領域中的進程間通訊方式,在?KUX?應用開發中會遇到進程間通訊的需求,進程間通訊的方法有很多,例如通過共享內存、信號量、內存映射文件、數據管道、文件、Socket?等等。這里介紹的一種通過數據管道和系統標準輸入輸出文件描述符相結合的方式來實現進程間通訊和數據交互。?
背景技術
匿名管道:管道是進程間協同工作的一種方式,單獨構成一種獨立的文件系統,管道是半雙工的。而匿名管道數據只能向一個方向流動,雙方通信時,需要建立起兩個管道;只能用于父子進程或者兄弟進程之間(具有親緣關系的進程)。
文件指針與管道:當我們要讀寫一個文件,需要用到文件指針,它是一個指向結構體的指針。我們對管道進行讀寫操作時也需要用到文件指針,通過文件指針來對管道一端進行寫,而另一端的進程則通過文件指針進行讀。如果文件指針指向的是標準輸入,那么該進程則是從標準輸入中讀取數據,通過匿名管道實現進程間通訊:通信場景如下:現在有兩個進程?A、進程?B(是進程?A?的子進程),進程?A?從數據庫中讀取一條待處理數據?M,數據?M?中存儲了進程?A?需要調用的可執行程序名稱及需要傳遞給可執行程序的參數。參數很多,并且參數長度及個數以及類型都是變化的。
發明內容
本文利用文件指針進行匿名管道的讀寫操作,不采取參數傳遞方法,而采用了匿名管道進程間通信方法。
對于本發明,使用了匿名管道方式,來實現進程間的通訊。通過數據管道和系統標準輸入輸出文件描述符相結合的方式來實現進程間通訊和數據交互。
本發明提供一種KUX系統下基于數據管道的進程間通訊的實現方法,解決KUX系統下具有親緣關系的進程之間的通信的實現方法。主要分為以下五個模塊:進程管理模塊(1)、數據管道模塊(2)、通訊控制模塊(3)、文件管理模塊(4)、異常處理模塊(5)。
進程管理模塊(1)是通訊實現方法的進程管理模塊,其主要目的是對通訊前提進行定義,比如兩個進程間通訊的相關性。
數據管道模塊(2)是通訊實現方法的核心模塊,其主要目的是通過匿名管道通訊實現數據傳遞和通訊的管道設置。
通訊控制模塊(3)是對整體通訊方法的控制模塊,其主要目的是對通訊中的進程、傳遞方式、通訊模式等進行有效的管理。
文件管理模塊(4)是對通訊內容的一個管理模塊,其主要目的是對數據傳遞的內容進行有效的管理。
異常處理模塊(5)是進程通訊方法中出現的異常進行處理的模塊,其主要目的是對異常通信情況進行分析和處理。
進程通訊的步驟如下:
第一步、調用進程管理模塊對需要通訊的進程進行管理和調度,實現對具有親緣關系的進程有效的管理。
第二步、通訊控制模塊通過調用數據管道模塊,來進行通訊方式和傳遞方式的管理和調度,這里的數據管道的選擇也是通過通訊控制模塊來進行管理的。
第三步、文件管理模塊根據進程需要通訊的數據進行文件化處理,實現系統間通信的標準輸入輸出文件的設置。
第四步、進程間進行通訊,以及數據傳遞。期間調用異常處理模塊,對進程通訊過程中出現的異常情況進行有效的分析和管理。
第五步、通訊結束,關閉所有方法模塊。
本發明有益的效果是:通過基于數據管道在KUX進程通訊的實現方法,實現了通過數據管道和系統標準輸入輸出文件描述符相結合的方式來實現進程間通訊和數據交互的進程通訊方式,可以對KUX中的具有親緣關系的進程進行有效的通訊和數據文件的有效傳遞。通過基于數據管道的技術,提高了數據在傳遞中的安全性和準確性,對于進程間的通訊模式,也是一個顛覆性的創新。除此之外,本發明在實現過程中采用了模塊化的設計思想,對功能進行了有效的拆分,提高了通訊方法在以后的功能可擴展性。對于本發明,重點對進程通訊過程中的異常分析和處理也做了相應的解決方案,可以對出現的異常進行有效的分析和處理,在KUX進程通訊方面,具有非常廣闊的方展前景。
附圖說明
附圖1?數據管道通信原理圖。
附圖2?進行通訊方法的工作流程圖。
具體實施方式
下面參照附圖,對本發明的內容以一個具體實例來描述實現這一體系結構的過程。
正如發明內容中所描述的,通過基于數據管道在KUX進程通訊的實現方法,主要有進程管理模塊(1)、數據管道模塊(2)、通訊控制模塊(3)、文件管理模塊(4)、異常處理模塊(5)五個模塊構成。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浪潮電子信息產業股份有限公司,未經浪潮電子信息產業股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410686530.6/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





