两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

Msvl異步通信系統(tǒng)和方法

文檔序號:7973196閱讀:528來源:國知局
專利名稱:Msvl異步通信系統(tǒng)和方法
技術(shù)領(lǐng)域
本發(fā)明屬于系統(tǒng)形式化建模與驗(yàn)證技術(shù)領(lǐng)域,主要涉及用形式化的方法對異步并發(fā)系統(tǒng)進(jìn)行建模與驗(yàn)證,具體是一種基于MSVL的異步通信系統(tǒng)和方法,可用于分布式系統(tǒng)的建模與驗(yàn)證。
背景技術(shù)
時序邏輯作為一種系統(tǒng)建模與驗(yàn)證工具已廣泛應(yīng)用于軟件工程、數(shù)字電路設(shè)計(jì)等領(lǐng)域。時序邏輯主要有三大分支線性時序邏輯(ITL),分支時序邏輯(CTL)以及區(qū)間時序邏輯(ITL)。投影時序邏輯(PTL)對ITL進(jìn)行了擴(kuò)展,時序邏輯語言MSVL是PTL的一個可執(zhí)行子集,是一個集建模(Modeling)、仿真(Simulation)和驗(yàn)證(Verification)為一體的時序邏輯程序設(shè)計(jì)語言,它將系統(tǒng)的建模與性質(zhì)的描述統(tǒng)一于同一邏輯框架內(nèi),通過模型檢測技術(shù)驗(yàn)證系統(tǒng)的性質(zhì)。由于異步并發(fā)系統(tǒng)中各個組件并發(fā)執(zhí)行,并且系統(tǒng)運(yùn)行過程中各個組件之間存在復(fù)雜的交互過程,因此其正確性難以得到保證,MSVL作為一種形式化的工具可以被考慮用于對此類系統(tǒng)進(jìn)行建模與驗(yàn)證,而MSVL缺乏一種有效的異步通信方法,由于異步通信過程復(fù)雜,實(shí)際中還沒有基于MSVL的異步系統(tǒng)方法。在某些時序邏輯語言中已存在異步通信方法,Roger Hale實(shí)現(xiàn)了 Tempura(—種時序邏輯語言)的異步通信方法,該方法基于一個只能容納一個消息的緩沖以及一對通信命令,且通信命令功能較為單一,其建模能力受到一定的限制。ASDL是一種用于Web服務(wù)組合的建模與驗(yàn)證語言,該時序邏輯語言同樣定義了異步通信來實(shí)現(xiàn)不同Web服務(wù)之間的消息傳遞,ASDL中假設(shè)任意兩個Web服務(wù)之間默認(rèn)存在兩個單向通道,且數(shù)量不可擴(kuò)展,同時為了適應(yīng)Web服務(wù)的需求加入了全局時鐘的概念, 并在通信命令中為傳輸?shù)南⒓由蠒r間戳來符合Web服務(wù)組合建模的需求,該語言及其異步通信方法主要是針對Web服務(wù)組合建模與驗(yàn)證而設(shè)計(jì),因此從通用性上來看存在一定的局限性。本發(fā)明項(xiàng)目組對國內(nèi)外專利文獻(xiàn)和公開發(fā)表的期刊論文檢索,再尚未發(fā)現(xiàn)與本發(fā)明密切相關(guān)和一樣的報(bào)道或文獻(xiàn)。

