亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

數(shù)據(jù)流網(wǎng)絡(luò)的制作方法

文檔序號(hào):6593887閱讀:221來(lái)源:國(guó)知局
專利名稱:數(shù)據(jù)流網(wǎng)絡(luò)的制作方法
數(shù)據(jù)流網(wǎng)絡(luò)背景計(jì)算機(jī)系統(tǒng)可允許并發(fā)地執(zhí)行程序的多個(gè)進(jìn)程。進(jìn)程的并發(fā)執(zhí)行可允許更快或更 高效地執(zhí)行程序以提高計(jì)算機(jī)系統(tǒng)的吞吐量。在實(shí)現(xiàn)控制流模型的進(jìn)程中,控制流邏輯描述了程序狀態(tài)的一組條件和修改并可 由例如流程圖來(lái)組織。術(shù)語(yǔ)“進(jìn)程代數(shù)”用于指代用于推理關(guān)于進(jìn)程如何彼此通信來(lái)合作 解決共享的問題以及如何控制進(jìn)程的生存期的方法。雖然進(jìn)程代數(shù)與進(jìn)程的內(nèi)部狀態(tài)修改 原語(yǔ)可有很大程度的不同,但通常存在進(jìn)程間通信驅(qū)動(dòng)內(nèi)部流程圖的交互點(diǎn)。進(jìn)程之間的 這些交互點(diǎn)在某些程序中可能是復(fù)雜的。復(fù)雜的交互點(diǎn)可使調(diào)度進(jìn)程以供并發(fā)執(zhí)行變得困 難并導(dǎo)致程序的執(zhí)行未達(dá)到最優(yōu)。概述提供本發(fā)明內(nèi)容是為了以精簡(jiǎn)的形式介紹將在以下具體實(shí)施方式
中進(jìn)一步描述 的一些概念。本概述并不旨在標(biāo)識(shí)所要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不旨在用 于限制所要求保護(hù)的主題的范圍。提供了用于按通用、靈活和可擴(kuò)展的方式將進(jìn)程連接到進(jìn)程網(wǎng)絡(luò)中的被稱為 源-目標(biāo)模式的合成模型。該模型允許常見進(jìn)程代數(shù)構(gòu)造與數(shù)據(jù)流網(wǎng)絡(luò)組合來(lái)形成進(jìn)程網(wǎng) 絡(luò)。進(jìn)程代數(shù)操作可用合成模型來(lái)表達(dá)以形成提供進(jìn)程之間的完全互操作進(jìn)程代數(shù)操作的 數(shù)據(jù)流網(wǎng)絡(luò)。該模型可應(yīng)用于大量簡(jiǎn)單數(shù)據(jù)流網(wǎng)絡(luò)以及更復(fù)雜的數(shù)據(jù)流網(wǎng)絡(luò)。附圖簡(jiǎn)述包括、合并在本發(fā)明書內(nèi)并構(gòu)成其一部分的附圖提供了對(duì)各實(shí)施例的進(jìn)一步理 解。附圖示出各實(shí)施例,并且與說明書一起用于解釋本發(fā)明的原理。其他實(shí)施例和各實(shí)施 例的許多預(yù)期優(yōu)點(diǎn)將隨著參考下面的詳細(xì)描述進(jìn)行更好的理解而得到認(rèn)識(shí)。附圖的元素不 一定相對(duì)于彼此而縮放。相同的附圖標(biāo)記指代對(duì)應(yīng)的類似部分。

