欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

處理控制環(huán)境中的分布式計算的制作方法

文檔序號:11948374閱讀:460來源:國知局
處理控制環(huán)境中的分布式計算的制作方法與工藝

處理控制裝置監(jiān)測并物理上修改動態(tài)系統(tǒng)或處理中的運行狀態(tài)。通過使用備用組件,在處理控制實現(xiàn)中提供冗余和增加的穩(wěn)定性。在傳統(tǒng)的處理控制實現(xiàn)中,備用組件必須是其相應(yīng)主組件的精確復制,以提供不中斷的可接受冗余。主組件和備用組件之間的這種一對一的冗余關(guān)系使處理控制領(lǐng)域中出現(xiàn)多種問題。例如,這增加了處理控制系統(tǒng)的成本,因為每個主組件需要一備用組件。在這種一對一冗余上編寫的應(yīng)用可能需要專門編寫以在冗余平臺上執(zhí)行來完全支持冗余方案。進一步地,當所述備用組件的相應(yīng)主組件正常運行時,該一對一冗余關(guān)系可能導致備用組件的不使用。增加可用處理控制系統(tǒng)資源的數(shù)量還需要增加額外的主組件和相應(yīng)的備用組件兩者,這導致增加的成本和復雜性。此外,在傳統(tǒng)實現(xiàn)中改變控制系統(tǒng)組件的配置需要費力的為組件連接重新布線。換句話說,這些傳統(tǒng)系統(tǒng)是剛性的,并且無法適應(yīng)不斷變化的系統(tǒng)需求。



技術(shù)實現(xiàn)要素:

本發(fā)明的方面克服現(xiàn)有技術(shù)的局限性,并且通過減少所需冗余硬件的數(shù)量以及通過新的算法方法來改善處理控制和自動化領(lǐng)域。通過減少與為了滿足變化的系統(tǒng)需求而重新配置組件相關(guān)聯(lián)的時間量和成本提供了附加利益。在本發(fā)明的一個方面,提供了一種分布式計算環(huán)境,使得I/O裝置可以由分布式計算環(huán)境內(nèi)的所有控制器使用。此外,本發(fā)明的方面利用分配算法來在可用計算節(jié)點之間分發(fā)數(shù)據(jù)和應(yīng)用,所述計算節(jié)點使用數(shù)據(jù)庫來存儲關(guān)鍵的執(zhí)行信息,以便由替代的計算節(jié)點即時接管。優(yōu)選地,不同的算法被實現(xiàn),可以減輕分布式計算環(huán)境中死區(qū)時間的影響。

在一個方面,一種用于提供處理控制的系統(tǒng)包括通信信道和多個計算節(jié)點,每個計算節(jié)點連接到通信信道。所述系統(tǒng)還包括一個或多個執(zhí)行節(jié)點,所述執(zhí)行節(jié)點提供一組連接到通信信道的執(zhí)行服務(wù)。計算節(jié)點和執(zhí)行服務(wù)包括分布式計算環(huán)境。在某些情況下,這些計算節(jié)點可以改變所采用的操作系統(tǒng)的類型或版本與硬件兩者。然而,計算節(jié)點合作并且可以彼此備份應(yīng)用,即使它們是不同的平臺。該系統(tǒng)的至少一個計算節(jié)點還包括輸入/輸出(I/O)應(yīng)用,其提供處理控制裝置和通信信道之間的電子數(shù)據(jù)通路。

在另一個方面,一種控制處理的設(shè)備包括電子數(shù)據(jù)通信信道和多個計算節(jié)點,每個計算節(jié)點連接到通信信道。至少一個計算節(jié)點實現(xiàn)處理控制應(yīng)用。此外,所述設(shè)備包括傳感器以及致動器,所述傳感器連接到通信信道,并且提供代表處理的物理值的電子數(shù)據(jù),所述致動器連接到通信信道,并且接收代表處理的物理值的操作的電子數(shù)據(jù)。所述設(shè)備還包括執(zhí)行節(jié)點,其連接到通信信道,并且經(jīng)由通信信道啟動處理控制應(yīng)用的至少一個子集在一個或多個其他計算節(jié)點之間的傳輸。

在另一個方面,一種在分布式處理控制環(huán)境中分發(fā)數(shù)據(jù)的方法包括通過第一計算節(jié)點發(fā)送一個或多個電子數(shù)據(jù)集到中央數(shù)據(jù)存儲區(qū)。該數(shù)據(jù)集代表第一計算節(jié)點內(nèi)執(zhí)行的一個或多個應(yīng)用的當前狀態(tài)、控制數(shù)據(jù)和I/O數(shù)據(jù)中的至少一個。此外,所述方法包括在由執(zhí)行服務(wù)管理器檢測到第一計算節(jié)點的損失時通過第二計算節(jié)點從中央數(shù)據(jù)存儲區(qū)接收至少一個數(shù)據(jù)集。所述方法還包括通過第二計算節(jié)點執(zhí)行一個或多個應(yīng)用,每個應(yīng)用對應(yīng)于第一計算節(jié)點的應(yīng)用。第二計算節(jié)點的應(yīng)用將所接收的至少一個數(shù)據(jù)集轉(zhuǎn)變成代表處理變化的數(shù)據(jù)。第二計算節(jié)點發(fā)送代表變化的數(shù)據(jù)到處理控制裝置,并且該處理控制裝置根據(jù)所發(fā)送的數(shù)據(jù)來操作該處理。

實現(xiàn)本發(fā)明的各個方面的架構(gòu)的附帶利益是減少與配置控制應(yīng)用相關(guān)的工程計劃。例如,該架構(gòu)允許與任何控制器共享I/O數(shù)據(jù),從而消除控制應(yīng)用和I/O模塊之間的許多工程協(xié)調(diào)。這克服了通過繼電器柜和編組柜路由傳感器信號的所有中間接線,根據(jù)傳統(tǒng)架構(gòu),通常需要上述方式來配置傳感器I/O數(shù)據(jù)指向I/O模塊和控制器。

實現(xiàn)本發(fā)明的各方面的架構(gòu)的長期利益是硬件的簡單演進。當架構(gòu)工作在不同的硬件上時,具有當前組件的新硬件可以很容易地取代較舊的、過時的硬件。

本發(fā)明內(nèi)容被提供用來以簡化形式介紹概念的選擇,所述概念在下面的詳細描述中進一步描述。本發(fā)明內(nèi)容不是為了確定要求保護主題的主要特征和本質(zhì)特征,也不是為了用作輔助確定所要求保護主題的范圍。

其他特征部分是顯而易見的,部分在下文中指出。

附圖說明

圖1是現(xiàn)有技術(shù)的級聯(lián)控制連接的圖。

圖2是根據(jù)本發(fā)明實施例的硬件組件的示例性架構(gòu)的圖。

圖3A是根據(jù)本發(fā)明實施例的無狀態(tài)、事件驅(qū)動應(yīng)用執(zhí)行操作的流程圖。

圖3B是根據(jù)本發(fā)明實施例的無狀態(tài)、持久應(yīng)用執(zhí)行操作的流程圖。

圖4A是示出根據(jù)本發(fā)明實施例的硬件組件的示例性架構(gòu)的數(shù)據(jù)遷移和分布的圖。

圖4B是根據(jù)本發(fā)明實施例的數(shù)據(jù)遷移和分布操作的流程圖。

圖5A是示出根據(jù)本發(fā)明實施例的硬件組件的示例性架構(gòu)的代碼遷移和分布的圖。

圖5B是根據(jù)本發(fā)明實施例的代碼遷移和分布操作的流程圖。

圖6是根據(jù)本發(fā)明實施例的利用異構(gòu)輸入/輸出連接的硬件組件的示例性架構(gòu)的圖。

圖7是根據(jù)本發(fā)明實施例的硬件組件的示例性架構(gòu)的圖。

圖8是根據(jù)本發(fā)明實施例的硬件組件的示例性架構(gòu)的圖。

圖9是根據(jù)本發(fā)明實施例的硬件組件的示例性架構(gòu)的圖。

在整個附圖中,相應(yīng)的參考符號表示相應(yīng)的部件。

具體實施方式

圖1示出了傳統(tǒng)的級聯(lián)控制回路。級聯(lián)控制回路包括監(jiān)督模塊10、控制模塊12-A和12-B,以及輸入/輸出(I/O)模塊16-A和16-B。每個控制模塊12-A和12-B分別包括控制應(yīng)用14-A和14-B??刂颇K12-A直接連接到I/O模塊16-A和16-B??刂颇K12-A還連接到控制模塊12-B,從而形成級聯(lián)控制回路。I/O模塊16-A連接到傳感器18并且I/O模塊16-B連接到泵20。在這種方式下,由于直接連接,傳感器18和泵20依賴于控制模塊12-A和控制應(yīng)用14-A。

與圖1的傳統(tǒng)級聯(lián)控制回路相關(guān)聯(lián)的顯著缺點是應(yīng)用之間的對等訂閱的管理。例如,當控制模塊12-A進入故障狀態(tài)時,控制應(yīng)用14-A到不同的控制模塊的遷移需要所有連接被重新建立來作為遷移的一部分。換句話說,故障切換機制將需要從控制模塊12-A手動地斷開I/O模塊16-A和16-B的連接,并將他們重新連接到不同的控制模塊。根據(jù)這種傳統(tǒng)的實現(xiàn),如果級聯(lián)回路或回路內(nèi)的塊分散在多個控制模塊中,那么會導致對控制的負面影響。

圖1的傳統(tǒng)級聯(lián)控制回路的另一個缺點是控制模塊12-B和控制應(yīng)用14-B對控制模塊12-A和控制應(yīng)用14-A的依賴。例如,當控制模塊12-A進入故障狀態(tài)時,監(jiān)督模塊10不再具有與控制模塊12-B或控制應(yīng)用14-B的連接。為了恢復連接,故障切換機制將需要利用替代物來替換控制模塊12-A的故障硬件,或從控制模塊12-A手動地斷開控制模塊12-B的連接并且將其重新連接到監(jiān)督模塊10。