發(fā)明內(nèi)容
下面對本發(fā)明進(jìn)行詳細(xì)說明本發(fā)明是一種MSVL異步通信系統(tǒng),用于對異步并發(fā)系統(tǒng)進(jìn)行建模和驗(yàn)證,異步并發(fā)系統(tǒng)的各個組件分布在不同位置,并且不同組件之間存在某種通信關(guān)系,其特征在于用 MSVL異步通信系統(tǒng)對異步并發(fā)系統(tǒng)進(jìn)行建模,包括有進(jìn)程模塊、通道模塊和通信命令,通過通道模塊連接進(jìn)程模塊,并通過通信命令實(shí)現(xiàn)異步通信過程,進(jìn)程模塊、通道模塊和通信命令都是基于MSVL定義的用MSVL異步通信系統(tǒng)中的進(jìn)程模塊對異步并發(fā)系統(tǒng)組件進(jìn)行建模,設(shè)置有進(jìn)程模塊名、形參和進(jìn)程模塊體,并按名實(shí)行調(diào)用,調(diào)用時用實(shí)參替換形參。進(jìn)程模塊的引入使MSVL程序結(jié)構(gòu)更加清晰,并增加了代碼的重用性,同時,進(jìn)程模塊調(diào)用時可以傳入通道模塊實(shí)參,這種方式使得異步通信的實(shí)現(xiàn)更加靈活。用MSVL異步通信系統(tǒng)中的通道模塊對異步并發(fā)系統(tǒng)組件之間的通信媒介進(jìn)行建模,設(shè)置有通道模塊名和容量大小,通道模塊是一個有容量限制的先進(jìn)先出隊(duì)列,通過通信命令實(shí)現(xiàn)消息的入隊(duì)與出隊(duì),通道模塊在使用前需定義,定義時根據(jù)系統(tǒng)需要指定容量大小,將已定義的通道模塊作為進(jìn)程模塊調(diào)用的實(shí)參來連接進(jìn)程模塊。通信命令以MSVL語句的形式存在于進(jìn)程模塊體中,MSVL通信命令有兩對,分別適用于存在超時機(jī)制和不存在超時機(jī)制的兩類異步通信過程,其中send(C,X)和receive^, y)適用于不存在超時機(jī)制的異步通信,put (c, χ)和get(c,y)適用于存在超時機(jī)制的異步通信。發(fā)送命令語句send (c,χ)和put (c,χ)執(zhí)行時需傳入通道模塊名c以及被傳輸?shù)南ⅵ肿鳛閰?shù),以實(shí)現(xiàn)將消息χ傳入通道模塊c的過程,接收命令語句receive (c,y)和 get(c,y)需傳入通道模塊名c以及保存消息的變量y作為參數(shù),以實(shí)現(xiàn)從通道模塊c接收消息并保存在變量y的過程。本發(fā)明提出了一種基于MSVL的異步通信系統(tǒng),使MSVL具備對異步并發(fā)系統(tǒng)進(jìn)行建模與驗(yàn)證的能力,并克服了以上幾種異步通信方法存在的缺點(diǎn)。因?yàn)楫惒讲l(fā)系統(tǒng)中各個組件存在復(fù)雜的異步通信過程,而MSVL缺乏有效的異步通信方法,因此無法有效地對異步并發(fā)系統(tǒng)進(jìn)行建模與驗(yàn)證,本發(fā)明將異步通信方法引入到MSVL中,以實(shí)現(xiàn)MSVL對異步并發(fā)系統(tǒng)建模與驗(yàn)證,該方法定義了進(jìn)程模塊,通信模塊以及通信命令,通道模塊作為實(shí)參調(diào)用進(jìn)程模塊,進(jìn)程模塊體執(zhí)行通行命令實(shí)現(xiàn)異步通信過程。本發(fā)明還是一種MSVL異步通信方法,其特征在于MSVL異步通信過程按以下流程進(jìn)行步驟1、用MSVL聲明進(jìn)程模塊P1, P2,. . . Pn分別對異步并發(fā)系統(tǒng)的各個組件進(jìn)行建模,對于要進(jìn)行異步通信的進(jìn)程模塊在其進(jìn)程模塊體中需包含相應(yīng)的通信命令語句。步驟2、根據(jù)所建模系統(tǒng)中各個組件之間的連接關(guān)系,用MSVL定義通道模塊C1, C2,...,Cm作為各個組件之間的消息緩沖,其容量分別為k1; k2, . . . , km,然后調(diào)用進(jìn)程模塊 P1, P2, ...pn,并為每個進(jìn)程模塊選定相應(yīng)的通道模塊作為調(diào)用實(shí)參,以便將已定義的通道模塊連接到相應(yīng)的進(jìn)程模塊,每個進(jìn)程模塊中傳入的通道模塊實(shí)參個數(shù)由所建模系統(tǒng)的通信需求確定。步驟3 進(jìn)程模塊執(zhí)行通信命令進(jìn)行消息的傳遞,實(shí)現(xiàn)MSVL對異步并發(fā)系統(tǒng)中異步通信過程的建模。本發(fā)明可以用MSVL定義進(jìn)程模塊對異步并發(fā)系統(tǒng)的各個組件進(jìn)行建模,并根據(jù)系統(tǒng)的通信需要定義通道模塊,定義時可指定通道模塊的容量大小,同時定義兩對通信命令來適應(yīng)不同的異步并發(fā)系統(tǒng)的通信需求。由于異步并發(fā)系統(tǒng)行為復(fù)雜,其正確性難以保證,本發(fā)明可以使MSVL具有對異步并發(fā)系統(tǒng)建模的能力,以便進(jìn)一步對系統(tǒng)的性質(zhì)進(jìn)行驗(yàn)證,保證系統(tǒng)行為的正確性。本發(fā)明的實(shí)現(xiàn)還在于通過引入進(jìn)程模塊來對異步并發(fā)系統(tǒng)的各個組件進(jìn)行建模,進(jìn)程模塊在調(diào)用執(zhí)行前需進(jìn)行聲明,聲明語句需指明進(jìn)程模塊名、形參和進(jìn)程模塊體, 并按名實(shí)行調(diào)用,調(diào)用時用實(shí)參替換形參,進(jìn)程模塊定義按如下方式進(jìn)行
權(quán)利要求
1.一種MSVL異步通信系統(tǒng),異步并發(fā)系統(tǒng)的各個組件分布在不同位置,并且不同組件之間存在某種通信關(guān)系,其特征在于用MSVL異步通信系統(tǒng)對異步并發(fā)系統(tǒng)進(jìn)行建模,包括有進(jìn)程模塊、通道模塊和通信命令,通過通道模塊連接進(jìn)程模塊,并通過通信命令實(shí)現(xiàn)異步通信過程,進(jìn)程模塊、通道模塊和通信命令都是基于MSVL定義的用MSVL異步通信系統(tǒng)中的進(jìn)程模塊對異步并發(fā)系統(tǒng)組件進(jìn)行建模,設(shè)置有進(jìn)程模塊名、形參和進(jìn)程模塊體,并按名實(shí)行調(diào)用,調(diào)用進(jìn)程模塊時用實(shí)參替換形參;用MSVL異步通信系統(tǒng)中的通道模塊對異步并發(fā)系統(tǒng)組件之間的通信媒介進(jìn)行建模, 設(shè)置有通道模塊名和容量大小,通道模塊是一個有容量限制的先進(jìn)先出隊(duì)列,通過通信命令實(shí)現(xiàn)消息的入隊(duì)與出隊(duì),通道模塊在使用前需定義,定義時根據(jù)系統(tǒng)需要指定容量大小, 將已定義的通道模塊作為進(jìn)程模塊調(diào)用的實(shí)參來連接進(jìn)程模塊;通信命令以MSVL語句的形式存在于進(jìn)程模塊體中,MSVL通信命令有兩對,其中 send (c,χ)和receive (c,y)適用于不存在超時機(jī)制的異步通信過程,put(c,χ)和get(c, y)適用于存在超時機(jī)制的異步通信過程。
2.—種MSVL異步通信方法,其特征在于包括如下步驟步驟1、用MSVL聲明進(jìn)程模塊P1, P2,. . . Pn分別對異步并發(fā)系統(tǒng)的各個組件進(jìn)行建模, 對于要進(jìn)行異步通信的進(jìn)程模塊在其進(jìn)程模塊體中需包含相應(yīng)的通信命令語句;步驟2、根據(jù)所建模系統(tǒng)中各個組件之間的連接關(guān)系,用MSVL定義通道模塊CnC2,..., Cm作為各個組件之間的消息緩沖,其容量分別為k1; 1 ,...,km,然后調(diào)用進(jìn)程模塊P1, P2, ... Pn,并為每個進(jìn)程模塊選定相應(yīng)的通道模塊作為調(diào)用實(shí)參,以便將已定義的通道模塊連接到相應(yīng)的進(jìn)程模塊,每個進(jìn)程模塊中傳入的通道模塊實(shí)參個數(shù)由所建模系統(tǒng)的通信需求確定;步驟3 進(jìn)程模塊執(zhí)行通信命令進(jìn)行消息傳遞,實(shí)現(xiàn)MSVL對異步并發(fā)系統(tǒng)中異步通信過程的建模。
3.根據(jù)權(quán)利要求2所述的MSVL異步通信方法,其特征在于MSVL中通道模塊定義成一個有容量限制的先進(jìn)先出隊(duì)列,根據(jù)需要指定通道模塊的容量大小,通道模塊定義按如下方式進(jìn)行chn c(n) =f c =O Amaxc = η其中chn為MSVL中的關(guān)鍵字,chn c (η)指的是定義一個容量為η的通道模塊c,其中 c是一個有限的先進(jìn)先出隊(duì)列,maxc是一個靜態(tài)變量,代表通道模塊c的容量大小為max。。
4.根據(jù)權(quán)利要求3所述的MSVL異步通信方法,其特征在于用MSVL定義send(c,χ) 和receive (c,y)來描述不存在超時機(jī)制的異步通信過程,定義put (c,χ)和get(c,y)來描述存在超時機(jī)制的異步通信過程,具體形式按如下所述4. 1、用MSVL定義通信命令send (c,χ)和receive (c,y)來描述不存在超時機(jī)制的異步通信過程,其定義如下send(c, χ) =f await(\isfull(c));c:= c- < χ >receive^y) =f await(\isempty(c));y := head(c) Ac:= tail(c)send (c,x)命令首先執(zhí)行await ( ! isfull (c)),如果通道模塊c已滿,即isfull(c) 為true,則下一狀態(tài)重復(fù)執(zhí)行該await語句,直到isfull (c)為false,下一狀態(tài)將消息χ放入通道模塊c的尾部;receive (c,χ)命令首先執(zhí)行await ( ! isempty (c)),如果通道模塊c為空,即 isempty (c)為true,則下一狀態(tài)重復(fù)執(zhí)行該await語句,直到isempty (c)為false,下一狀態(tài)取出通道模塊c中頭部的消息并賦值給變量y ;·4.2、用MSVL定義通信命令put (c,χ)和get (c, χ)來描述存在超時機(jī)制的異步通信過程,其定義如下put(c, χ) =f if( \isfull(c)) then { c := c· < a; > } else{skip}get(c, y) =f if( \isempty(c)) then { y := head{c) Ac:= tail(c)}else{ skip }put (c,x)命令首先判斷isfull (c),如果為false,即通道模塊c未滿,則下一狀態(tài)將消息χ存入通道模塊c的尾部,否則執(zhí)行else分支的skip語句,然后結(jié)束命令;get (c,y)命令首先判斷isempty (c),如果為false,即通道模塊c不為空,則下一狀態(tài)取出通道模塊c頭部的消息并賦值給變量y,否則執(zhí)行skip語句,然后結(jié)束命令。
5.根據(jù)權(quán)利要求2或3或4所述的MSVL異步通信方法,其特征在于根據(jù)系統(tǒng)組件之間的通信需求,每個進(jìn)程模塊中傳入的通道模塊實(shí)參個數(shù)為0或1或多個。
全文摘要
本發(fā)明公開了一種基于時序邏輯語言MSVL的異步通信系統(tǒng)和方法,屬于系統(tǒng)形式化建模與驗(yàn)證技術(shù)領(lǐng)域,主要涉及用形式化的方法對異步并發(fā)系統(tǒng)進(jìn)行建模與驗(yàn)證。MSVL的異步通信系統(tǒng)包括進(jìn)程模塊,通道模塊和通信命令,用進(jìn)程模塊對異步并發(fā)系統(tǒng)中各個組件的行為進(jìn)行建模,用通道模塊對不同組件之間的通信媒介進(jìn)行建模,進(jìn)程模塊執(zhí)行通信命令實(shí)現(xiàn)不同組件之間的異步通信過程。本發(fā)明中進(jìn)程模塊之間的通道個數(shù)可根據(jù)系統(tǒng)的需要連接任意有限多個,通道容量可根據(jù)系統(tǒng)組件之間的通信需求定義所需大小,同時定義了兩套通信命令以適應(yīng)不同的異步通信過程。本發(fā)明可用于分布式系統(tǒng)的建模與驗(yàn)證。
文檔編號H04L29/08GK102339232SQ201110273599
公開日2012年2月1日 申請日期2011年9月15日 優(yōu)先權(quán)日2011年9月15日
發(fā)明者段振華, 王小兵, 田聰, 莫大鵬 申請人:西安電子科技大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
康保县| 陇西县| 克什克腾旗| 临澧县| 丹凤县| 牡丹江市| 元阳县| 如皋市| 长岛县| 恩平市| 岳阳县| 磴口县| 蛟河市| 宝鸡市| 仁怀市| 新平| 贵定县| 富锦市| 无棣县| 花垣县| 连平县| 东乡| 庄浪县| 晋江市| 深水埗区| 尚志市| 牙克石市| 淮滨县| 平和县| 精河县| 虹口区| 日照市| 黄龙县| 天峻县| 宁波市| 南江县| 定边县| 彩票| 时尚| 新源县| 香格里拉县|