圖1A-1C是示出供在數(shù)據(jù)流網(wǎng)絡(luò)中使用的源和目標(biāo)接口的實(shí)施例的框圖。圖2A-2C是示出數(shù)據(jù)流網(wǎng)絡(luò)的節(jié)點(diǎn)的實(shí)施例的框圖。圖3是示出具有連接到進(jìn)程的數(shù)據(jù)流網(wǎng)絡(luò)的進(jìn)程網(wǎng)絡(luò)的一實(shí)施例的框圖。圖4是示出具有連接到數(shù)據(jù)流網(wǎng)絡(luò)的進(jìn)程的進(jìn)程網(wǎng)絡(luò)的一實(shí)施例的框圖。圖5是示出被配置成實(shí)現(xiàn)發(fā)送操作的始發(fā)者塊的一實(shí)施例的框圖。圖6是示出被配置成實(shí)現(xiàn)接收操作的觸發(fā)器塊的一實(shí)施例的框圖。圖7是示出進(jìn)程網(wǎng)絡(luò)的一實(shí)施例的框圖。圖8是示出被配置成實(shí)現(xiàn)選擇和聯(lián)結(jié)操作的數(shù)據(jù)流網(wǎng)絡(luò)的一實(shí)施例的框圖。圖9是示出進(jìn)程網(wǎng)絡(luò)的一實(shí)施例的框圖。圖10是示出進(jìn)程網(wǎng)絡(luò)的一實(shí)施例的框圖。圖11是示出被配置成實(shí)現(xiàn)帶有進(jìn)程調(diào)度器的運(yùn)行時(shí)環(huán)境的計(jì)算機(jī)系統(tǒng)的一實(shí)施 例的框圖。詳細(xì)描述在以下詳細(xì)描述中,對(duì)附圖進(jìn)行了參考,附圖構(gòu)成了實(shí)施例的一部分且在其中作為示例示出了可在其中實(shí)踐本發(fā)明的各特定實(shí)施例。就此,諸如“頂部”、“底部”、“前方”、 “后方”、“前導(dǎo)”、“尾部”等的方向性術(shù)語(yǔ)參考正在描述的附圖的方向來(lái)使用。因?yàn)楦鲗?shí)施 例的各組件可位于多個(gè)不同的方向,所以方向性術(shù)語(yǔ)出于說明的目的來(lái)使用而不是限制。 可以理解,可以使用其它實(shí)施例并且可以做出結(jié)構(gòu)上或邏輯上的改變而不背離本發(fā)明的范 圍。因此,以下詳細(xì)描述并不旨在限制,并且本發(fā)明的范圍由所附權(quán)利要求來(lái)限定。應(yīng)該理解,此處描述的各示例性實(shí)施例的特征可相互組合,除非另外具體注明。圖IA是示出包括通過鏈接16連接的源接口 12和目標(biāo)接口 14的源-目標(biāo)模式10 的一實(shí)施例的框圖。源-目標(biāo)模式10提供用于創(chuàng)建將在計(jì)算機(jī)系統(tǒng)(例如,圖11中示出的計(jì)算機(jī)系 統(tǒng)100)上執(zhí)行的程序的任意數(shù)量的進(jìn)程(例如,圖3和4中示出的進(jìn)程40)連接到進(jìn)程網(wǎng) 絡(luò)中的數(shù)據(jù)流網(wǎng)絡(luò)(例如,圖3和4中示出的數(shù)據(jù)流網(wǎng)絡(luò)32)的一組操作。數(shù)據(jù)流網(wǎng)絡(luò)形 成進(jìn)程代數(shù)構(gòu)造,如發(fā)送、接收、選擇、聯(lián)結(jié)及其組合,來(lái)允許數(shù)據(jù)在進(jìn)程之間傳遞。源-目 標(biāo)模式10提供用于在源接口 12和目標(biāo)接口 14之間傳遞數(shù)據(jù)的協(xié)議以允許在數(shù)據(jù)流網(wǎng)絡(luò) 中實(shí)現(xiàn)進(jìn)程代數(shù)構(gòu)造。源-目標(biāo)模式10允許在進(jìn)程不具有或具有最少關(guān)于另一進(jìn)程的知識(shí)的情況下連 接進(jìn)程。一個(gè)進(jìn)程可在沒有其他進(jìn)程的任何知識(shí)的情況下使用源-目標(biāo)模式10向另一進(jìn) 程提供數(shù)據(jù)。類似地,一個(gè)進(jìn)程可在沒有其他進(jìn)程的任何知識(shí)的情況下使用源-目標(biāo)模式 10從另一進(jìn)程接收數(shù)據(jù)。每一進(jìn)程包括存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)(例如,圖11中示出的 存儲(chǔ)器系統(tǒng)104)中并可由計(jì)算機(jī)系統(tǒng)執(zhí)行的指令集。進(jìn)程之間傳遞的數(shù)據(jù)可包括任何類 型的數(shù)據(jù),包括指針、地址或其他結(jié)構(gòu)化的或編碼的信息。源接口 12包括存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)(例如,圖11中示出的存儲(chǔ)器 系統(tǒng)104)中并可由計(jì)算機(jī)系統(tǒng)執(zhí)行來(lái)實(shí)現(xiàn)鏈接目標(biāo)(Iinktarget)、斷開目標(biāo)鏈接 (unlinktarget)、保留(reserve)、釋放(release)和消費(fèi)(consume)操作的指令,其中源接 口 12的操作中的每一個(gè)由一個(gè)或多個(gè)目標(biāo)接口 14調(diào)用。目標(biāo)接口 14包括存儲(chǔ)在計(jì)算機(jī) 可讀存儲(chǔ)介質(zhì)(例如,圖11中示出的存儲(chǔ)器系統(tǒng)104)中并可由計(jì)算機(jī)系統(tǒng)執(zhí)行來(lái)實(shí)現(xiàn)提 供(Offer)操作的指令,其中目標(biāo)接口 14的提供操作由一個(gè)或多個(gè)源接口 12調(diào)用。源接口 12的鏈接目標(biāo)操作在源接口 12和調(diào)用該鏈接目標(biāo)操作的目標(biāo)接口 14之 間建立鏈接16。源接口 12的斷開目標(biāo)鏈接操作斷開源接口 12和調(diào)用該斷開目標(biāo)鏈接操作 的目標(biāo)接口 14之間的鏈接16。鏈接目標(biāo)和斷開目標(biāo)鏈接操作可各自向從中接收操作調(diào)用 的目標(biāo)接口 14返回成功或失敗指示符,以指示鏈接16是否成功地建立或斷開。在源接口 12和目標(biāo)接口 14之間建立鏈接16之后,源接口 12使用鏈接16來(lái)調(diào)用 目標(biāo)接口 14的提供操作來(lái)將數(shù)據(jù)提供給目標(biāo)接口 14。響應(yīng)于該提供調(diào)用,目標(biāo)接口 14返 回已接受、已拒絕或已推遲中的一個(gè)。目標(biāo)接口 14返回已接受來(lái)指示目標(biāo)接口 14消費(fèi)了 源接口 12所提供的數(shù)據(jù)。目標(biāo)接口 14返回已拒絕來(lái)指示目標(biāo)接口 14對(duì)源接口 12所提供 的數(shù)據(jù)不感興趣。目標(biāo)接口 14返回已推遲來(lái)指示目標(biāo)接口 14在該時(shí)間點(diǎn)沒有準(zhǔn)備好消費(fèi) 源接口 12所提供的數(shù)據(jù)。源接口 12允許目標(biāo)接口 14使用保留操作來(lái)請(qǐng)求先前提供的數(shù)據(jù)。目標(biāo)接口 14 調(diào)用保留操作來(lái)提出對(duì)源接口 12提供的但目標(biāo)接口 14推遲的數(shù)據(jù)的保留。源接口 12向 從中接收保留調(diào)用的目標(biāo)接口 14返回成功或失敗指示符來(lái)指示保留是否成功。
在保留數(shù)據(jù)之后,目標(biāo)接口 14或者調(diào)用源接口 12的釋放操作來(lái)釋放早先提出的 保留或者調(diào)用消費(fèi)操作來(lái)消費(fèi)所保留的數(shù)據(jù)。在源接口 12通過向目標(biāo)接口 14提供成功指 示符來(lái)向目標(biāo)接口 14確認(rèn)數(shù)據(jù)保留之后,源接口 12為提出保留的目標(biāo)接口 14保存數(shù)據(jù)直 到該數(shù)據(jù)被提出保留的目標(biāo)接口 14釋放或消費(fèi)。如圖IB所示,每一目標(biāo)接口 14可通過調(diào)用每一源接口 12(1)_12(M)的鏈接目標(biāo) 操作來(lái)連接到任意數(shù)量的源接口 12(1)-12(M)以建立相應(yīng)的鏈接16(1)-16(M),其中M是大 于或等于一的整數(shù)且表示第M個(gè)源接口 12和第M個(gè)鏈接16。因此,每一目標(biāo)接口 14可被 提供來(lái)自任意數(shù)量的源接口 12 (1)-12 (M)的數(shù)據(jù)。如圖IC所示,每一源接口 12可響應(yīng)于來(lái)自每一目標(biāo)接口 14 (1)-14 (N)的建立相 應(yīng)鏈接16(1)-16(M)的鏈接目標(biāo)操作調(diào)用來(lái)連接到任意數(shù)量的目標(biāo)接口 14(1)-14(N),其 中N是大于或等于一的整數(shù)且表示第N個(gè)目標(biāo)接口 14和第N個(gè)鏈接16。因此,每一源接口 12可將數(shù)據(jù)提供給任意數(shù)量的目標(biāo)接口 14 (1)-14 (N)。圖2A-2C是分別示出數(shù)據(jù)流網(wǎng)絡(luò)的節(jié)點(diǎn)20的實(shí)施例20A、20B和20C的框圖。如 圖2A所示,節(jié)點(diǎn)20A可包括一個(gè)或多個(gè)源接口 12 (1)-12 (P),其中P是大于或等于一的整數(shù) 且表示第P個(gè)源接口 12,但沒有目標(biāo)接口 14。只有源接口 12的節(jié)點(diǎn)20A形成數(shù)據(jù)始發(fā)者。 如圖2B所示,節(jié)點(diǎn)20B可包括一個(gè)或多個(gè)目標(biāo)接口 14 (1)-14⑴),其中Q是大于或等于一的 整數(shù)且表示第Q個(gè)目標(biāo)接口 14,但沒有源接口 12。只有目標(biāo)接口 14的節(jié)點(diǎn)20B形成數(shù)據(jù) 匯點(diǎn)。另外,如圖2C所示,節(jié)點(diǎn)20C可包括一個(gè)或多個(gè)源接口 12(1)-12(P)和一個(gè)或多個(gè) 目標(biāo)接口 14(1)-14 )。節(jié)點(diǎn)20A、20B和20C中的每一個(gè)還可包括被配置成當(dāng)數(shù)據(jù)經(jīng)節(jié)點(diǎn) 20A、20B和20C傳播時(shí)變換數(shù)據(jù)的一個(gè)或多個(gè)無(wú)源處理單元(未示出)。流過數(shù)據(jù)流網(wǎng)絡(luò)的數(shù)據(jù)使用源-目標(biāo)模式10從一個(gè)節(jié)點(diǎn)20被移交給一個(gè)或多個(gè) 其他節(jié)點(diǎn)20。數(shù)據(jù)流網(wǎng)絡(luò)中的兩個(gè)節(jié)點(diǎn)20的每一連接由一對(duì)實(shí)現(xiàn)源接口 12的節(jié)點(diǎn)20(例 如,節(jié)點(diǎn)20A或節(jié)點(diǎn)20C)和實(shí)現(xiàn)目標(biāo)接口 14的節(jié)點(diǎn)(例如,節(jié)點(diǎn)20B或節(jié)點(diǎn)20C)來(lái)表示。任意數(shù)量的數(shù)據(jù)流網(wǎng)絡(luò)組件可使用源-目標(biāo)模式10來(lái)定義,且這些組件可被組合 成在很大程度上任意的數(shù)據(jù)流網(wǎng)絡(luò)。數(shù)據(jù)流網(wǎng)絡(luò)的示例包括無(wú)界緩沖區(qū)、有界緩沖區(qū)、單賦 值塊、生產(chǎn)者/消費(fèi)者緩沖區(qū)、數(shù)據(jù)匯點(diǎn)(方法調(diào)用)、數(shù)據(jù)變換、計(jì)時(shí)器和I/O處理器。數(shù) 據(jù)流網(wǎng)絡(luò)也可由使用源-目標(biāo)模式10的更復(fù)雜的網(wǎng)絡(luò)構(gòu)成。例如,讀取者/寫入者鎖實(shí)現(xiàn) 或監(jiān)視器實(shí)現(xiàn)可用使用源-目標(biāo)模式10的數(shù)據(jù)流網(wǎng)絡(luò)來(lái)表達(dá)。如圖3所示,任意數(shù)量的進(jìn)程可將數(shù)據(jù)提供到數(shù)據(jù)流網(wǎng)絡(luò)中,且任意數(shù)量的進(jìn)程 可從數(shù)據(jù)流網(wǎng)絡(luò)接收數(shù)據(jù)。圖3是示出帶有連接到進(jìn)程40 (1)-40 (R)和40(R+1)-40(S)的 數(shù)據(jù)流網(wǎng)絡(luò)32的進(jìn)程網(wǎng)絡(luò)30的一實(shí)施例的框圖,其中R是大于或等于一的整數(shù),S是大于 或等于二的整數(shù),R小于S,且表示第R和和第S個(gè)進(jìn)程40。數(shù)據(jù)流網(wǎng)絡(luò)32形成被配置成將數(shù)據(jù)在進(jìn)程40 (1) -40 (R)和進(jìn)程40 (R+1) -40 (S) 之間傳播的無(wú)源數(shù)據(jù)流構(gòu)造。數(shù)據(jù)流網(wǎng)絡(luò)32包括一個(gè)或多個(gè)目標(biāo)接口 14集合34,一個(gè)或 多個(gè)源接口 12集合36,以及包括節(jié)點(diǎn)20和無(wú)源處理塊并將目標(biāo)接口 14集合34與源接口 12集合36互連的一組網(wǎng)絡(luò)組件38。網(wǎng)絡(luò)組件38可包括將目標(biāo)接口 14集合34與源接口 12集合36按任何合適的方式連接的任何合適類型、數(shù)量、和/或組合的節(jié)點(diǎn)20以及無(wú)源處 理塊。進(jìn)程40 (1) -40 (R)包括一個(gè)或多個(gè)源接口 12的相應(yīng)集合42 (1) -42 (R),其中每一集合42可包括與其他集合42相同或不同數(shù)量的源接口 12。目標(biāo)接口 14集合34在目標(biāo)接 口 14集合34和源接口 12集合42 (1)-42 (R)之間建立鏈接16集合44。如圖IB和IC所 示,集合44中的每一目標(biāo)接口 14可連接至集合42 (1)-42 (R)中的任意數(shù)量的源接口 12,且 集合44中的任意數(shù)量的目標(biāo)接口 14可連接至集合42 (1)-42 (R)中的每一源接口 12。集合 42 (1)-42 (R)中的每一源接口 12通過如上參考圖IA所描述的將數(shù)據(jù)提供給集合44中的 一個(gè)或多個(gè)目標(biāo)接口 14來(lái)使得數(shù)據(jù)從進(jìn)程40 (1)-40 (R)被傳播到數(shù)據(jù)流網(wǎng)絡(luò)32中。進(jìn)程 40 (1)-40 (R)中的一個(gè)或多個(gè)還可包括連接至一個(gè)或多個(gè)其他數(shù)據(jù)流網(wǎng)絡(luò)32 (未示出)的 一個(gè)或多個(gè)其他源接口 12集合(未示出)和/或一個(gè)或多個(gè)目標(biāo)接口 14集合(未示出)。進(jìn)程40 (R+1) -40 (S)包括一個(gè)或多個(gè)目標(biāo)接口 14的相應(yīng)集合46 (R+1) -46 (S),其 中每一集合46可包括與其他集合46相同或不同數(shù)量的目標(biāo)接口 14。目標(biāo)接口 14集合 46 (R+1)-46(S)在目標(biāo)接口 14集合46 ¢+1)-46( 與源接口 12集合36之間建立鏈接16 集合48。如圖IB和IC所示,集合46(R+1)-46(S)中的每一目標(biāo)接口 14可連接至集合36 中的任意數(shù)量的源接口 12,且集合46(R+1)-46(Q中的任意數(shù)量的目標(biāo)接口 14可連接至集 合36中的每一源接口 12。集合36中的每一源接口 12通過如上參考圖IA所描述的將數(shù)據(jù) 提供給集合46 ¢+1)-46( 中的一個(gè)或多個(gè)目標(biāo)接口 14來(lái)使得數(shù)據(jù)從數(shù)據(jù)流網(wǎng)絡(luò)32被傳 播至進(jìn)程40 (R+1)-40 (S)中的一個(gè)或多個(gè)。進(jìn)程40(R+1)-40(S)中的一個(gè)或多個(gè)還可包括 連接至一個(gè)或多個(gè)其他數(shù)據(jù)流網(wǎng)絡(luò)32 (未示出)的一個(gè)或多個(gè)其他目標(biāo)接口 14集合(未 示出)和/或一個(gè)或多個(gè)源接口 12集合(未示出)。進(jìn)程40(1)-40( 可在沒有進(jìn)程40 ¢+1)-40( 的任何知識(shí)的情況下使用數(shù)據(jù) 流網(wǎng)絡(luò)32將數(shù)據(jù)提供給進(jìn)程40 (R+1) -40 (S)。類似地,進(jìn)程40 (R+1) -40 (S)可在沒有進(jìn)程 40 (1)-40 (R)的任何知識(shí)的情況下使用數(shù)據(jù)流網(wǎng)絡(luò)32從進(jìn)程40 (1)-40 (R)接收數(shù)據(jù)。如圖4所示,進(jìn)程可將數(shù)據(jù)提供到任意數(shù)量的數(shù)據(jù)流網(wǎng)絡(luò)中并從任意數(shù)量的數(shù)據(jù) 流網(wǎng)絡(luò)接收數(shù)據(jù)。圖4是示出帶有連接到數(shù)據(jù)流網(wǎng)絡(luò)32 (1)-32 (T)和32(T+1)-32(V)的進(jìn) 程40的進(jìn)程網(wǎng)絡(luò)50的一實(shí)施例的框圖,其中T是大于或等于一的整數(shù),V是大于或等于二 的整數(shù),T小于V,且表示第T個(gè)和第V個(gè)數(shù)據(jù)流網(wǎng)絡(luò)32。進(jìn)程40包括被配置成從數(shù)據(jù)流網(wǎng)絡(luò)32 (1)-32 (T)接收數(shù)據(jù)并將數(shù)據(jù)提供給數(shù)據(jù) 流網(wǎng)絡(luò)32(T+1)-32(V)的程序的指令集。進(jìn)程40包括一個(gè)或多個(gè)目標(biāo)接口 14集合M、一 個(gè)或多個(gè)源接口 12集合56、以及將目標(biāo)接口 14集合M與源接口 12集合56互連的一組進(jìn) 程組件58。進(jìn)程組件58可包括將目標(biāo)接口 14集合討與源接口 12集合56按任何合適的 方式連接的任何合適類型、數(shù)量、和/或組合的指令和/或數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)流網(wǎng)絡(luò)32⑴-32 (T)包括一個(gè)或多個(gè)源接口 12的相應(yīng)集合62 (1)-62 (T),其 中每一集合62可包括與其他集合62相同或不同數(shù)量的源接口 12。目標(biāo)接口 14集合討在 目標(biāo)接口 14集合M和源接口 12集合62 (1)-62 (T)之間建立鏈接16集合64。如圖IB和 IC所示,集合M中的每一目標(biāo)接口 14可連接至集合62 (1)-62 (T)中的任意數(shù)量的源接口 12,且集合M中的任意數(shù)量的目標(biāo)接口 14可連接至集合62 (1)-62 (T)中的每一源接口 12。 集合62(1)-62(T)中的每一源接口 12通過如上參考圖IA所描述的將數(shù)據(jù)提供給集合M 中的一個(gè)或多個(gè)目標(biāo)接口 14來(lái)使得數(shù)據(jù)從數(shù)據(jù)流網(wǎng)絡(luò)32 (1)-32 (T)被傳播到進(jìn)程40中。 數(shù)據(jù)流網(wǎng)絡(luò)32 (1)-32 (T)各自包括連接至一個(gè)或多個(gè)其他進(jìn)程40 (未示出)的一個(gè)或多個(gè) 目標(biāo)接口 14集合(未示出)。數(shù)據(jù)流網(wǎng)絡(luò)32 (1)-32 (T)還可包括連接至一個(gè)或多個(gè)其他進(jìn)程40(未示出)的一個(gè)或多個(gè)其他源接口 12集合(未示出)和/或一個(gè)或多個(gè)目標(biāo)接口 14集合(未示出)。數(shù)據(jù)流網(wǎng)絡(luò)32(T+1)_32(V)包括一個(gè)或多個(gè)目標(biāo)接口 14的相應(yīng)集合 66(T+1)-46(V),其中每一集合66可包括與其他集合66相同或不同數(shù)量的目標(biāo)接口 14。目 標(biāo)接口 14集合66 (T+1) -46 (V)在目標(biāo)接口 14集合66 (T+1) -46 (V)與源接口 12集合56之 間建立鏈接16集合68。如圖IB和IC所示,集合66 (T+1)-46 (V)中的每一目標(biāo)接口 14可 連接至集合56中的任意數(shù)量的源接口 12,且集合66(T+1)-46(V)中的任意數(shù)量的目標(biāo)接口 14可連接至集合56中的每一源接口 12。進(jìn)程40通過如上參考圖IA所描述的使得集合56 中的每一源接口 12將數(shù)據(jù)提供個(gè)集合66 (T+1)-46 (V)中的一個(gè)或多個(gè)目標(biāo)接口 14來(lái)使得 數(shù)據(jù)被傳播至數(shù)據(jù)流網(wǎng)絡(luò)32 (T+1)-32 (V)中的一個(gè)或多個(gè)中。數(shù)據(jù)流網(wǎng)絡(luò)32 (T+1)-32 (V) 還可包括連接至一個(gè)或多個(gè)其他進(jìn)程40 (未示出)的一個(gè)或多個(gè)源接口 12集合(未示出) 和/或一個(gè)或多個(gè)目標(biāo)接口 14集合(未示出)。圖5是示出被配置成實(shí)現(xiàn)發(fā)送操作的始發(fā)者塊70的一實(shí)施例的框圖。始發(fā)者塊 70包括源接口 12但不包括任何目標(biāo)接口 14。始發(fā)者塊70被包括在進(jìn)程40中以允許進(jìn)程 40將數(shù)據(jù)傳播至數(shù)據(jù)流網(wǎng)絡(luò)32中。因此,始發(fā)者塊70通過從進(jìn)程40接收數(shù)據(jù)并將數(shù)據(jù)提 供到一個(gè)或多個(gè)連接的數(shù)據(jù)流網(wǎng)絡(luò)32中來(lái)實(shí)現(xiàn)發(fā)送操作。始發(fā)者塊70可以與或者可以不與調(diào)度進(jìn)程40以便在計(jì)算機(jī)系統(tǒng)中執(zhí)行的底層進(jìn) 程調(diào)度器進(jìn)行交互。因此,始發(fā)者塊70可不包括到調(diào)度器的接口。圖6是示出被配置成實(shí)現(xiàn)接收操作的觸發(fā)器塊80的一實(shí)施例的框圖。觸發(fā)器塊 80包括目標(biāo)接口 14但不包括任何源接口 12。觸發(fā)器塊80被包括在進(jìn)程40中以允許進(jìn)程 40從數(shù)據(jù)流網(wǎng)絡(luò)32接收數(shù)據(jù)。觸發(fā)器塊80作為數(shù)據(jù)流網(wǎng)絡(luò)32的一個(gè)終止點(diǎn)或任意數(shù)量 的終止點(diǎn)中的一個(gè)。因此,觸發(fā)器塊80通過從數(shù)據(jù)流網(wǎng)絡(luò)32接收數(shù)據(jù)并將數(shù)據(jù)提供給進(jìn) 程40來(lái)實(shí)現(xiàn)接收操作。觸發(fā)器塊80還包括調(diào)度器接口 82。調(diào)度器接口 82與調(diào)度進(jìn)程40以便在計(jì)算機(jī) 系統(tǒng)中執(zhí)行的底層進(jìn)程調(diào)度器進(jìn)行交互。具體地,調(diào)度器接口 82與調(diào)度器一起操作來(lái)使得 響應(yīng)于在數(shù)據(jù)非立即可用時(shí)開始涉及觸發(fā)器塊80的接收操作來(lái)暫停(例如,阻塞)進(jìn)程 40。調(diào)度器接口 82還與調(diào)度器一起操作來(lái)使得響應(yīng)于涉及觸發(fā)器塊80的接收操作的數(shù)據(jù) 到達(dá)觸發(fā)器塊80來(lái)恢復(fù)(例如,解除阻塞)進(jìn)程40。圖7是示出包括發(fā)送和接收操作的進(jìn)程網(wǎng)絡(luò)90的一實(shí)施例的框圖。在圖7中, 進(jìn)程40(1)從進(jìn)程40( 接收數(shù)據(jù)并將數(shù)據(jù)提供給進(jìn)程40 (3)。為了從進(jìn)程40( 接收數(shù) 據(jù),將數(shù)據(jù)從進(jìn)程4(K2)的始發(fā)者塊70(1)提供給進(jìn)程40(1)的觸發(fā)器塊80(1)且觸發(fā)器 塊80(1)如實(shí)現(xiàn)接收操作的數(shù)據(jù)流網(wǎng)絡(luò)32Α所指示地接受數(shù)據(jù)。進(jìn)程40(1)對(duì)數(shù)據(jù)執(zhí)行某 些計(jì)算并將所得數(shù)據(jù)發(fā)送給進(jìn)程40 (3)。為了將數(shù)據(jù)發(fā)送給進(jìn)程40 (3),進(jìn)程40(1)的始發(fā) 者塊70( 將數(shù)據(jù)提供給進(jìn)程40 C3)的觸發(fā)器塊80( 且觸發(fā)器塊80(1)如實(shí)現(xiàn)發(fā)送操作 的數(shù)據(jù)流網(wǎng)絡(luò)32B所指示地接受數(shù)據(jù)。圖8是示出被配置成實(shí)現(xiàn)選擇和聯(lián)結(jié)操作的數(shù)據(jù)流網(wǎng)絡(luò)32的一實(shí)施例的框圖。 數(shù)據(jù)流網(wǎng)絡(luò)32包括節(jié)點(diǎn)20 (1) -20 (W+1),其中W是大于或等于二的整數(shù)并表示第W個(gè)節(jié)點(diǎn) 20、第W個(gè)進(jìn)程40和第W個(gè)始發(fā)者塊70。每一節(jié)點(diǎn)20 (1)-20 (W+1)包括源接口 12和目標(biāo) 接口 14。節(jié)點(diǎn)20 (1)-20 (W+1)中的目標(biāo)接口 14從相應(yīng)的進(jìn)程40 (1)-40 (W)中的相應(yīng)的始發(fā)者塊70 (1)-70 (W)接收數(shù)據(jù)。節(jié)點(diǎn)20 (1)-20 (W)中的源接口 12各自將數(shù)據(jù)提供給節(jié)點(diǎn) 20(ff+l)中的目標(biāo)接口 14。節(jié)點(diǎn)20(W+1)中的源接口 12將數(shù)據(jù)提供給進(jìn)程40 (W+1)中的 觸發(fā)器塊70。為了實(shí)現(xiàn)選擇操作,節(jié)點(diǎn)20(W+1)只接受來(lái)自將數(shù)據(jù)提供給節(jié)點(diǎn)20(W+1)的節(jié)點(diǎn) 20 (1)-20 (W)中的第一個(gè)的數(shù)據(jù)并拒絕所有其余節(jié)點(diǎn)20(1)-20(W)所提供的數(shù)據(jù)。節(jié)點(diǎn) 20(ff+l)將數(shù)據(jù)提供給進(jìn)程40 (W+1)中的觸發(fā)器塊80。在一個(gè)實(shí)施例中,每一節(jié)點(diǎn)20(1)_20(W)被配置成響應(yīng)于被提供來(lái)自相應(yīng)的始 發(fā)者塊70 (1)-70 (W)的數(shù)據(jù)來(lái)使用其相應(yīng)的源接口 12來(lái)將其身份作為數(shù)據(jù)提供給節(jié)點(diǎn) 20(W+1)。節(jié)點(diǎn)20(W+1)使用其目標(biāo)接口 14來(lái)接受從節(jié)點(diǎn)20 (1)-20 (W)集合提供的第一個(gè) 身份并拒絕從節(jié)點(diǎn)20 (1)-20 (W)集合提供的所有后續(xù)身份。使用其源接口 12來(lái)接收來(lái)自節(jié) 點(diǎn)20(W+1)的接受響應(yīng)的節(jié)點(diǎn)20 (1)-20 (W)使用其目標(biāo)接口 14來(lái)接受從相應(yīng)的始發(fā)者塊 70 (1)-70 (W)提供的數(shù)據(jù)。使用其相應(yīng)的源接口 12來(lái)接收來(lái)自節(jié)點(diǎn)20 (W+1)的拒絕響應(yīng)的 節(jié)點(diǎn)20(1)-20 (W)使用其相應(yīng)的目標(biāo)接口 14來(lái)拒絕從相應(yīng)的始發(fā)者塊70 (1)-70 (W)提供 的數(shù)據(jù)。節(jié)點(diǎn)20(W+1)使用其源接口 12來(lái)將所接受的身份作為數(shù)據(jù)提供給進(jìn)程40 (W+1)中 的觸發(fā)器塊70。觸發(fā)器塊70通過接受來(lái)自節(jié)點(diǎn)20 (W+1)的身份來(lái)作出響應(yīng)。進(jìn)程40(W+1) 然后使用從節(jié)點(diǎn)20 (W+1)接收的身份來(lái)檢索來(lái)自節(jié)點(diǎn)20 (1)-20 (W)的選擇操作的數(shù)據(jù)。在另一實(shí)施例中,節(jié)點(diǎn)20(1)_20(W)可被略去且節(jié)點(diǎn)20(W+1)可直接從始發(fā)者塊 70 (1) -70 (W)接收數(shù)據(jù)。在該實(shí)施例中,始發(fā)者塊70 (1) -70 (W)將數(shù)據(jù)提供給節(jié)點(diǎn)20 (W+1)。 節(jié)點(diǎn)20(W+1)使用其目標(biāo)接口 14來(lái)接受從始發(fā)者塊70 (1)-70 (W)集合提供的第一個(gè)數(shù)據(jù) 并拒絕從始發(fā)者塊70 (1)-70 (W)集合提供的所有后續(xù)數(shù)據(jù)。節(jié)點(diǎn)20(W+1)使用其源接口 12 來(lái)將所接受的數(shù)據(jù)提供給進(jìn)程40 (W+1)中的觸發(fā)器塊70。觸發(fā)器塊70通過接受來(lái)自節(jié)點(diǎn) 20(ff+l)的數(shù)據(jù)來(lái)作出響應(yīng)以完成選擇操作。在其他實(shí)施例中,選擇操作可以在使用與始發(fā)者塊70和/或觸發(fā)器塊80的其他 組合進(jìn)行接口的源-目標(biāo)模式10的其他組合的數(shù)據(jù)流網(wǎng)絡(luò)32C中實(shí)現(xiàn)。圖9是示出包括選擇操作的進(jìn)程網(wǎng)絡(luò)92的一實(shí)施例的框圖。在圖9中,選擇操作 通過包括數(shù)據(jù)流網(wǎng)絡(luò)32C來(lái)在進(jìn)程40 (4)和進(jìn)程40 和40 (6)之間實(shí)現(xiàn)。使用數(shù)據(jù)流網(wǎng) 絡(luò)32C,進(jìn)程40(4)接受來(lái)自將數(shù)據(jù)提供給數(shù)據(jù)流網(wǎng)絡(luò)32C的進(jìn)程40 和40 (6)中的第一 個(gè)的數(shù)據(jù)。進(jìn)程40 (4)對(duì)數(shù)據(jù)執(zhí)行某些計(jì)算并使用實(shí)現(xiàn)發(fā)送操作的數(shù)據(jù)流網(wǎng)絡(luò)32D將所得 數(shù)據(jù)發(fā)送給進(jìn)程40 (7)。圖8的實(shí)施例也可用于實(shí)現(xiàn)聯(lián)結(jié)操作。為了實(shí)現(xiàn)聯(lián)結(jié)操作,節(jié)點(diǎn)20(W+1)在將來(lái) 自所有節(jié)點(diǎn)20 (1)-20 (W)的數(shù)據(jù)提供給進(jìn)程40 (W+1)中的觸發(fā)器塊80之前等待接受來(lái)自 所有節(jié)點(diǎn)20 (1)-20 (W)的數(shù)據(jù)。在一個(gè)實(shí)施例中,每一節(jié)點(diǎn)20(1)_20(W)被配置成響應(yīng)于被提供來(lái)自相應(yīng)的始 發(fā)者塊70(1)-70(W)的數(shù)據(jù)來(lái)使用源接口 12來(lái)將其身份作為數(shù)據(jù)的一部分提供給節(jié)點(diǎn) 20(W+1)。節(jié)點(diǎn)20(W+1)使用其目標(biāo)接口 14來(lái)跟蹤所接收的提供以確定何時(shí)所有節(jié)點(diǎn) 20 (1)-20 (W)都已經(jīng)提供了其身份。節(jié)點(diǎn)20(W+1)使用其目標(biāo)接口 14來(lái)響應(yīng)除最后一個(gè) 提供之外的所有提供,但有推遲。響應(yīng)于來(lái)自所有節(jié)點(diǎn)20 (1)-20 (W)的提供被接收,節(jié)點(diǎn) 20(ff+l)使用其目標(biāo)接口 14來(lái)對(duì)除了提供最后一個(gè)提供的節(jié)點(diǎn)20(1)-20 (W)之外的所有 節(jié)點(diǎn)20(1)-20(W)調(diào)用保留操作。節(jié)點(diǎn)20(W+1)等待向提供所接收的最后一個(gè)提供的節(jié)點(diǎn)20 (1)-20 (W)作出響應(yīng)直到節(jié)點(diǎn)20 (W+1)確定所有保留都成功還是有任何保留失敗。接收保留調(diào)用的所有節(jié)點(diǎn)20 (1)-20 (W)使用其相應(yīng)的目標(biāo)接口 14來(lái)對(duì)相應(yīng)的始 發(fā)者塊70 (1)-70 (W)調(diào)用保留操作。始發(fā)者塊70 (1)-70 (W)通過將成功或失敗指示符提供 給相應(yīng)的調(diào)用節(jié)點(diǎn)20 (1)-20 (W)來(lái)響應(yīng)保留調(diào)用。如果始發(fā)者塊70不再保存所提供的數(shù) 據(jù)或者所提供的數(shù)據(jù)由另一節(jié)點(diǎn)20 (未示出)保留,則始發(fā)者塊70用失敗指示來(lái)響應(yīng)該保 留調(diào)用。否則,始發(fā)者塊70用成功指示來(lái)響應(yīng)該保留調(diào)用。節(jié)點(diǎn)20 (1) -20 (W)響應(yīng)于從相應(yīng)的始發(fā)者塊70 (1) -70 (W)接收失敗指示符來(lái)檢測(cè) 到失敗的保留。節(jié)點(diǎn)20(1)-20(W)還可響應(yīng)于始發(fā)者塊70 (1)-70 (W)變?yōu)榕c相應(yīng)的節(jié)點(diǎn) 20 (1)-20 (W)斷開連接來(lái)檢測(cè)到失敗的保留。檢測(cè)到失敗的保留的每一節(jié)點(diǎn)20(1)-20(W) 用失敗指示符來(lái)響應(yīng)節(jié)點(diǎn)20 (W+1)的保留調(diào)用。從相應(yīng)的始發(fā)者塊70 (1)-70 (W)接收成功 指示符的每一節(jié)點(diǎn)20 (1)-20 (W)用成功指示符來(lái)響應(yīng)節(jié)點(diǎn)20 (W+1)的保留調(diào)用。節(jié)點(diǎn)20(W+1)響應(yīng)于從節(jié)點(diǎn)20(1)_20(W)接收失敗指示符或者響應(yīng)于節(jié)點(diǎn) 20 (1)-20 (W)中的任一個(gè)變?yōu)閿嚅_連接來(lái)檢測(cè)任何失敗的保留。如果節(jié)點(diǎn)20(W+1)檢測(cè) 到任何失敗的保留,則節(jié)點(diǎn)20 (W+1)使用其目標(biāo)接口 14來(lái)對(duì)用成功指示符響應(yīng)該保留 調(diào)用的所有節(jié)點(diǎn)20(1)-20(W)調(diào)用釋放操作。節(jié)點(diǎn)20(W+1)還將已推遲返回至提供節(jié) 點(diǎn)20(W+1)所接收的最后一個(gè)提供的節(jié)點(diǎn)20(1)-20(W)。響應(yīng)于接收到釋放調(diào)用,節(jié)點(diǎn) 20 (1)-20 (W)釋放成功的保留,并進(jìn)而對(duì)相應(yīng)的始發(fā)者塊70(1)-70(W)調(diào)用釋放操作。始發(fā) 者塊70(1)-70(W)響應(yīng)于從節(jié)點(diǎn)20 (1)-20 (W)接收到釋放調(diào)用來(lái)釋放成功的保留。如果節(jié)點(diǎn)20(W+1)檢測(cè)到所有保留都成功,則節(jié)點(diǎn)20(W+1)使用其目標(biāo)接口 14 來(lái)對(duì)除了提供節(jié)點(diǎn)20(W+1)所接收的最后一個(gè)提供的節(jié)點(diǎn)20(1)-20(W)之外的所有節(jié) 點(diǎn)20(1)-20(W)調(diào)用消費(fèi)操作。節(jié)點(diǎn)20(W+1)將已接受返回至提供最后一個(gè)提供的節(jié)點(diǎn) 20 (1) -20 (W),而該節(jié)點(diǎn)20 (1) -20 (W)進(jìn)而將已接受返回至相應(yīng)的始發(fā)者塊70 (1) -70 (W)。 接收到消費(fèi)調(diào)用的所有節(jié)點(diǎn)20(1)-20 (W)進(jìn)而使用其相應(yīng)的目標(biāo)接口 14來(lái)對(duì)相應(yīng)的始發(fā) 者塊70(1)-70(W)調(diào)用消費(fèi)操作。節(jié)點(diǎn)20(W+1)使用其源接口 12來(lái)將所組合的數(shù)據(jù)提供 到進(jìn)程40(W+1)中的觸發(fā)器塊70。觸發(fā)器塊70通過接受來(lái)自節(jié)點(diǎn)20 (W+1)的數(shù)據(jù)來(lái)作出 響應(yīng)以完成聯(lián)結(jié)操作。在另一實(shí)施例中,當(dāng)所有數(shù)據(jù)已在節(jié)點(diǎn)20(1)_20(W)處被保留或接受時(shí),節(jié)點(diǎn) 20(W+1)用布爾值來(lái)向進(jìn)程40(W+1)中的觸發(fā)器塊70發(fā)送信號(hào)。觸發(fā)器塊70檢索來(lái)自 節(jié)點(diǎn)20(1)-20(W)的數(shù)據(jù)。在該實(shí)施例中,節(jié)點(diǎn)20(W+1)將已接受返回至提供數(shù)據(jù)的節(jié)點(diǎn) 20 (1)-20 (W)中的最后一個(gè)。在其他實(shí)施例中,聯(lián)結(jié)操作可以在使用與始發(fā)者塊70和/或觸發(fā)器塊80的其他 組合進(jìn)行接口的源-目標(biāo)模式10的其他組合的數(shù)據(jù)流網(wǎng)絡(luò)32C中實(shí)現(xiàn)。圖10是示出包括聯(lián)結(jié)操作的進(jìn)程網(wǎng)絡(luò)94的一實(shí)施例的框圖。在圖10中,聯(lián)結(jié)操 作通過包括數(shù)據(jù)流網(wǎng)絡(luò)32C來(lái)在進(jìn)程40 (8)和進(jìn)程40 (9)和40 (10)之間實(shí)現(xiàn)。使用數(shù)據(jù) 流網(wǎng)絡(luò)32(,進(jìn)程40(4)接受從進(jìn)程40 (9)和40 (10)中的每一個(gè)提供給數(shù)據(jù)流網(wǎng)絡(luò)32C的 數(shù)據(jù)。進(jìn)程40(8)對(duì)數(shù)據(jù)執(zhí)行某些計(jì)算并使用實(shí)現(xiàn)發(fā)送操作的數(shù)據(jù)流網(wǎng)絡(luò)32E來(lái)將所得數(shù) 據(jù)發(fā)送給進(jìn)程40 (11)。以上參考圖5-10所示的發(fā)送、接收、選擇和聯(lián)結(jié)操作可在其他實(shí)施例中被組合成 更復(fù)雜的配置。
圖11是示出被配置成實(shí)現(xiàn)包括帶有進(jìn)程調(diào)度器的運(yùn)行時(shí)環(huán)境的計(jì)算機(jī)系統(tǒng)100 的一實(shí)施例的框圖。計(jì)算機(jī)系統(tǒng)100包括一個(gè)或多個(gè)處理器封裝102、存儲(chǔ)器系統(tǒng)104、零個(gè)或多個(gè)輸 入/輸出設(shè)備106、零個(gè)或多個(gè)顯示設(shè)備108、零個(gè)或多個(gè)外圍設(shè)備110、和零個(gè)或多個(gè)網(wǎng)絡(luò) 設(shè)備112。處理器封裝102、存儲(chǔ)器系統(tǒng)104、輸入/輸出設(shè)備106、顯示設(shè)備108、外圍設(shè)備 110和網(wǎng)絡(luò)設(shè)備112使用包括任何合適的類型、數(shù)量和配置的控制器、總線、接口、和/或其 他有線或無(wú)線連接的一組互連114來(lái)進(jìn)行通信。計(jì)算機(jī)系統(tǒng)100表示出于通用或?qū)S媚康亩渲玫娜魏魏线m的處理設(shè)備。計(jì)算機(jī) 系統(tǒng)100的示例包括服務(wù)器、個(gè)人計(jì)算機(jī)、膝上型計(jì)算機(jī)、圖形輸入板計(jì)算機(jī)、個(gè)人數(shù)字助 理(PDA)、移動(dòng)電話、和音頻/視頻設(shè)備。計(jì)算機(jī)系統(tǒng)100的組件(即,處理器封裝102、存 儲(chǔ)器系統(tǒng)104、輸入/輸出設(shè)備106、顯示設(shè)備108、外圍設(shè)備110、網(wǎng)絡(luò)設(shè)備112和互連114) 可包含在公共外殼(未示出)中或任何合適數(shù)量的獨(dú)立外殼(未示出)中。處理器封裝102包括硬件線程116(1)_116(X),其中X是大于或等于一的整數(shù)并 表示第X個(gè)硬件線程116。處理器封裝102中的每一硬件線程116被配置成訪問并執(zhí)行存 儲(chǔ)在存儲(chǔ)器系統(tǒng)104中的指令。這些指令可包括基本輸入輸入系統(tǒng)¢10 或固件(未示 出)、操作系統(tǒng)(OS) 120、資源管理層121、運(yùn)行時(shí)平臺(tái)122、和應(yīng)用程序124。每一硬件線程 116可結(jié)合或響應(yīng)于從輸入/輸出設(shè)備106、顯示設(shè)備108、外圍設(shè)備110、和/或網(wǎng)絡(luò)設(shè)備 112接收到的信息來(lái)執(zhí)行指令。計(jì)算機(jī)系統(tǒng)100引導(dǎo)并執(zhí)行OS 120。OS 120包括可由硬件線程116執(zhí)行來(lái)管理 計(jì)算機(jī)系統(tǒng)100的組件并提供允許應(yīng)用程序1 訪問并使用該組件的一組功能的指令。在 一個(gè)實(shí)施例中,OS 120是Windows操作系統(tǒng)。在其他實(shí)施例中,OS 120是適于和計(jì)算機(jī)系 統(tǒng)100 —起使用的另一操作系統(tǒng)。資源管理層121包括可結(jié)合OS 120來(lái)執(zhí)行以分配包括硬件線程116的計(jì)算機(jī)系 統(tǒng)100的資源的指令。資源管理層121可作為對(duì)一個(gè)或多個(gè)應(yīng)用程序IM可用的功能庫(kù)或 者作為OS 120的一個(gè)集成部分被包括在計(jì)算機(jī)系統(tǒng)100中。運(yùn)行時(shí)平臺(tái)122包括可結(jié)合OS 120和資源管理層121來(lái)執(zhí)行以生成運(yùn)行時(shí)環(huán)境 并向應(yīng)用程序IM提供運(yùn)行時(shí)功能的指令。這些運(yùn)行時(shí)功能包括調(diào)度器功能。在被調(diào)用 時(shí),調(diào)度器功能創(chuàng)建用于調(diào)度諸如應(yīng)用程序IM等的程序的進(jìn)程以供一個(gè)或多個(gè)硬件線程 116(1)-116⑴執(zhí)行的調(diào)度器。運(yùn)行時(shí)功能可作為應(yīng)用程序IM的一部分、作為對(duì)一個(gè)或多 個(gè)應(yīng)用程序1 可用的功能庫(kù)、或者作為OS 120和/或資源管理層121的一個(gè)集成部分被 包括在計(jì)算機(jī)系統(tǒng)100中。每一應(yīng)用程序IM包括可結(jié)合OS 120、資源管理層121和/或運(yùn)行時(shí)平臺(tái)122來(lái) 執(zhí)行以使計(jì)算機(jī)系統(tǒng)100執(zhí)行所需操作的指令。每一應(yīng)用程序IM表示可與運(yùn)行時(shí)平臺(tái) 122所提供的調(diào)度器一起執(zhí)行的一個(gè)或多個(gè)程序。存儲(chǔ)器系統(tǒng)104包括被配置成存儲(chǔ)指令和數(shù)據(jù)的任何合適的類型、數(shù)量和配置的 易失性或非易失性存儲(chǔ)設(shè)備。存儲(chǔ)器系統(tǒng)104的存儲(chǔ)設(shè)備表示存儲(chǔ)包括OS 120、資源管理 層121、運(yùn)行時(shí)平臺(tái)122和應(yīng)用程序IM的計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。這些 指令可由計(jì)算機(jī)系統(tǒng)執(zhí)行來(lái)執(zhí)行此處描述的OS 120、資源管理層121、運(yùn)行時(shí)平臺(tái)122和應(yīng) 用程序124的功能和方法。存儲(chǔ)器系統(tǒng)104中的存儲(chǔ)設(shè)備的示例包括硬盤驅(qū)動(dòng)器、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、閃存驅(qū)動(dòng)器和卡、以及磁盤和光盤。存儲(chǔ)器系統(tǒng)104存儲(chǔ)從處理器封裝102、輸入/輸出設(shè)備106、顯示設(shè)備108、外圍 設(shè)備110和網(wǎng)絡(luò)設(shè)備112接收的指令和數(shù)據(jù)。存儲(chǔ)器系統(tǒng)104將存儲(chǔ)的指令和數(shù)據(jù)提供給 處理器封裝102、輸入/輸出設(shè)備106、顯示設(shè)備108、外圍設(shè)備110和網(wǎng)絡(luò)設(shè)備112。輸入/輸出設(shè)備106包括被配置成將指令或數(shù)據(jù)從用戶輸入到計(jì)算機(jī)系統(tǒng)100并 將指令或數(shù)據(jù)從計(jì)算機(jī)系統(tǒng)100輸出到用戶的任何合適的類型、數(shù)量和配置的輸入/輸出 設(shè)備。輸入/輸出設(shè)備106的示例包括鍵盤、鼠標(biāo)、觸摸墊、觸摸屏、按鈕、撥盤、旋鈕和開關(guān)。顯示設(shè)備108包括被配置成向計(jì)算機(jī)系統(tǒng)100的用戶輸出文本和/或圖形信息的 任何合適的類型、數(shù)量和配置的顯示設(shè)備。顯示設(shè)備108的示例包括監(jiān)視器、顯示屏和投影 儀。外圍設(shè)備110包括被配置成用計(jì)算機(jī)系統(tǒng)100中的一個(gè)或多個(gè)其他組件來(lái)操作以 執(zhí)行通用或?qū)S锰幚砉δ艿娜魏魏线m的類型、數(shù)量和配置的外圍設(shè)備。網(wǎng)絡(luò)設(shè)備112包括被配置成允許計(jì)算機(jī)系統(tǒng)100通過一個(gè)或多個(gè)網(wǎng)絡(luò)(未示出) 進(jìn)行通信的任何合適的類型、數(shù)量和配置的網(wǎng)絡(luò)設(shè)備。網(wǎng)絡(luò)設(shè)備112可根據(jù)任何合適的網(wǎng) 絡(luò)協(xié)議和/或配置來(lái)操作以允許計(jì)算機(jī)系統(tǒng)100將信息發(fā)送給網(wǎng)絡(luò)或者從網(wǎng)絡(luò)接收信息。在圖11的實(shí)施例中,OS 120、資源管理層121、運(yùn)行時(shí)平臺(tái)122和應(yīng)用程序124中 的一個(gè)或多個(gè)可包括帶有使用如上參考圖1A-10所描述的包括任何合適數(shù)量的源-目標(biāo)模 式10的數(shù)據(jù)流網(wǎng)絡(luò)32來(lái)連接的進(jìn)程40的進(jìn)程網(wǎng)絡(luò)。以上實(shí)施例提供了用于按通用、靈活和可擴(kuò)展的方式將進(jìn)程連接到進(jìn)程網(wǎng)絡(luò)中的 被稱為源-目標(biāo)模式的合成模型。該模型允許常見進(jìn)程代數(shù)構(gòu)造與數(shù)據(jù)流網(wǎng)絡(luò)組合來(lái)形成 進(jìn)程網(wǎng)絡(luò)。諸如發(fā)送、接收、選擇和聯(lián)結(jié)等典型的進(jìn)程代數(shù)操作可用合成模型來(lái)表達(dá)以形成 提供進(jìn)程之間的完全互操作進(jìn)程代數(shù)操作的數(shù)據(jù)流網(wǎng)絡(luò)。該模型可應(yīng)用于大量簡(jiǎn)單數(shù)據(jù)流 網(wǎng)絡(luò)以及更復(fù)雜的數(shù)據(jù)流網(wǎng)絡(luò)。該模型還允許松連接的進(jìn)程網(wǎng)絡(luò)。在松連接的進(jìn)程網(wǎng)絡(luò)的情況下,進(jìn)程可能對(duì)該 進(jìn)程正在交互的其他進(jìn)程不具有或者具有有限的知識(shí)。相反,進(jìn)程知道與其他進(jìn)程的連接 點(diǎn)以及這些連接點(diǎn)的意義。松連接的進(jìn)程網(wǎng)絡(luò)可用于實(shí)現(xiàn)高度可維護(hù)程序并允許基于數(shù)據(jù)流構(gòu)造的更復(fù)雜 和高級(jí)的路由邏輯。無(wú)源數(shù)據(jù)流網(wǎng)絡(luò)與有源進(jìn)程用作中介相比可更高效地將數(shù)據(jù)從一個(gè)進(jìn) 程路由到另一進(jìn)程。盡管此處說明并描述了具體實(shí)施例,但本領(lǐng)域技術(shù)人員可以理解,可用各種替換 和/或等價(jià)實(shí)現(xiàn)來(lái)替換此處示出并描述的具體實(shí)施例而不背離本發(fā)明的范圍。本申請(qǐng)旨在 覆蓋此處討論的具體實(shí)施例的任何改編或變型。因此,本發(fā)明旨在僅由權(quán)利要求書及其等 效方案來(lái)限制。
權(quán)利要求
1.一種在計(jì)算機(jī)系統(tǒng)(100)中執(zhí)行的方法,所述方法包括用第一目標(biāo)接口(14)調(diào)用第一源接口(1 中的第一鏈接操作,所述第一鏈接操作在 所述第一源操作和所述第一目標(biāo)接口之間創(chuàng)建第一鏈接(16);調(diào)用所述第一目標(biāo)接口中的第一提供操作來(lái)將第一數(shù)據(jù)從所述第一源接口提供到所 述第一目標(biāo)接口 ;以及在調(diào)用所述第一提供操作之后用所述第一目標(biāo)接口調(diào)用所述第一源接口中的第一保 留操作。
2.如權(quán)利要求1所述的方法,其特征在于,還包括響應(yīng)于所述第一提供操作將已推遲從所述第一目標(biāo)接口返回至所述第一源接口 ;以及 在返回已推遲之后用所述第一目標(biāo)接口調(diào)用所述第一源接口中的所述第一保留操作 來(lái)為所述第一目標(biāo)接口保留所述第一數(shù)據(jù)。
3.如權(quán)利要求2所述的方法,其特征在于,還包括在調(diào)用所述第一保留操作之后用所述第一目標(biāo)接口調(diào)用所述第一源接口中的消費(fèi)操 作來(lái)用所述第一目標(biāo)接口消費(fèi)所述第一數(shù)據(jù)。
4.如權(quán)利要求2所述的方法,其特征在于,還包括在調(diào)用所述第一保留操作之后用所述第一目標(biāo)接口調(diào)用所述第一源接口中的釋放操 作來(lái)釋放所述第一數(shù)據(jù)。
5.如權(quán)利要求1所述的方法,其特征在于,所述第一源接口至少包括所述第一鏈接操 作、所述第一保留操作、釋放操作和消費(fèi)操作。
6.如權(quán)利要求1所述的方法,其特征在于,還包括用第一目標(biāo)接口調(diào)用第二源接口(1 中的第二鏈接操作,所述第二鏈接操作在所述 第二源操作和所述第一目標(biāo)接口之間創(chuàng)建第二鏈接(16);調(diào)用所述第一目標(biāo)接口中的第二提供操作來(lái)將第二數(shù)據(jù)從所述第二源接口提供到所 述第一目標(biāo)接口 ;以及在調(diào)用所述第二提供操作之后用所述第一目標(biāo)接口調(diào)用所述第二源接口中的第二保 留操作。
7.如權(quán)利要求6所述的方法,其特征在于,還包括在調(diào)用所述第一保留操作之后用所述第一目標(biāo)接口調(diào)用所述第一源接口中的第一消 費(fèi)操作來(lái)用所述第一目標(biāo)接口消費(fèi)所述第一數(shù)據(jù);以及在調(diào)用所述第二保留操作之后用所述第一目標(biāo)接口調(diào)用所述第二源接口中的第二消 費(fèi)操作來(lái)用所述第一目標(biāo)接口消費(fèi)所述第二數(shù)據(jù)。
8.如權(quán)利要求6所述的方法,其特征在于,還包括在調(diào)用所述第一保留操作之后用所述第一目標(biāo)接口調(diào)用所述第一源接口中的第一釋 放操作來(lái)釋放所述第一數(shù)據(jù);以及在調(diào)用所述第二保留操作之后用所述第一目標(biāo)接口調(diào)用所述第二源接口中的第二釋 放操作來(lái)釋放所述第二數(shù)據(jù)。
9.如權(quán)利要求6所述的方法,其特征在于,所述第二源接口至少包括所述第二鏈接操 作、所述第二保留操作、釋放操作和消費(fèi)操作。
10.一種存儲(chǔ)計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)(120),所述計(jì)算機(jī)可執(zhí)行指令在由計(jì)算機(jī)系統(tǒng)(100)執(zhí)行時(shí)執(zhí)行一種方法,所述方法包括使用至少包括鏈接、提供、保留、釋放和消費(fèi)操作的第一源-目標(biāo)模式(10)來(lái)將第一數(shù) 據(jù)從第一進(jìn)程GO)提供到數(shù)據(jù)流網(wǎng)絡(luò)(32);使用至少包括所述鏈接、提供、保留、釋放和消費(fèi)操作的第二源-目標(biāo)模式(10)來(lái)將所 述第一數(shù)據(jù)從所述數(shù)據(jù)流網(wǎng)絡(luò)提供到第二進(jìn)程GO)。
11.如權(quán)利要求10所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其特征在于,所述方法還包括使用至少包括所述鏈接、提供、保留、釋放和消費(fèi)操作的第三源-目標(biāo)模式(10)來(lái)將第 二數(shù)據(jù)從第三進(jìn)程GO)提供到所述數(shù)據(jù)流網(wǎng)絡(luò);以及響應(yīng)于在將所述第二數(shù)據(jù)提供到所述數(shù)據(jù)流網(wǎng)絡(luò)之前將所述第一數(shù)據(jù)提供到所述數(shù) 據(jù)流網(wǎng)絡(luò),使用所述第二源-目標(biāo)模式來(lái)將所述第一數(shù)據(jù)從所述數(shù)據(jù)流網(wǎng)絡(luò)提供到所述第 二進(jìn)程。
12.如權(quán)利要求10所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其特征在于,所述方法還包括使用至少包括所述鏈接、提供、保留、釋放和消費(fèi)操作的第三源-目標(biāo)模式(10)來(lái)將第 二數(shù)據(jù)從第三進(jìn)程GO)提供到所述數(shù)據(jù)流網(wǎng)絡(luò);以及在將所述第一數(shù)據(jù)和所述第二數(shù)據(jù)提供到所述數(shù)據(jù)流網(wǎng)絡(luò)之后,使用所述第二源-目 標(biāo)模式來(lái)將所述第一數(shù)據(jù)和所述第二數(shù)據(jù)從所述數(shù)據(jù)流網(wǎng)絡(luò)提供到所述第二進(jìn)程。
13.如權(quán)利要求10所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其特征在于,所述方法還包括 在將所述第一數(shù)據(jù)從所述數(shù)據(jù)流網(wǎng)絡(luò)提供到所述第二進(jìn)程之前變換所述數(shù)據(jù)流網(wǎng)絡(luò)中的所述第一數(shù)據(jù)。
14.如權(quán)利要求10所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其特征在于,所述方法還包括 在將所述第一數(shù)據(jù)從所述數(shù)據(jù)流網(wǎng)絡(luò)提供到所述第二進(jìn)程之前暫停所述第二進(jìn)程。
15.如權(quán)利要求10所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其特征在于,所述方法還包括使用至少包括所述鏈接、提供、保留、釋放和消費(fèi)操作的第三源-目標(biāo)模式(10)來(lái)將所 述第一數(shù)據(jù)從所述數(shù)據(jù)流網(wǎng)絡(luò)提供到第三進(jìn)程GO)。
全文摘要
提供了用于按通用、靈活和可擴(kuò)展的方式將進(jìn)程連接到進(jìn)程網(wǎng)絡(luò)中的被稱為源-目標(biāo)模式的合成模型。該模型允許常見進(jìn)程代數(shù)構(gòu)造與數(shù)據(jù)流網(wǎng)絡(luò)組合來(lái)形成進(jìn)程網(wǎng)絡(luò)。進(jìn)程代數(shù)操作可用合成模型來(lái)表達(dá)以形成提供進(jìn)程之間的完全互操作進(jìn)程代數(shù)操作的數(shù)據(jù)流網(wǎng)絡(luò)。
文檔編號(hào)G06F15/16GK102047240SQ200980121239
公開日2011年5月4日 申請(qǐng)日期2009年5月7日 優(yōu)先權(quán)日2008年6月2日
發(fā)明者D·卡拉漢, N·古斯塔夫松 申請(qǐng)人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1