圖2示出了根據(jù)本發(fā)明實施例的處理控制計算系統(tǒng)100。在所示的實施例中,處理控制計算系統(tǒng)100包括在用于流體處理系統(tǒng)的處理控制環(huán)境內(nèi),該流體處理系統(tǒng)還包括泵138,傳感器140和閥142。處理控制計算系統(tǒng)100包括執(zhí)行節(jié)點110,通信信道120,以及多個計算節(jié)點130。執(zhí)行節(jié)點110包括執(zhí)行服務(wù)管理器112,控制數(shù)據(jù)庫114,輸入/輸出(I/O)數(shù)據(jù)庫116,以及通信接口118??刂茟?yīng)用132-A包括在計算節(jié)點130-A中,并且控制應(yīng)用132-D包括在計算節(jié)點130-D中。I/O應(yīng)用134-B包括在計算節(jié)點130-B中,并且I/O應(yīng)用134-F包括在計算節(jié)點130-F中。在其他示例性實施例中,控制應(yīng)用132和/或I/O應(yīng)用134通過計算節(jié)點130由計算引擎來執(zhí)行,如本文的進一步描述。在另一個實施例中,系統(tǒng)100是無邊界的,其中執(zhí)行服務(wù)管理器112和數(shù)據(jù)庫(例如,控制數(shù)據(jù)庫114,I/O數(shù)據(jù)庫116等)分布在計算節(jié)點130之間。在一個方面,如本文的進一步描述,系統(tǒng)100的功能由離散的應(yīng)用來提供,且不是單片形象。在另一個方面,系統(tǒng)100是可擴展的。在又一個方面,系統(tǒng)100提供中央數(shù)據(jù)存儲區(qū)作為數(shù)據(jù)分發(fā)機制,這使得數(shù)據(jù)對于所有節(jié)點是便利可用的。在這個方面,中央數(shù)據(jù)存儲區(qū)包括多種數(shù)據(jù)類型,包括但不限于,用于處理控制的數(shù)據(jù)、對象、關(guān)系等。

在處理控制計算系統(tǒng)100中,計算節(jié)點130經(jīng)由通信信道120通信地連接到通信接口118。通過這些通信連接,控制應(yīng)用132-A和132-D與控制數(shù)據(jù)庫114進行通信,并且I/O應(yīng)用134-B和134-F與I/O數(shù)據(jù)庫116進行通信。執(zhí)行服務(wù)管理器112、控制數(shù)據(jù)庫114、和I/O數(shù)據(jù)庫116通信地連接到通信接口118。然而,在另一個實施例中,執(zhí)行服務(wù)管理器112、控制數(shù)據(jù)庫114、和I/O數(shù)據(jù)庫116通信地連接到通信信道120。執(zhí)行服務(wù)管理器112經(jīng)由通信接口118和通信信道120與計算節(jié)點130、控制應(yīng)用132和I/O應(yīng)用134進行通信。I/O應(yīng)用134-B和134-F通信地連接到泵138、傳感器140和閥142。所述通信連接可以包括根據(jù)模擬、數(shù)字、脈沖、串行和/或并行技術(shù)(例如,協(xié)議)操作的通信連接。此外,多于一個通信協(xié)議可以同時被使用。例如,I/O應(yīng)用134-B使用協(xié)議進行通信,而I/O應(yīng)用134-F使用基礎(chǔ)現(xiàn)場總線通信協(xié)議進行通信。

在一個方面,處理控制計算系統(tǒng)100適于在計算節(jié)點130之間分發(fā)執(zhí)行負載。在一個實施例中,處理控制計算系統(tǒng)100適于作為單個通用I/O模塊來運行。處理控制計算系統(tǒng)100可以適應(yīng)計算節(jié)點130的添加和移除。有利的是,處理控制計算系統(tǒng)100的架構(gòu)通過在計算節(jié)點130之間遷移控制來支持負載均衡和故障切換。粒度控制以及對控制應(yīng)用132和I/O應(yīng)用134的分片能力,使得可以在具有空閑容量的其他計算節(jié)點130之間分發(fā)在故障計算節(jié)點130上執(zhí)行的控制應(yīng)用132和I/O應(yīng)用134。在一個方面,處理控制計算系統(tǒng)100充當數(shù)據(jù)存儲區(qū),其允許網(wǎng)絡(luò)的分離(例如,分離控制和I/O網(wǎng)絡(luò))。

在另一個方面,處理控制計算系統(tǒng)100適于控制處理中的變量,所述變量改變或改進原材料以得到最終產(chǎn)品。所述處理包括但不限于,在化學制品、石油和天然氣、食品和飲料、藥物、水處理和電力行業(yè)中的處理。例如,處理控制計算系統(tǒng)100控制諸如一種配料與另一種配料的比例、材料的溫度、配料混合的怎樣以及保持材料的壓力等因素。

進一步參照圖2,執(zhí)行節(jié)點110適于提供共享數(shù)據(jù)、數(shù)據(jù)處理任務(wù)和其他服務(wù)或資源。在一個實施例中,執(zhí)行節(jié)點110包括由單個物理計算裝置或多個物理計算裝置提供的服務(wù)(例如,執(zhí)行服務(wù)管理器112、控制數(shù)據(jù)庫114、I/O數(shù)據(jù)庫116等)集合(即,分布式執(zhí)行服務(wù))。在一個方面,執(zhí)行節(jié)點110提供數(shù)據(jù)和/或連接聚合和聯(lián)合能力。例如,通過存儲由一個或多個計算節(jié)點130通過通信接口118和通信信道120提供的I/O和控制數(shù)據(jù),執(zhí)行節(jié)點110輔助數(shù)據(jù)的合成(即,聚合)。作為另一個示例,執(zhí)行節(jié)點110有助于把在一個或多個計算節(jié)點130或控制數(shù)據(jù)庫114中產(chǎn)生的數(shù)據(jù)通過通信接口118和通信信道120傳輸?shù)搅硪粋€計算節(jié)點130或控制數(shù)據(jù)庫114(即,聯(lián)合)。在一種形式中,整個聚合數(shù)據(jù)集合被聯(lián)合輸出到計算節(jié)點130,而在另一種形式中,僅聚合數(shù)據(jù)的相關(guān)子集被聯(lián)合輸出到計算節(jié)點130。

根據(jù)本發(fā)明的其他方面,圖2中的執(zhí)行節(jié)點110監(jiān)控計算節(jié)點130以確定當前狀態(tài)和/或計算負載。例如,執(zhí)行節(jié)點110監(jiān)控計算節(jié)點130-A以確定其是否處于指示即將發(fā)生故障的狀態(tài)。此外,根據(jù)本發(fā)明的方面,執(zhí)行節(jié)點110被配置用于監(jiān)控由計算節(jié)點130-A利用的計算資源的量。在又一個方面,當其中一個計算節(jié)點130發(fā)生故障時,執(zhí)行節(jié)點110啟動數(shù)據(jù)遷移。例如,如下面進一步介紹的,當節(jié)點130-A即將或已進入故障狀態(tài)時,執(zhí)行節(jié)點110促進數(shù)據(jù)從計算節(jié)點130-A到計算節(jié)點130-D的遷移。執(zhí)行節(jié)點110還可以被配置為提供服務(wù)管理。在一個示例性實施例中,服務(wù)管理包括部署應(yīng)用(例如,控制應(yīng)用132和I/O應(yīng)用134)到一個或多個計算節(jié)點130。在另一個示例性實施例中,服務(wù)管理包括應(yīng)用(例如,控制應(yīng)用132和I/O應(yīng)用134)的狀態(tài)管理。

再次參照圖2,執(zhí)行節(jié)點110可以被實施為計算機可執(zhí)行指令,其存儲在非臨時性計算機可讀介質(zhì)中,例如作為服務(wù)器運行的計算機、嵌入式設(shè)備、或單片機(例如,樹莓派)。然而,本領(lǐng)域技術(shù)人員可以理解的是,執(zhí)行節(jié)點110還可以被實施為數(shù)字或模擬電子電路。在另一個實施例中,執(zhí)行節(jié)點110被提供在遠離計算節(jié)點130的物理位置的物理位置。在又一個實施例中,執(zhí)行節(jié)點110的功能的高可用性通過利用多于一個執(zhí)行節(jié)點110和/或包括執(zhí)行節(jié)點110的復制組件來提供。

圖2中的執(zhí)行服務(wù)管理器112適于在計算節(jié)點130之間分發(fā)控制應(yīng)用132和I/O應(yīng)用134。這種分發(fā)可以由執(zhí)行服務(wù)管理器112經(jīng)由通信信道120發(fā)送和接收控制信號來實現(xiàn)。實施本發(fā)明的方面的執(zhí)行服務(wù)管理器112可配置用于檢測一個或多個節(jié)點130的故障或移除。在另一個實施例中,執(zhí)行服務(wù)管理器112適于檢測添加的或最近激活的計算節(jié)點130。在又一個實施例中,執(zhí)行服務(wù)管理器112適于激活排隊的控制應(yīng)用132和/或I/O應(yīng)用134以由計算節(jié)點130執(zhí)行。有利地,執(zhí)行服務(wù)管理器112為處理控制計算系統(tǒng)100提供靈活性,并且允許擴展重負載系統(tǒng)而不破壞現(xiàn)有控制。根據(jù)一個示例性實施例,執(zhí)行服務(wù)管理器112管理部分處理控制計算系統(tǒng),例如,在一些實施例中其可以被稱為云環(huán)境。

執(zhí)行服務(wù)管理器112可以被實施為計算機可執(zhí)行指令,所述計算機可執(zhí)行指令存儲在非臨時性計算機可讀介質(zhì)中,例如作為服務(wù)器運行的計算機。在另一個實施例中,執(zhí)行服務(wù)管理器112被實施為數(shù)字或模擬電子電路。在一個實施例中,執(zhí)行服務(wù)管理器112被實施為在執(zhí)行節(jié)點110上執(zhí)行的計算機可執(zhí)行指令。在另一個實施例中,執(zhí)行服務(wù)管理器112被實施為在計算節(jié)點130上執(zhí)行的計算機可執(zhí)行指令。在又一個示例性實施例中,執(zhí)行服務(wù)管理器112被實施為在多個執(zhí)行節(jié)點110和/或計算節(jié)點130上執(zhí)行的計算機可執(zhí)行指令,如本文進一步描述的。

再次參照圖2,控制數(shù)據(jù)庫114適于在非臨時性計算機可讀介質(zhì)中存儲計算機可讀控制數(shù)據(jù)。包括狀態(tài)信息的計算機可讀控制數(shù)據(jù)例如代表控制應(yīng)用132和/或處理控制裝置(包括現(xiàn)場裝置,例如泵138、傳感器140、和閥142)的物理狀態(tài)。控制數(shù)據(jù)庫114還適于使存儲的數(shù)據(jù)可用于計算節(jié)點130。在一個方面,控制數(shù)據(jù)庫114緩解將所有控制數(shù)據(jù)連續(xù)不斷地發(fā)布到每個計算節(jié)點130的需求。在另一個方面,控制數(shù)據(jù)庫114適于作為數(shù)據(jù)存儲,其允許把由控制數(shù)據(jù)庫114和控制應(yīng)用132-A、132-D組成的控制網(wǎng)絡(luò)從由I/O數(shù)據(jù)庫116和I/O應(yīng)用134-B、134-F組成的I/O網(wǎng)絡(luò)中分離出來。

仍參照圖2,I/O數(shù)據(jù)庫116適于在非臨時性計算機可讀介質(zhì)中存儲計算機可讀I/O數(shù)據(jù)。在一個實施例中,計算機可讀I/O數(shù)據(jù)代表I/O應(yīng)用134和/或處理控制裝置(包括泵138、傳感器140、和閥142)的物理狀態(tài)。I/O數(shù)據(jù)庫116還適于使存儲的I/O數(shù)據(jù)可用于計算節(jié)點130。根據(jù)一個實施例,I/O數(shù)據(jù)庫116緩解將所有I/O數(shù)據(jù)連續(xù)不斷地發(fā)布到每個計算節(jié)點130的需求。在一個方面,I/O數(shù)據(jù)庫116適于作為數(shù)據(jù)存儲,其允許把由I/O數(shù)據(jù)庫116和I/O應(yīng)用134-B、134-F組成的I/O網(wǎng)絡(luò)從由控制數(shù)據(jù)庫114和控制應(yīng)用132-A、132-D組成的控制網(wǎng)絡(luò)中分離出來。

通信接口118適于促進組件之間的數(shù)據(jù)通信,所述組件包括執(zhí)行節(jié)點110和通信信道120。在圖2所示的實施例中,通信接口118促進執(zhí)行服務(wù)管理器112、控制數(shù)據(jù)庫114、I/O數(shù)據(jù)庫116和通信信道120之間的數(shù)據(jù)通信。例如,通信接口118是網(wǎng)絡(luò)接口卡。

圖2中的通信信道120適于提供執(zhí)行節(jié)點110和計算節(jié)點130之間的通信連接。在一個方面,通信信道120是公共高速通信連接,其由系統(tǒng)100的所有節(jié)點(例如,計算節(jié)點130和/或執(zhí)行節(jié)點110)共享。在一個實施例中,通信信道120是電信網(wǎng)絡(luò),其促進數(shù)據(jù)的交換,例如根據(jù)IEEE 802.3(例如,以太網(wǎng))和/或IEEE 802.11(例如,Wi-Fi)協(xié)議操作的網(wǎng)絡(luò)。在另一個實施例中,通信信道120是任何介質(zhì),其允許數(shù)據(jù)通過串行或并行通信信道(例如,銅線、光纖、計算機總線、無線通信信道等)進行物理傳輸。

繼續(xù)參照圖2的示例性實施例,計算節(jié)點130適于執(zhí)行控制應(yīng)用132和I/O應(yīng)用134。在一個方面,計算節(jié)點130經(jīng)由通信信道120連接,并且相互作用以實現(xiàn)共同目標。在另一個示例性實施例中,計算節(jié)點130適于執(zhí)行執(zhí)行服務(wù)管理器112、控制數(shù)據(jù)庫114、I/O數(shù)據(jù)庫116、計算服務(wù)管理器和/或計算引擎,如本文進一步描述的。計算節(jié)點130可以由低成本的現(xiàn)有硬件、嵌入式控制器和/或虛擬化控制器組成。例如,在一個示例性實施例中,計算節(jié)點130被實施為存儲在非臨時性計算機可讀介質(zhì)(例如,計算機、嵌入式設(shè)備或單片機(例如,樹莓派))中的計算機可執(zhí)行指令。然而,本領(lǐng)域技術(shù)人員可以理解的是,計算節(jié)點130還可以被實施為數(shù)字或模擬電子電路。在一個實施例中,計算節(jié)點130彼此近距離物理靠近。在另一個實施例中,計算節(jié)點130和涉及計算節(jié)點130的通信,例如經(jīng)由通信信道120的通信,是網(wǎng)絡(luò)安全的。例如,網(wǎng)絡(luò)安全通過使用加密、黑名單等來提供。

圖2中的控制應(yīng)用132適于監(jiān)控和控制處理的變量。在一個示例性實施例中,控制應(yīng)用132-A從測量儀器(例如,傳感器140)接收數(shù)據(jù),其代表制造過程的當前物理狀態(tài),控制應(yīng)用132-A將所述數(shù)據(jù)與預(yù)先選定的設(shè)定值或其他數(shù)據(jù)進行比較,并且發(fā)送信號到控制元件(例如,泵138和/或閥142)以采取校正動作。在本發(fā)明的一個實施例中,控制應(yīng)用132執(zhí)行數(shù)學函數(shù)從而在數(shù)據(jù)之間或數(shù)據(jù)和設(shè)定值之間進行比較。本領(lǐng)域技術(shù)人員可以理解的是,在一個實施例中,控制應(yīng)用132由不同數(shù)量的組件組成。例如,用于執(zhí)行單個控制應(yīng)用132的多個特定組件可以包括但不限于,簡單的可執(zhí)行程序、支持控制應(yīng)用的平臺、執(zhí)行框架、和/或一組配置數(shù)據(jù)。在一個實施例中,執(zhí)行框架包括多種環(huán)境中的一個或多個以支持邏輯執(zhí)行,例如,基礎(chǔ)現(xiàn)場總線FBAP,Java虛擬機以及Java小程序和/或具有公共語言運行時(CLR)的.NET運行時環(huán)境。控制應(yīng)用132具有一系列功能。在一個實施例中,控制應(yīng)用132是控制邏輯,例如復合塊執(zhí)行或先行控制。在進一步的實施例中,控制應(yīng)用132可以包括,但不限于,I/O功能塊處理、IEC1131-3控制處理(例如,功能塊、順序功能圖、梯形圖、指令表或結(jié)構(gòu)化文本)、監(jiān)督控制應(yīng)用、仿真應(yīng)用、安全應(yīng)用、優(yōu)化應(yīng)用、報警和事件處理等。此外,在一個附加實施例中,控制應(yīng)用132包括混合其他類型的應(yīng)用,例如,但不限于,實時數(shù)據(jù)庫、操作員界面、和/或報告包到計算節(jié)點130上。控制應(yīng)用132可以被實施為存儲在非臨時性計算機可讀介質(zhì)中的計算機可執(zhí)行指令,例如可編程邏輯控制器。在進一步的實施例中,控制應(yīng)用132被實現(xiàn)為數(shù)字或模擬電子電路。有利地,控制應(yīng)用132允許任何計算節(jié)點130監(jiān)測和控制處理變量。

圖2中的I/O應(yīng)用134適于在處理控制計算系統(tǒng)100和處理控制元件(例如,泵138、傳感器140和閥142)之間接收和發(fā)送電子信號。由I/O應(yīng)用134發(fā)送和接收的電子信號可以是模擬的(例如,4-20mA的電流信號)或數(shù)字的(例如,協(xié)議、FOUNDATIONTM現(xiàn)場總線協(xié)議等)。在一個方面,I/O應(yīng)用134可以是傳統(tǒng)儀器或簡單傳感器I/O轉(zhuǎn)換器的總線主機。有利地,I/O應(yīng)用134允許任何計算節(jié)點130適于在處理控制計算系統(tǒng)100和處理控制元件之間接收和發(fā)送電子信號。I/O應(yīng)用134可以被實施為存儲在非臨時性計算機可讀介質(zhì)中的計算機可執(zhí)行指令。在附加實施例中,I/O應(yīng)用134被實施為數(shù)字或模擬電子電路。

再次參照圖2,泵138、傳感器140和閥142適于測量處理中的物理變化和/或處理的物理操作部分從而實現(xiàn)物理變化。例如,傳感器140可被配置用于測量池中流體的高度變化并且報告(例如,發(fā)送數(shù)據(jù))測量結(jié)果給處理控制計算系統(tǒng)100。可以預(yù)期的是,其他裝置或儀器可以用于測量目的,包括但不限于,熱電偶、科里奧利流量管、雷達發(fā)射器和接收器等。此外,換能器和/或轉(zhuǎn)換器可以用于將一種類型的信號轉(zhuǎn)換為另一種類型的信號(例如,將機械信號轉(zhuǎn)換為電子信號)。泵138和/或閥142-A用于,例如,限制通過管道的流體的流動以減少池中流體的高度。本領(lǐng)域技術(shù)人員可以理解的是,其他裝置可以用于引起物理變化,包括但不限于,致動器、百葉窗、螺線管等。

根據(jù)本發(fā)明的一個方面,處理控制計算系統(tǒng)100提供無狀態(tài)的程序執(zhí)行。在一個實施例中,無狀態(tài)的分布式計算的特征在于,接收請求以執(zhí)行功能,然后在沒有關(guān)于先前請求信息的情況下執(zhí)行所述功能(即,沒有“記憶的”信息)。例如,執(zhí)行服務(wù)管理器112可配置用于啟動和管理并行活動,例如分開的線程和/或進程,以執(zhí)行算法操作。參照圖3A,在步驟302,在計算節(jié)點130-B上執(zhí)行的I/O應(yīng)用134-B接收教據(jù)。在一個示例性實施例中,數(shù)據(jù)代表值,所述值包括由傳感器140測量的池中的流體高度、在泵138上所施加的電壓、指示進入池中的流體流速的閥142-A的位置以及指示從池中流出的流體流速的閥142-B的位置。在一個實施例中,圖3A示出了事件驅(qū)動應(yīng)用的執(zhí)行,執(zhí)行中的結(jié)果是基于激勵。然后在步驟304,I/O應(yīng)用134-B發(fā)送這個數(shù)據(jù)到執(zhí)行服務(wù)管理器112和I/O數(shù)據(jù)庫116。在步驟306中,作為響應(yīng),執(zhí)行服務(wù)管理器112識別和發(fā)送請求到空閑的計算節(jié)點130??臻e并且可供使用的計算節(jié)點130發(fā)送批準,在步驟308,所述批準由執(zhí)行服務(wù)管理器112來接收。

進一步參照圖3A,在步驟310中,執(zhí)行服務(wù)管理器112啟動計算節(jié)點130-A上的控制應(yīng)用132-A以及計算節(jié)點130-D上的控制應(yīng)用132-D。例如,控制應(yīng)用132-A和132-D存儲在控制數(shù)據(jù)庫114中。步驟310包括,例如,執(zhí)行服務(wù)管理器112促進將應(yīng)用132-A和132-D從控制數(shù)據(jù)庫114分別發(fā)送到計算節(jié)點130-A和130-D。然后在步驟312,執(zhí)行服務(wù)管理器112在控制應(yīng)用132-A和132-D之間分發(fā)工作量。例如,執(zhí)行服務(wù)管理器112促進將存儲在I/O數(shù)據(jù)庫116中的數(shù)據(jù)全部或部分地發(fā)送到控制應(yīng)用132-A和/或控制應(yīng)用132-D。以這種方式,執(zhí)行服務(wù)管理器112作為管理器運行,其負責識別或啟動空閑計算資源(例如,識別空閑的計算節(jié)點130)和/或在節(jié)點130之間分發(fā)工作量(例如,控制應(yīng)用132、I/O應(yīng)用134)。本領(lǐng)域技術(shù)人員可以理解的是,執(zhí)行服務(wù)管理器112可以全部或部分地分發(fā)工作量。

在圖3A中的步驟314,控制應(yīng)用132-A使用微分方程計算值,例如池中流體的體積變化:

<mrow> <mfrac> <mi>d</mi> <mrow> <mi>d</mi> <mi>t</mi> </mrow> </mfrac> <mi>V</mi> <mi>o</mi> <mi>l</mi> <mo>=</mo> <mi>b</mi> <mi>V</mi> <mo>-</mo> <mi>a</mi> <msqrt> <mi>H</mi> </msqrt> <mo>,</mo> </mrow>

其中b是與進入池中的流速相關(guān)的常數(shù)(例如,由閥142-A提供的數(shù)據(jù)),V是施加到泵138的電壓(例如,由泵138提供的數(shù)據(jù)),a是與從池流出的流速相關(guān)的常數(shù)(例如,由閥142-B提供的數(shù)據(jù)),以及H是池中流體的高度(例如,由傳感器140提供的數(shù)據(jù))。

控制應(yīng)用132-A發(fā)送教據(jù)到執(zhí)行服務(wù)管理器112、控制數(shù)據(jù)庫114和控制應(yīng)用132-D,所述數(shù)據(jù)代表所計算的體積變化。在步驟316,控制應(yīng)用132-D確定是否需要對處理進行物理調(diào)節(jié)。例如,控制應(yīng)用132-D將從控制應(yīng)用132-A接收的數(shù)據(jù)的值與設(shè)定值進行比較。如果所述值滿足設(shè)定值,那么可以不采取行動。但是如果所述值不能滿足設(shè)定值,那么控制應(yīng)用132-D前進到步驟318以確定通過泵138(例如,減少或增加電壓)和閥142-A和142-B(例如,增加或減少液流)對處理進行的調(diào)節(jié)。以這種方式,控制應(yīng)用132-A和132-D作為分開的處理,其使用所述數(shù)據(jù)執(zhí)行控制算法的操作。一旦應(yīng)用132-D確定了調(diào)節(jié),這些調(diào)節(jié)經(jīng)由通信信道120和I/O應(yīng)用134-B和134-F發(fā)送給泵138、閥142-A和142-B,如步驟320所示。

圖3B示出了控制應(yīng)用132-A的持續(xù)執(zhí)行的實施例。在步驟330,例如控制應(yīng)用132-A被部署到計算節(jié)點130-A。在一個實施例中,用戶手動部署控制應(yīng)用132-A。在步驟314,控制應(yīng)用132-A停留在計算節(jié)點130-A上并且執(zhí)行,如上述進一步的描述。例如,控制應(yīng)用132-A從控制數(shù)據(jù)庫114和/或I/O數(shù)據(jù)庫116讀取數(shù)據(jù)、執(zhí)行控制算法、以及將數(shù)據(jù)寫入回控制數(shù)據(jù)庫114和/或I/O數(shù)據(jù)庫116。在一個實施例中,由圖3B所示的執(zhí)行前進到步驟316,318和320,如上述的進一步描述。

在另一個實施例中,處理控制計算系統(tǒng)100以“傳統(tǒng)”的服務(wù)模型的形式提供無狀態(tài)的程序執(zhí)行,例如基于面向服務(wù)的架構(gòu)(SOA)的服務(wù)模型。在又一個實施例中,處理控制計算系統(tǒng)100被與例如超文本標記語言(HTML)一起利用,來提供基于網(wǎng)絡(luò)的服務(wù)(例如,網(wǎng)絡(luò)農(nóng)場)。

圖4A示出了根據(jù)本發(fā)明實施例的提供數(shù)據(jù)遷移和分布的處理控制計算系統(tǒng)100。在這個實施例中,處理控制計算系統(tǒng)100包括執(zhí)行節(jié)點110和計算節(jié)點130-A和130-B。每個計算節(jié)點130-A和130-B包括控制應(yīng)用132-A。與控制應(yīng)用132-A相關(guān)聯(lián)的控制應(yīng)用數(shù)據(jù)集402存儲在計算節(jié)點130-A和130-B以及控制數(shù)據(jù)庫114中。

在一個實施例中,控制應(yīng)用數(shù)據(jù)集402包括數(shù)據(jù),所述數(shù)據(jù)代表計算節(jié)點130-A的當前狀態(tài)和/或先前狀態(tài)以及中間數(shù)據(jù)。有利地,圖4A所示的處理控制計算系統(tǒng)100的實施例,通過復制和移動(即,發(fā)送)控制應(yīng)用數(shù)據(jù)集402來提供處理控制,而不是要求發(fā)送控制應(yīng)用132-A及其相關(guān)數(shù)據(jù)。如虛線所示,并且如下述進一步描述的,包括控制應(yīng)用數(shù)據(jù)集402的數(shù)據(jù)從計算節(jié)點130-A被復制到控制數(shù)據(jù)庫114,并且接著從控制數(shù)據(jù)庫114被復制到計算節(jié)點130-B。這種狀態(tài)數(shù)據(jù)的遷移使處理控制計算系統(tǒng)100能夠在計算節(jié)點130之間分發(fā)執(zhí)行負載(例如,負載平衡、添加計算節(jié)點130),而不受現(xiàn)有技術(shù)的管理和初始化約束。本領(lǐng)域技術(shù)人員可以理解的是,圖4A所示的處理控制計算系統(tǒng)100的實施例還通過使用I/O應(yīng)用134和I/O數(shù)據(jù)庫116來提供數(shù)據(jù)遷移和分布。

在圖4A的另一個實施例中,處理控制計算系統(tǒng)100提供除了和/或替代提供數(shù)據(jù)遷移和分布的冗余。例如,每個計算節(jié)點130-A和130-B并行地執(zhí)行控制應(yīng)用132-A和控制應(yīng)用數(shù)據(jù)集402。然后另一個計算節(jié)點130和/或執(zhí)行服務(wù)管理器112被用于比較計算節(jié)點130-A和計算節(jié)點130-B之間的數(shù)據(jù),以確保每個計算節(jié)點獲得相同的結(jié)果。在附加實施例中,任何數(shù)量的附加計算節(jié)點130可以被用于確保計算節(jié)點130-A和130-B得到正確的結(jié)果,例如,比如通過投票。在一個實施例中,附加計算節(jié)點130可以提供用于安全和關(guān)鍵控制應(yīng)用的三重模塊冗余(或更大的冗余)。

圖4B示出了處理控制計算系統(tǒng)100的數(shù)據(jù)遷移和分布操作。在步驟452的操作中,每個計算節(jié)點130-A和130-B執(zhí)行控制應(yīng)用132-A。例如,在計算節(jié)點130-A上執(zhí)行的控制應(yīng)用132-A可配置用于計算諸如池中流體的體積變化的值,或執(zhí)行算法操作,如上所述。在計算節(jié)點130-A上對控制應(yīng)用132-A的執(zhí)行產(chǎn)生數(shù)據(jù),所述教據(jù)包括控制應(yīng)用數(shù)據(jù)集402,例如計算節(jié)點130-A的狀態(tài)信息或計算結(jié)果。在步驟454,控制應(yīng)用數(shù)據(jù)集402的數(shù)據(jù)通過從計算節(jié)點130-A經(jīng)由通信信道120和通信接口118的傳輸而存儲在控制數(shù)據(jù)庫114中。在所示的實施例中,控制應(yīng)用數(shù)據(jù)集402的傳輸由執(zhí)行服務(wù)管理器112進行調(diào)節(jié)或監(jiān)督。

再次參照圖4B,在步驟456中,執(zhí)行節(jié)點110檢測計算節(jié)點130-A的損失(例如,故障)。根據(jù)這種檢測,操作繼續(xù)到步驟458,在該步驟中執(zhí)行服務(wù)管理器112啟動控制應(yīng)用數(shù)據(jù)集402從控制數(shù)據(jù)庫114到計算節(jié)點130-B的傳輸,其中控制應(yīng)用132-A已經(jīng)在執(zhí)行。在步驟460,計算節(jié)點130-B利用控制應(yīng)用數(shù)據(jù)集402繼續(xù)執(zhí)行控制應(yīng)用132-A,包括將新的以及更新了的狀態(tài)數(shù)據(jù)存儲在控制數(shù)據(jù)庫114中。有利地,這種數(shù)據(jù)遷移允許控制從一個計算節(jié)點130移動到另一個計算節(jié)點,以提供高可用性和靈活性,而無需重新建立連接。在替代實施例中,處理控制計算系統(tǒng)100在數(shù)據(jù)遷移和分布模式下進行操作,而沒有計算節(jié)點130的損失。例如,執(zhí)行服務(wù)管理器112檢測計算節(jié)點130-B的添加,并且啟動控制應(yīng)用數(shù)據(jù)集402從計算節(jié)點130-A到計算節(jié)點130-B的遷移,同時節(jié)點130-A仍在執(zhí)行控制應(yīng)用132-A。以這種方式,處理控制計算系統(tǒng)100可以使用數(shù)據(jù)遷移和分布以處理計算節(jié)點130的添加或負載平衡的考慮。在另一個實施例中,圖4B的操作利用I/O應(yīng)用134和I/O數(shù)據(jù)庫116來提供I/O數(shù)據(jù)的遷移和分布。

圖5A示出了根據(jù)本發(fā)明實施例的提供代碼遷移和分布的處理控制計算系統(tǒng)100。在這個實施例中,處理控制計算系統(tǒng)100包括執(zhí)行節(jié)點110、通信信道120、計算節(jié)點130-A,130-B,130-C和130-D、控制應(yīng)用132-B和132-C以及I/O應(yīng)用134-D。在一個實施例中,計算節(jié)點130保留狀態(tài)信息用于利用先驗信息。I/O應(yīng)用134-D通信地連接到輸入裝置,并且適于在處理控制計算系統(tǒng)100和處理控制元件(例如,圖2中所示的泵138、傳感器140和閥142)之間接收和發(fā)送電子信號。來自這些元件的數(shù)據(jù)包括I/O應(yīng)用數(shù)據(jù)集502。包括I/O應(yīng)用數(shù)據(jù)集502的數(shù)據(jù)還包括來自在控制應(yīng)用132-C中執(zhí)行的PID塊的輸出。

參照圖5A,包括I/O應(yīng)用數(shù)據(jù)集502的數(shù)據(jù)從I/O應(yīng)用134-D傳輸?shù)絀/O數(shù)據(jù)庫116,并且然后使其對于在計算節(jié)點130-B上執(zhí)行的控制應(yīng)用132-B是可用的。有利地,控制應(yīng)用132-B可以從計算節(jié)點130-A遷移到計算節(jié)點130-B,而無需重新建立節(jié)點130之間的對等連接。相反,所有需要的數(shù)據(jù)由系統(tǒng)100通過I/O數(shù)據(jù)庫116來提供。在一個實施例中,執(zhí)行節(jié)點110檢測計算節(jié)點130-A的故障。根據(jù)檢測,執(zhí)行服務(wù)管理器112將來自故障計算節(jié)點130-A的控制應(yīng)用132-B傳輸?shù)接嬎愎?jié)點130-B。與控制應(yīng)用132-B相關(guān)聯(lián)的控制數(shù)據(jù)庫114和I/O數(shù)據(jù)庫116也分別被移動到計算節(jié)點130-B。

圖5B示出了處理控制計算系統(tǒng)100的代碼遷移和分布。在步驟552的操作中,計算節(jié)點130-A執(zhí)行控制應(yīng)用132-B、計算節(jié)點130-C執(zhí)行控制應(yīng)用132-C、并且計算節(jié)點130-D執(zhí)行I/O應(yīng)用134-D。例如,在節(jié)點130-C上執(zhí)行的控制應(yīng)用132-C計算諸如在池中流體的體積變化的值,或執(zhí)行算法操作,如上所述。在一個實施例中,I/O應(yīng)用134-D提供處理控制計算系統(tǒng)100與傳感器140和閥142-A之間的通信連接??梢灶A(yù)期的是,I/O應(yīng)用134-D可被配置為提供到附加處理控制裝置的通信連接。對控制應(yīng)用132-C和I/O應(yīng)用134-D的執(zhí)行產(chǎn)生數(shù)據(jù),所述數(shù)據(jù)包括I/O應(yīng)用數(shù)據(jù)集502。例如,由控制應(yīng)用132-C產(chǎn)生的數(shù)據(jù)是用于計算節(jié)點130-C的狀態(tài)信息,或由控制應(yīng)用132-C所執(zhí)行的計算結(jié)果。在一個實施例中,由控制應(yīng)用132-C產(chǎn)生的數(shù)據(jù)包括來自在計算節(jié)點130-C或外部控制器上執(zhí)行的PID塊或相似塊的輸出。例如,由I/O應(yīng)用134-D產(chǎn)生的數(shù)據(jù)可以是關(guān)于由傳感器140測量的池中流體高度的物理信息。

在步驟554,來自控制應(yīng)用132-C和I/O應(yīng)用134-D的數(shù)據(jù)被存儲在I/O數(shù)據(jù)庫116上的I/O應(yīng)用數(shù)據(jù)集502中。例如,數(shù)據(jù)從計算節(jié)點130-C和130-D經(jīng)由通信信道120和通信接口118傳輸。執(zhí)行服務(wù)管理器112優(yōu)選地監(jiān)視、調(diào)節(jié)和/或監(jiān)督計算節(jié)點130。還在步驟554中,在計算節(jié)點130-A上執(zhí)行的控制應(yīng)用132-B從I/O應(yīng)用數(shù)據(jù)集502接收數(shù)據(jù),并且在執(zhí)行處理中利用該數(shù)據(jù)。在一個實施例中,控制應(yīng)用132-B計算諸如池中流體的體積變化的值,或執(zhí)行算法操作,如上所述。

再次參照圖5B,在步驟556,執(zhí)行服務(wù)管理器112確定是否需要附加的計算節(jié)點130以提供對由泵138、傳感器140和閥142組成的處理的充分控制。例如,當在節(jié)點130-A上布置比其能滿足的要求更高的要求時,執(zhí)行服務(wù)管理器112確定需要附加節(jié)點130-B。在這個實施例中,當節(jié)點130-A即將或已進入故障狀態(tài)時,執(zhí)行服務(wù)管理器112也確定需要附加節(jié)點130-B。例如,故障狀態(tài)可以是失靈,在這種情況下,整個控制應(yīng)用132-B被遷移到節(jié)點130-B。作為另一個示例,故障還可以是過載,在這種情況下,僅部分控制應(yīng)用132-B被遷移到節(jié)點130-B。執(zhí)行服務(wù)管理器112可被配置為在經(jīng)由通信信道120和通信接口118接收數(shù)據(jù)后做出確定,所述數(shù)據(jù)代表計算節(jié)點130-A的當前或過去狀態(tài)。在執(zhí)行服務(wù)管理器112確定不需要附加計算節(jié)點130的情況下,處理返回到步驟552并且繼續(xù)。在執(zhí)行服務(wù)管理器112確定需要附加計算節(jié)點130的情況下,處理繼續(xù)到步驟558。

在步驟558,執(zhí)行服務(wù)管理器112識別具有額外能力的計算節(jié)點130以運行附加的計算,在一個實施例中這提供了負載平衡。例如,計算節(jié)點130-B連接到通信信道120,但是不執(zhí)行控制應(yīng)用132或I/O應(yīng)用134。在這種情況下,執(zhí)行服務(wù)管理器112識別計算節(jié)點130-B是空閑的,并且在計算節(jié)點130-B中開始新的應(yīng)用(例如,控制應(yīng)用132、I/O應(yīng)用134等)。在另一個實施例中,執(zhí)行服務(wù)管理器112識別計算節(jié)點130-B不是空閑的(即,執(zhí)行控制應(yīng)用132和/或I/O應(yīng)用134),但是具有足夠的空閑資源來處理控制應(yīng)用132-B的執(zhí)行。在執(zhí)行服務(wù)管理器112識別合適的計算節(jié)點130之后,處理前進到步驟560,其中應(yīng)用被傳輸?shù)皆摽臻e節(jié)點。例如,執(zhí)行服務(wù)管理器112啟動控制應(yīng)用132-B從計算節(jié)點130-A到計算節(jié)點130-B的傳輸。在傳輸之后,處理返回到步驟552,其中控制應(yīng)用132-B在計算節(jié)點130-B上執(zhí)行,從I/O應(yīng)用數(shù)據(jù)集502接收數(shù)據(jù),并且在執(zhí)行處理中利用該數(shù)據(jù)。

在一個實施例中,處理控制計算系統(tǒng)100通過各種分解技術(shù)(例如,任務(wù)分解、數(shù)據(jù)分解、數(shù)據(jù)流分解等)來分割數(shù)據(jù)源(例如,I/O應(yīng)用數(shù)據(jù)集502)用于代碼遷移和分布操作。在另一個實施例中,處理控制計算系統(tǒng)100通過同步原語(例如,信號量(semaphores)、鎖、條件變量等)來協(xié)調(diào)計算節(jié)點130以管理所使用的數(shù)據(jù)。

圖6示出了處理控制計算系統(tǒng)100可以支持的I/O應(yīng)用134的各種實現(xiàn)方式。在一個實施例中,處理控制計算系統(tǒng)100提供了對傳統(tǒng)I/O裝置的支持,例如HART調(diào)制解調(diào)器610,其經(jīng)由HART通信協(xié)議提供與泵138的通信連接。在這個實施例中,I/O應(yīng)用134-B作為在計算節(jié)點130-B上執(zhí)行的HART主機運行。在另一個實施例中,處理控制計算系統(tǒng)100為簡單傳感器I/O模型提供支持,例如提供與傳感器140和閥142的通信連接的簡單傳感器620。簡單傳感器用于收集有關(guān)處理變量的原始數(shù)據(jù),例如溫度、壓力和流速。分開的處理器(即,傳感器大腦)將原始數(shù)據(jù)處理成可以在處理控制系統(tǒng)中被使用的形式。共同轉(zhuǎn)讓的美國專利申請No.14/171,344描述了用于簡單傳感器的傳感器大腦,其全部內(nèi)容通過引用并入于此。

在這個實施例中,I/O應(yīng)用134-D在計算節(jié)點130-D上作為簡單傳感器付給算法執(zhí)行,并且I/O應(yīng)用134-F在計算節(jié)點130-F上作為簡單傳感器釋放算法執(zhí)行。在一個實施例中,I/O應(yīng)用134和計算節(jié)點130允許處理控制計算系統(tǒng)100經(jīng)由多種通信協(xié)議與處理控制裝置(例如,泵138、傳感器140、閥142)相連接.有利地,這種互操作性改進了處理控制計算系統(tǒng)100的運行。

圖7示出了處理控制計算系統(tǒng)100的另一個示例性實施例,其中執(zhí)行服務(wù)管理器112和計算引擎148駐留在相同節(jié)點內(nèi)。此實施例包括兩個節(jié)點,110-A/130-A和110-B/130-B,每個節(jié)點都可配置為同時作為執(zhí)行節(jié)點110和計算節(jié)點130而運行。每個節(jié)點包括執(zhí)行服務(wù)管理器112,并且通信地連接到通信信道120。節(jié)點110-A/130-A包括計算引擎148-A和148-B,并且節(jié)點110-B/130-B包括計算引擎148-C。執(zhí)行服務(wù)管理器112包括應(yīng)用管理器144、計算引擎管理器146和數(shù)據(jù)庫,所述數(shù)據(jù)庫作為控制數(shù)據(jù)庫114和I/O數(shù)據(jù)庫116而運行。所述數(shù)據(jù)庫進一步包括控制應(yīng)用數(shù)據(jù)集402和I/O應(yīng)用數(shù)據(jù)集502??刂茟?yīng)用數(shù)據(jù)集402由控制配置數(shù)據(jù)404和控制動態(tài)數(shù)據(jù)組成,并且I/O應(yīng)用數(shù)據(jù)集502由I/O配置數(shù)據(jù)504和I/O動態(tài)數(shù)據(jù)506組成。每個計算引擎148-A,148-B和148-C分別包括控制應(yīng)用132-A,132-B和132-C以及I/O應(yīng)用134-A,134-B和134-C。在一個實施例中,每個計算引擎148是虛擬機(VM)。

圖7的實施例舉例說明了一種小系統(tǒng)100,其使用兩個節(jié)點110-A/130-A和110-B/130-B提供了高可用性。在這個示例性實施例中,執(zhí)行服務(wù)管理器112被復制,但是在同一時間僅在一個節(jié)點上活躍。例如,執(zhí)行服務(wù)管理器112可以首先在節(jié)點110-A/130-A上活躍,并且管理計算引擎148-A,148-B和148-C。然后在與節(jié)點110-A/130-A相關(guān)聯(lián)的故障的情況下,由于節(jié)點110-B/130-B上的可用空閑資源,執(zhí)行服務(wù)管理器112變?yōu)樵诠?jié)點110-B/130-B上活躍。本領(lǐng)域技術(shù)人員可以理解的是,節(jié)點110-B/130-B不需要最初被指定為節(jié)點110-A/130-A的備用節(jié)點。例如,節(jié)點110-B/130-B上的空閑資源可以用于附加計算引擎148。然而,當系統(tǒng)100的示例性實施例檢測到故障時,節(jié)點110-B/130-B上的空閑資源用于執(zhí)行服務(wù)管理器112。

圖8示出了處理控制計算系統(tǒng)100的另一個示例性實施例,其中執(zhí)行服務(wù)管理器112和計算引擎148在分開的節(jié)點上執(zhí)行。在示例性實施例中,執(zhí)行服務(wù)管理器112在執(zhí)行節(jié)點110上執(zhí)行,并且計算引擎148在計算節(jié)點130上執(zhí)行。例如,在這個實施例中,執(zhí)行服務(wù)管理器112被分成多個節(jié)點(即,分布式執(zhí)行服務(wù))來管理對服務(wù)的高要求。執(zhí)行節(jié)點110-A包括執(zhí)行服務(wù)管理器112的一部分112-A,112-A相應(yīng)地包括應(yīng)用管理器144和計算引擎管理器146。執(zhí)行節(jié)點110-B包括執(zhí)行服務(wù)管理器112的另一個部分112-B,112-B相應(yīng)地包括控制數(shù)據(jù)庫114、I/O數(shù)據(jù)庫116、控制應(yīng)用數(shù)據(jù)集402、控制配置數(shù)據(jù)404、控制動態(tài)數(shù)據(jù)406、I/O應(yīng)用數(shù)據(jù)集502、I/O配置數(shù)據(jù)504以及I/O動態(tài)數(shù)據(jù)506。執(zhí)行節(jié)點110和計算節(jié)點130通信地連接到通信信道120。在一個實施例中,執(zhí)行服務(wù)管理器112的部分112-A和112-B一起作為用于系統(tǒng)100的所有數(shù)據(jù)的中央數(shù)據(jù)存儲庫而運行。

由圖8所示的系統(tǒng)100的實施例還包括在多個計算節(jié)點130上執(zhí)行的多個計算引擎148。每個計算引擎148包括控制應(yīng)用132和I/O應(yīng)用134。每個計算節(jié)點130還包括計算服務(wù)管理器150。在一個實施例中,計算服務(wù)管理器150與執(zhí)行服務(wù)管理器112和/或其部分(例如,部分112-A和112-B)相互作用以管理計算引擎148。在這個示例性實施例中,每個執(zhí)行服務(wù)管理器的部分112-A和112-B為了高可用性而被復制,但是在同一時間僅在一個節(jié)點上活躍。例如,部分112-A可以首先在節(jié)點110-A上活躍,并且部分112-B可以在節(jié)點110-B上活躍。然后在與節(jié)點110-A相關(guān)聯(lián)的故障的情況下,由于節(jié)點110-C上的可用空閑資源,部分112-A變?yōu)樵诠?jié)點110-C上活躍。在與節(jié)點110-B相關(guān)聯(lián)的故障的情況下,部分112-B變?yōu)樵诠?jié)點110-D上活躍。在一個實施例中,執(zhí)行服務(wù)管理器112和/或其部分提供中央數(shù)據(jù)存儲區(qū)作為數(shù)據(jù)分發(fā)機構(gòu),其不會遭受固有瓶頸的負面后果。例如,中央數(shù)據(jù)存儲區(qū)提供對于每個節(jié)點便利可用的數(shù)據(jù),而不會對應(yīng)用(例如,控制應(yīng)用132)或其他處理控制硬件(例如,現(xiàn)場總線模塊)帶來負面影響。

繼續(xù)參照圖8的示例性實施例,如果計算引擎148發(fā)生故障,那么由這個引擎提供的所有功能通過多個恢復方案中的一種被傳輸?shù)教娲嬎阋?。在一個實施例中,功能遷移通過移動(例如,通過經(jīng)由通信信號120來發(fā)送和接收數(shù)據(jù))應(yīng)用(例如,控制應(yīng)用132和/或I/O應(yīng)用134)到不同的計算引擎148來實現(xiàn)。例如,執(zhí)行服務(wù)管理器112監(jiān)視第一節(jié)點上虛擬機形式的計算引擎148的健康狀況。在第一節(jié)點故障的情況下,執(zhí)行服務(wù)管理器112啟動(例如,起轉(zhuǎn)(spin up))另一個節(jié)點上的新虛擬機(例如,計算引擎148)。在另一個實施例中,功能遷移通過重新分配包括內(nèi)部狀態(tài)信息的應(yīng)用的運行時數(shù)據(jù)到在不同計算引擎148中運行的等效應(yīng)用來實現(xiàn)。在又一個實施例中,利用上述兩種方法的組合。在另一個實施例中,某個計算引擎148的所有應(yīng)用被遷移到另一個節(jié)點(例如,計算節(jié)點130和/或執(zhí)行節(jié)點110)。以這種方式,圖8示出了系統(tǒng)100的可擴展的實施例,因為分布式控制由應(yīng)用組成,所述應(yīng)用可配置為在任何可用硬件(例如,計算節(jié)點130和/或執(zhí)行節(jié)點110)上執(zhí)行。此外,圖8還示出了系統(tǒng)100的提供快速故障切換的實施例,其具有基于計算引擎148正在運行的應(yīng)用類型的故障切換模式。

圖9示出了處理控制計算系統(tǒng)100的示例性實施例,所述處理控制計算系統(tǒng)100包括執(zhí)行節(jié)點110、計算節(jié)點130、I/O節(jié)點152以及中央存儲節(jié)點156。執(zhí)行節(jié)點110包括執(zhí)行服務(wù)管理器112的一部分112-A。這個部分112-A進一步包括應(yīng)用管理器144和計算引擎管理器146。計算節(jié)點130包括計算引擎148和計算服務(wù)管理器150。計算引擎148進一步包括控制應(yīng)用132和I/O應(yīng)用134。控制應(yīng)用132包括控制配置數(shù)據(jù)404和控制動態(tài)數(shù)據(jù)406。I/O應(yīng)用134包括I/O配置數(shù)據(jù)504和I/O動態(tài)數(shù)據(jù)506。I/O節(jié)點152包括I/O源數(shù)據(jù)集154,所述I/O源數(shù)據(jù)集154相應(yīng)地包括I/O配置數(shù)據(jù)504和I/O動態(tài)數(shù)據(jù)506。中央存儲節(jié)點156包括執(zhí)行服務(wù)管理器112的另一個部分112-B。以這種方式,執(zhí)行服務(wù)管理器112被分布在執(zhí)行節(jié)點110和中央存儲節(jié)點156之間。部分112-B進一步包括控制數(shù)據(jù)庫114和I/O數(shù)據(jù)庫116,其進一步包括控制應(yīng)用數(shù)據(jù)集402、控制配置數(shù)據(jù)404、控制動態(tài)數(shù)據(jù)406、I/O應(yīng)用數(shù)據(jù)集502、I/O配置數(shù)據(jù)504和I/O動態(tài)數(shù)據(jù)506。

在圖9的這個示例性實施例中,系統(tǒng)100的所有節(jié)點使用公共以太網(wǎng)網(wǎng)絡(luò)(例如,通信信道120)以通過中央存儲節(jié)點156來交換數(shù)據(jù)。在一個實施例中,每個節(jié)點駐留在分開的物理計算裝置上。在另一個實施例中,節(jié)點的任意組合駐留在相同的物理計算裝置上。例如,執(zhí)行服務(wù)管理器112的部分112-A可以駐留在計算節(jié)點130上。作為另一個示例,執(zhí)行服務(wù)管理器112的部分112-B可以駐留在執(zhí)行節(jié)點110上。在一個實施例中,計算引擎148執(zhí)行除了控制應(yīng)用132和I/O應(yīng)用134之外的一些應(yīng)用。例如,附加的應(yīng)用可以包括邏輯、對象、配置數(shù)據(jù)和動態(tài)數(shù)據(jù)。在一個實施例中,應(yīng)用是執(zhí)行功能的任何一段計算機可執(zhí)行代碼(例如,ksh、可執(zhí)行體、PYTHONTM等)。在另一個實施例中,應(yīng)用可部署為獨立于其他可執(zhí)行體的分開的可執(zhí)行體。在又一個實施例中,系統(tǒng)100除了基礎(chǔ)設(shè)施功能以外的所有功能,作為應(yīng)用(例如,控制、I/O掃描、歷史化、網(wǎng)關(guān)類型功能等)被提供。在另一個示例性實施例中,一個或多個計算引擎148可以運行在每個計算節(jié)點130上。

在圖9的示例性實施例中,I/O節(jié)點152具有外部接口,以收集(即,接收)輸入數(shù)據(jù)或發(fā)送輸出數(shù)據(jù)。例如,I/O節(jié)點152經(jīng)由通信信道120實現(xiàn)與各種處理組件(例如,泵138、傳感器140、閥142等)的數(shù)據(jù)接收和發(fā)送。在一個實施例中,此數(shù)據(jù)被存儲在中央存儲節(jié)點156中,以允許所有節(jié)點訪問此數(shù)據(jù)。在圖9的實施例中,I/O節(jié)點152可配置為從處理組件接收基于以太網(wǎng)的數(shù)據(jù),并且發(fā)送該數(shù)據(jù)到中央存儲節(jié)點156。使用I/O的應(yīng)用(例如,在計算節(jié)點130上執(zhí)行的I/O應(yīng)用134)可配置為從中央存儲節(jié)點156檢索數(shù)據(jù)。在一個實施例中,任何專用的I/O接口在系統(tǒng)100外部的盒子里,并且I/O源數(shù)據(jù)集154可配置為當I/O節(jié)點152發(fā)生故障時遷移到另一個節(jié)點。

進一步關(guān)于圖9的實施例,中央存儲節(jié)點156包括與系統(tǒng)100相關(guān)聯(lián)的運行時數(shù)據(jù)。在一個實施例中,直接經(jīng)由中央存儲節(jié)點156訪問這個運行時數(shù)據(jù)、計算值和I/O數(shù)據(jù)可用于所有應(yīng)用(例如,控制應(yīng)用132和/或I/O應(yīng)用134)。以這種示例性方式,中央存儲節(jié)點156作為中央數(shù)據(jù)存儲區(qū)或中央數(shù)據(jù)存儲庫而運行。本領(lǐng)域技術(shù)人員可以理解的是,應(yīng)用不一定需要與中央數(shù)據(jù)存儲區(qū)連續(xù)不斷地交換所有運行時數(shù)據(jù),但是不排除這么做。在另一個實施例中,系統(tǒng)100的數(shù)據(jù)通過中央存儲節(jié)點156進行交換,而不是通過其他節(jié)點之間的對等節(jié)點進行交換。圖9的虛線示出了系統(tǒng)100中的數(shù)據(jù)移動,所述系統(tǒng)100具有提供中央數(shù)據(jù)存儲區(qū)的中央存儲節(jié)點156。

再次參照圖9的示例性實施例,執(zhí)行服務(wù)管理器112和/或其部分(例如,部分112-A和112-B)提供計算引擎148、控制應(yīng)用132、I/O應(yīng)用134和中央存儲節(jié)點156的管理。在這個實施例中,執(zhí)行服務(wù)管理器112的功能性服務(wù)包括,但不限于,管理計算引擎圖像(例如,計算引擎148),啟動計算圖像實例、監(jiān)視計算引擎的健康狀況、管理計算引擎故障、維護中央數(shù)據(jù)存儲庫(例如,中央存儲節(jié)點156)、以及額外維護整個本地云和網(wǎng)絡(luò)。在一個實施例中,為了高可用性和可擴展性,執(zhí)行服務(wù)管理器112在多個節(jié)點之間分布。此外,執(zhí)行服務(wù)管理器112可以駐留在物理計算機中,所述物理計算機執(zhí)行計算引擎148。以這種方式,就不需要專用服務(wù)器來支持執(zhí)行服務(wù)管理器112,以及沒有高可用性的小系統(tǒng)100可以在一個物理計算裝置上。

根據(jù)本發(fā)明的方面,處理控制計算系統(tǒng)100通過共享數(shù)據(jù)的可用性來提供無狀態(tài)的程序執(zhí)行、數(shù)據(jù)遷移和分布,以及代碼遷移和分布能力。例如,各自執(zhí)行控制應(yīng)用132和/或I/O應(yīng)用134的分布式計算節(jié)點130,通過共享數(shù)據(jù)(例如,控制應(yīng)用數(shù)據(jù)集402、I/O應(yīng)用數(shù)據(jù)集502)來管理工業(yè)處理的對象狀態(tài)。在一個方面,處理控制計算系統(tǒng)100被提供在控制系統(tǒng)環(huán)境中,如圖2和圖6所示,為了高可用性,共享數(shù)據(jù)需要將I/O應(yīng)用134分布到多個計算節(jié)點130,以及將控制數(shù)據(jù)和狀態(tài)(例如,控制應(yīng)用數(shù)據(jù)集402中的數(shù)據(jù))從一個計算節(jié)點130分布到另一個節(jié)點。

在一個實施例中,處理控制計算系統(tǒng)100利用時間共享技術(shù)以避免計算資源所有權(quán)的最壞情況。例如,在第一時間段期間控制應(yīng)用132-A在計算節(jié)點130-A上執(zhí)行,以及在第二時間段期間不同的控制應(yīng)用132-B在計算節(jié)點130-A上執(zhí)行,所述第二時間段與第一時間段不重疊。這種時間共享傳輸各種計算節(jié)點130之間的需求,并且為處理控制計算系統(tǒng)100提供靈活性。

在另一個實施例中,計算節(jié)點130作為單回路控制器而運行。在進一步的實施例中,作為單回路控制器運行的多個計算節(jié)點130被組合到集群內(nèi)。根據(jù)本發(fā)明的附加方面,處理控制計算系統(tǒng)100通過將數(shù)據(jù)即時地發(fā)布到控制數(shù)據(jù)庫114和/或I/O數(shù)據(jù)庫116(例如,控制應(yīng)用數(shù)據(jù)集402、I/O應(yīng)用數(shù)據(jù)集502)來提供跨所有計算節(jié)點130的緊密同步。在一個實施例中,當應(yīng)用(例如,控制應(yīng)用132,I/O應(yīng)用134)在不同的計算節(jié)點130中執(zhí)行時以及當數(shù)據(jù)被發(fā)布到控制數(shù)據(jù)庫114和/或I/O數(shù)據(jù)庫116時,進行緊密的現(xiàn)場網(wǎng)絡(luò)同步控制。在進一步的實施例中,考慮到網(wǎng)絡(luò)延遲,并且在整個控制周期中調(diào)度間隙。此外,這種大周期可以是部分自動的,例如在基礎(chǔ)(Foundation)現(xiàn)場總線模型中。

在又一個實施例中,處理控制計算系統(tǒng)100限定了可遷移控制元件(例如,控制應(yīng)用132),所述可遷移控制元件是整個回路。當控制在計算節(jié)點130之間遷移時(例如,從節(jié)點130-A到節(jié)點130-B),主控制模塊被保持在一起作為一個組。例如,整個控制應(yīng)用132可配置作為完整單元進行遷移。

在進一步的實施例中,處理控制計算系統(tǒng)100提供連續(xù)的處理控制。執(zhí)行節(jié)點110經(jīng)由通信信道120檢測一個或多個計算機節(jié)點130的添加。根據(jù)這種檢測,執(zhí)行節(jié)點110經(jīng)由通信信道120在添加的計算節(jié)點130和預(yù)先存在的計算節(jié)點130之間分配控制應(yīng)用132。在分配之后,控制應(yīng)用132產(chǎn)生電子數(shù)據(jù),由處理控制計算系統(tǒng)100利用這些電子數(shù)據(jù)來控制處理,所述處理改變或提煉原始材料以產(chǎn)生最終產(chǎn)品(例如,在化學制品、石油和天然氣、食品和飲料、藥物、水處理和電力行業(yè)中的處理)。

在進一步的實施例中,控制應(yīng)用132是算法,其補償跨多個計算節(jié)點130的復雜回路的碎片。在又一個實施例中,控制應(yīng)用132和I/O應(yīng)用134的采樣和執(zhí)行時間被增加以允許控制周期在處理頻率內(nèi)完成,這消除了死區(qū)時間。在替代的實施例中,空閑計算節(jié)點130是控制器內(nèi)的虛擬化元件。這種虛擬化將允許虛擬服務(wù)器來提供用于多個計算節(jié)點130的空閑容量。

根據(jù)本發(fā)明的附加方面,處理控制計算系統(tǒng)100提供處理控制系統(tǒng)中的高可用性。在一個實施例中,執(zhí)行節(jié)點110包括執(zhí)行服務(wù)管理器112和控制數(shù)據(jù)庫114。計算節(jié)點130-A經(jīng)由通信信道120在控制數(shù)據(jù)庫114中存儲當前狀態(tài)電子數(shù)據(jù)集和中間操作電子數(shù)據(jù)集,所述通信信道120連接到計算節(jié)點130-A和執(zhí)行節(jié)點110。執(zhí)行服務(wù)管理器112檢測計算節(jié)點130-A的故障,并且經(jīng)由通信信道120啟動當前狀態(tài)電子數(shù)據(jù)集和中間操作電子數(shù)據(jù)集從控制數(shù)據(jù)庫114到計算節(jié)點130-B的復制。計算節(jié)點130-B將當前狀態(tài)電子數(shù)據(jù)集和中間操作電子數(shù)據(jù)集變換成處理控制電子數(shù)據(jù)集,并接著發(fā)送處理控制電子數(shù)據(jù)集到處理控制裝置,所述處理控制裝置相應(yīng)地操縱該處理。

此外,根據(jù)附加實施例,處理控制計算系統(tǒng)100可以減少分布式計算環(huán)境中的死區(qū)時間。例如,執(zhí)行節(jié)點110可以在第一時間段內(nèi)采樣和執(zhí)行處理控制周期。然后可以在第二時間內(nèi)操作處理,其中第一時間段與第二時間段并發(fā),并且其中第一時間段短于第二時間段。

本發(fā)明的實施例可以包括專用計算機,其包括多種計算機硬件,如下文更詳細的描述。

在本發(fā)明范圍內(nèi)的實施例還包括計算機可讀介質(zhì),其用于攜帶或具有存儲在其上的計算機可執(zhí)行指令或數(shù)據(jù)結(jié)構(gòu)。這樣的計算機可讀介質(zhì)可以是任何可用的介質(zhì),其可以由專用計算機訪問。通過示例且非限制的方式,這樣的計算機可讀介質(zhì)可以包括RAM、ROM、EEPROM、CD-ROM或其他光盤存儲、磁盤存儲、或其他磁性存儲設(shè)備,或者可用于以計算機可執(zhí)行指令或數(shù)據(jù)結(jié)構(gòu)的形式攜帶或存儲所需程序代碼裝置的任何其他介質(zhì),所述計算機可執(zhí)行指令或數(shù)據(jù)結(jié)構(gòu)可以由通用或?qū)S糜嬎銠C訪問。當信息越過網(wǎng)絡(luò)或另一種通信連接(或者硬接線、無線、或者硬接線或無線的組合)傳輸或提供到計算機時,計算機適當?shù)貙⑦B接視為計算機可讀介質(zhì)。因此,任何這樣的連接被適當?shù)胤Q為計算機可讀介質(zhì)。上述組合也應(yīng)該被包含在計算機可讀介質(zhì)的范圍內(nèi)。計算機可執(zhí)行指令包括,例如,指令和數(shù)據(jù),其使通用計算機、專用計算機、或?qū)S锰幚硌b置執(zhí)行某個功能或某組功能。

下面的討論旨在提供合適的計算環(huán)境的簡要概括描述,本發(fā)明的方面可以在所述計算環(huán)境中被實現(xiàn)。雖然不是必需的,本發(fā)明的方面將在計算機可執(zhí)行指令的一般背景中進行描述,例如程序模塊,由網(wǎng)絡(luò)環(huán)境中的計算機來執(zhí)行。一般而言,程序模塊包括例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等,其執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型。計算機可執(zhí)行指令、相關(guān)數(shù)據(jù)結(jié)構(gòu)、以及程序模塊代表用于執(zhí)行本文所述方法的步驟的程序代碼裝置的示例。這樣的可執(zhí)行指令或相關(guān)數(shù)據(jù)結(jié)構(gòu)的特定序列代表用于實現(xiàn)在這些步驟中描述的功能的相應(yīng)動作的示例。

本領(lǐng)域技術(shù)人員可以理解的是,本發(fā)明的方面可以在具有很多類型的計算機系統(tǒng)配置的網(wǎng)絡(luò)計算環(huán)境中實現(xiàn),包括個人計算機、手持裝置、多處理器系統(tǒng)、基于微處理器或可編程的消費電子設(shè)備、網(wǎng)絡(luò)PC、小型計算機、大型計算機等。本發(fā)明的方面還可以在分布式計算環(huán)境中實現(xiàn),在分布式計算環(huán)境中任務(wù)由本地和遠程處理裝置來執(zhí)行,所述本地和遠程處理裝置通過通信網(wǎng)絡(luò)(或者通過硬接線鏈路、無線鏈路,或者通過硬接線或無線鏈路的組合)連接。在分布式計算環(huán)境中,程序模塊可以位于本地和遠程存儲器存儲裝置中。

用于實現(xiàn)本發(fā)明的方面的示例性系統(tǒng)包括以傳統(tǒng)計算機形式的包括處理單元的通用計算裝置、系統(tǒng)存儲器、以及系統(tǒng)總線,系統(tǒng)總線耦合各種系統(tǒng)組件(包括系統(tǒng)存儲器)到處理單元。系統(tǒng)總線可以是任何若干類型的總線結(jié)構(gòu),包括存儲器總線或存儲器控制器、外圍總線、以及使用任何若干總線架構(gòu)的本地總線。系統(tǒng)存儲器包括只讀存儲器(ROM)和隨機存取存儲器(RAM)。基本輸入/輸出系統(tǒng)(BIOS)(包括基本例程,該基本例程有助于在計算機內(nèi)的元件之間傳輸信息,例如在啟動的處理中)可以被存儲在ROM中。此外,計算機可以包括任何裝置(例如,計算機、筆記本電腦、平板電腦、PDA、手機、移動電話、智能電視等),其能夠無線地發(fā)送IP地址到互聯(lián)網(wǎng)或從互聯(lián)網(wǎng)接收IP地址。

計算機還可以包括用于從磁性硬盤讀取或?qū)懭氪判杂脖P的磁性硬盤驅(qū)動器、用于從可移動磁盤讀取或?qū)懭肟梢苿哟疟P的磁盤驅(qū)動器、以及用于從可移動光盤讀取或?qū)懭肟梢苿庸獗P(例如CD-ROM或其他光學介質(zhì))的光盤驅(qū)動器。磁性硬盤驅(qū)動器、磁盤驅(qū)動器和光盤驅(qū)動器分別通過硬盤驅(qū)動器接口、磁盤驅(qū)動器接口和光學驅(qū)動器接口連接到系統(tǒng)總線。驅(qū)動器及其相關(guān)計算機可讀介質(zhì)提供計算機可執(zhí)行指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和用于計算機的其他數(shù)據(jù)的非易失性存儲。雖然本文所述的示例性環(huán)境采用磁性硬盤、可移動磁盤和可移動光盤,但用于存儲數(shù)據(jù)的其他類型的計算可讀介質(zhì)可以被使用,包括磁帶盒、閃存卡、數(shù)字視頻光盤、伯努利盒、RAM、ROM、固態(tài)硬盤(SSD)等。

計算機通常包括各種計算機可讀介質(zhì)。計算機可讀介質(zhì)可以是由計算機訪問的任何可用介質(zhì),并且包括易失性和非易失性介質(zhì),可移動和不可移動介質(zhì)。以舉例的方式,且非限制的,計算機可讀介質(zhì)可以包括計算機存儲介質(zhì)和通信介質(zhì)。計算機存儲介質(zhì)包括以任何方法或技術(shù)實現(xiàn)的用于信息存儲的易失性和非易失性、可移動和不可移動介質(zhì),所述信息諸如計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù)。計算機存儲介質(zhì)是非臨時性的并且包括,但不限于,RAM、ROM、EEPROM、閃存或其他存儲器技術(shù)、CD-ROM、數(shù)字多功能光盤(DVD)或其他光盤存儲裝置、SSD、磁帶盒、磁帶、磁盤存儲器或其他磁性存儲裝置,或可以用于存儲所需非臨時性信息的任何其他介質(zhì),其可以由計算機訪問??商娲?,通信介質(zhì)通常體現(xiàn)為調(diào)制數(shù)據(jù)信號(例如載波或其他傳輸機制)中的計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù),并且包括任何信息傳遞介質(zhì)。

包括一個或多個程序模塊的程序代碼裝置可以被存儲在包括操作系統(tǒng)、一個或多個應(yīng)用程序、其他程序模塊和程序數(shù)據(jù)的硬盤、磁盤、光盤、ROM和/或RAM上。用戶可以通過鍵盤、定點裝置或其他輸入裝置(例如,麥克風、操縱桿、游戲手柄、衛(wèi)星天線、掃描儀等)將指令和信息輸入到計算機中。這些和其他輸入裝置通常通過耦合到系統(tǒng)總線的串行端口接口連接到處理單元??商娲兀斎胙b置可以通過其他接口連接,例如并行端口、游戲端口、或通用串行總線(USB)。監(jiān)視器或另一種顯示裝置也經(jīng)由接口(例如,視頻適配器48)連接到系統(tǒng)總線。除了監(jiān)視器,個人計算機通常包括其他外圍輸出裝置(未示出),例如揚聲器和打印機。

本發(fā)明的一個或多個方面可以作為應(yīng)用程序、程序模塊和/或程序數(shù)據(jù)被實施在存儲在系統(tǒng)存儲器或非易失性存儲器中的計算機可執(zhí)行指令(即,軟件)、例程或函數(shù)中。軟件可以可替代地被遠程地存儲,如存儲在具有遠程應(yīng)用程序的遠程計算機上。一般而言,程序模塊包括例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等,當由計算機中的處理器或其他裝置執(zhí)行程序模塊時,該程序模塊執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型。計算機可執(zhí)行指令可以被存儲在一個或多個有形的、非臨時性計算機可讀介質(zhì)中(例如,硬盤、光盤、可移動存儲介質(zhì)、固態(tài)存儲器、RAM等),并且由一個或多個處理器或其他裝置執(zhí)行。本領(lǐng)域技術(shù)人員可以理解的是,在不同實施例中,程序模塊的功能可以根據(jù)需要組合和分開。此外,所述功能可以全部或部分地在例如集成電路、應(yīng)用專用集成電路、現(xiàn)場可編程門陣列(FPGA)等的固件或硬件等效物中來實施。

計算機可以使用到一個或多個遠程計算機的邏輯連接來在網(wǎng)絡(luò)環(huán)境中運行。遠程計算機可以各自是另一臺個人計算機、平板電腦、PDA、服務(wù)器、路由器、網(wǎng)絡(luò)PC、對等裝置、或其他常見的網(wǎng)絡(luò)節(jié)點,并且通常包括許多或所有上述關(guān)于計算機的元件。邏輯連接包括局域網(wǎng)(LAN)和廣域網(wǎng)(WAN),這里通過非限制的示例方式提出。這樣的網(wǎng)絡(luò)環(huán)境在辦公室范圍或企業(yè)范圍的計算機網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)和互聯(lián)網(wǎng)中是常見的。

當在LAN網(wǎng)絡(luò)環(huán)境中使用時,計算機通過網(wǎng)絡(luò)接口或適配器連接到本地網(wǎng)絡(luò)。當在WAN網(wǎng)絡(luò)環(huán)境中使用時,計算機可以包括調(diào)制解調(diào)器、無線鏈路、或用于通過廣域網(wǎng)(例如,互聯(lián)網(wǎng))建立通信的其他部件。調(diào)制解調(diào)器,其可以是內(nèi)置或外置的,經(jīng)由串行端口接口連接到系統(tǒng)總線。在網(wǎng)絡(luò)環(huán)境中,關(guān)于計算機的所述程序模塊或其部分可以存儲在遠程存儲器存儲裝置中??梢岳斫獾氖?,所示的網(wǎng)絡(luò)連接是示例性的,并且可以使用通過廣域網(wǎng)建立通信的其他方式。

優(yōu)選地,計算機可執(zhí)行指令被存儲在存儲器(例如硬盤驅(qū)動器)中,并且由計算機執(zhí)行。有利地,計算機處理器有能力實時地執(zhí)行所有操作(例如,執(zhí)行計算機可執(zhí)行指令)。

本文示出和描述的本發(fā)明的實施例中操作的執(zhí)行或?qū)嵤╉樞虿皇潜匦璧?,除非另有?guī)定。即,操作可以以任何順序執(zhí)行,除非另有規(guī)定,并且本發(fā)明的實施例可以包括比本文所公開的更多或更少的操作。例如,可以預(yù)期的是,在另一個操作之前、同時、或之后,執(zhí)行或?qū)嵤┨囟ú僮魇窃诒景l(fā)明的方面的范圍內(nèi)。

本發(fā)明的實施例可以利用計算機可執(zhí)行指令來實現(xiàn)。計算機可執(zhí)行指令可以被組織到一個或多個計算機可執(zhí)行組件或模塊中。本發(fā)明的方面可以利用任何數(shù)量和組織的這些組件或模塊來實現(xiàn)。例如,本發(fā)明的方面不限于附圖中所示或本文所述的特定計算機可執(zhí)行指令或特定組件或模塊。本發(fā)明的其他實施例可以包括不同的計算機可執(zhí)行指令或具有比本文示出和描述更多或更少功能的組件。

當引入本發(fā)明的方面或其實施例的元件時,冠詞“一”、“一個”、“該”和“所述”意在表示存在一個或多個元件。術(shù)語“包括”、“包含”和“具有”意在是包容性的,并且表示除了所列元件之外還可以存在其他元件。

已經(jīng)詳細描述了本發(fā)明的方面,顯而易見的是,在不脫離所附權(quán)利要求所限定的本發(fā)明的方面的范圍的情況下,修改和變化是可能的。由于在不脫離本發(fā)明的方面的范圍的情況下,可以對上述結(jié)構(gòu)、產(chǎn)品和方法進行各種改變,其目的是包含在以上說明書和附圖中所示的所有內(nèi)容應(yīng)該被解釋為說明性的而不是限制性的。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
平原县| 易门县| 商水县| 景洪市| 门头沟区| 都昌县| 苏尼特右旗| 临颍县| 抚宁县| 湄潭县| 泰兴市| 犍为县| 晋州市| 黑河市| 栖霞市| 那坡县| 神农架林区| 吉木萨尔县| 两当县| 三亚市| 买车| 增城市| 广宁县| 辽阳市| 化隆| 抚松县| 刚察县| 保山市| 镇江市| 长海县| 遂溪县| 开阳县| 永泰县| 兴山县| 南康市| 林甸县| 搜索| 德格县| 闽侯县| 夏河县| 金平|