專(zhuān)利名稱(chēng):生成方法的系統(tǒng)與方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于為信息模型生成實(shí)現(xiàn)方法的可執(zhí)行對(duì)象的方法、系統(tǒng)與程序。
背景技術(shù):
公共信息模型(CIM)是一種在包括來(lái)自不同廠家的設(shè)備的網(wǎng)絡(luò)環(huán)境中允許管理信息交換的工業(yè)標(biāo)準(zhǔn)規(guī)范,其中網(wǎng)絡(luò)可以包括異類(lèi)及同類(lèi)設(shè)備。CIM模式規(guī)定了一組管理程序調(diào)用以獲得信息并關(guān)于網(wǎng)絡(luò)中的設(shè)備執(zhí)行管理操作的包括方法與對(duì)象的類(lèi)。能夠在CIM環(huán)境中接口的網(wǎng)絡(luò)設(shè)備的每個(gè)廠家都必須提供一組實(shí)現(xiàn)CIM類(lèi)的特定于設(shè)備的API。廠家將提供CIM提供者,它是將由工業(yè)標(biāo)準(zhǔn)CIM模型定義的CIM API或方法映射到可以對(duì)特定設(shè)備實(shí)現(xiàn)所定義CIM API的功能性的特定于設(shè)備的API的程序模塊。在此所使用的術(shù)語(yǔ)“CIM API”指被調(diào)用以執(zhí)行CIM管理模式中所定義操作的任何方法、接口或功能。
CIM模式有三層。首先,內(nèi)核模式捕捉適用于所有管理區(qū)域的概念。其次,公共模式捕捉對(duì)特定管理區(qū)域公用但獨(dú)立于特定技術(shù)或?qū)崿F(xiàn)的概念。該公共區(qū)域是系統(tǒng)、設(shè)備、網(wǎng)絡(luò)、應(yīng)用程序、度量標(biāo)準(zhǔn)、數(shù)據(jù)庫(kù)、物理環(huán)境、事件定義與處理、CIM基礎(chǔ)結(jié)構(gòu)的管理(互操作性模型)、用戶(hù)與安全、策略與故障標(biāo)簽/知識(shí)交換(支撐模型)。以廠家中立(neutral)的方式,這些模型定義了尋址各管理區(qū)域的類(lèi)。第三,擴(kuò)展模式代表特定于機(jī)構(gòu)或廠家的公共模式擴(kuò)展。這些模式可以是特定于環(huán)境的,如操作系統(tǒng)、特定于技術(shù)的區(qū)域、及特定于產(chǎn)品的區(qū)域。CIM模式的正式定義在被管理對(duì)象文件(MOF)中表述,MOF是可以用作到MOF編輯器、解析器或編譯器的輸入以便產(chǎn)生可以由CIM應(yīng)用程序調(diào)用的可執(zhí)行代碼的ASCII或UNICODE文件。
在當(dāng)前技術(shù)中,為了調(diào)用CIM方法,開(kāi)發(fā)人員要寫(xiě)包括多種CIM協(xié)議語(yǔ)句的CIM應(yīng)用程序,以便允許CIM客戶(hù)端應(yīng)用程序能夠與CIM提供者建立通信并實(shí)例化服務(wù)器上的對(duì)象和類(lèi)以便使開(kāi)發(fā)人員想包括在CIM應(yīng)用程序中的方法得以執(zhí)行。
圖1說(shuō)明了用于調(diào)用用于國(guó)際商用機(jī)器(“IBM”)EnterpriseStorage System(ESS)的擴(kuò)展模式的CIM方法的代碼例子。(Enterprise Storage Server是IBM的注冊(cè)商標(biāo))。圖1的樣本代碼包括客戶(hù)端應(yīng)用程序?yàn)檎{(diào)用“CreateSynchronizedSet”方法必須要包括的許多語(yǔ)句,這些語(yǔ)句包括來(lái)自CIMClient類(lèi)的建立與CIM對(duì)象管理器會(huì)話(huà)的方法和來(lái)自CIMNameSpace類(lèi)的實(shí)例化用于連接的CIM命名空間的方法。CIM命名空間是表示特定環(huán)境中被管理對(duì)象的CIM類(lèi)和CIM實(shí)例的邏輯分組??蛻?hù)端協(xié)議語(yǔ)句還可以包括來(lái)自CIMValue類(lèi)的方法,CIMValue類(lèi)是封裝分配給返回到CIM客戶(hù)端應(yīng)用程序的屬性、引用和限定詞的CIM值的類(lèi)。因此,CIM方法的任何調(diào)用都需要CIM客戶(hù)端應(yīng)用程序的開(kāi)發(fā)人員必須包括CIM協(xié)議語(yǔ)句,以便啟用與服務(wù)器的通信和服務(wù)器上由客戶(hù)端所調(diào)用方法的執(zhí)行。
在本領(lǐng)域中,需要以最小化由于需要在調(diào)用CIM方法以執(zhí)行設(shè)備管理操作的應(yīng)用程序中包括CIM協(xié)議語(yǔ)句而造成的編程復(fù)雜性的方式提供調(diào)用CIM方法的改進(jìn)技術(shù)。
發(fā)明內(nèi)容
提供了用于為信息模型生成實(shí)現(xiàn)方法的可執(zhí)行對(duì)象的方法、系統(tǒng)和程序。接收包括定義實(shí)現(xiàn)信息模型中至少一種方法的類(lèi)的代碼的文件。該文件被翻譯,以產(chǎn)生面向?qū)ο蟮木幊?OOP)語(yǔ)言文件中該類(lèi)和該至少一種方法的面向?qū)ο蟮膶?shí)現(xiàn)。信息模型的協(xié)議語(yǔ)句添加到該OOP文件,以便使客戶(hù)端應(yīng)用程序能夠調(diào)用服務(wù)器上的該至少一種方法。該OOP文件被編譯,以產(chǎn)生能夠由對(duì)方法調(diào)用語(yǔ)句的調(diào)用所調(diào)用的可執(zhí)行對(duì)象,其中調(diào)用方法調(diào)用語(yǔ)句的客戶(hù)端應(yīng)用程序使協(xié)議語(yǔ)句和可執(zhí)行對(duì)象中的該至少一種方法得以執(zhí)行,以便調(diào)用服務(wù)器上的該至少一種方法。
提供了用于從客戶(hù)端應(yīng)用程序調(diào)用部署在服務(wù)器的方法的代碼,其中代碼使操作能夠執(zhí)行,這些操作包括執(zhí)行與提供信息模型中類(lèi)方法的面向?qū)ο蟮膶?shí)現(xiàn)的可執(zhí)行代碼關(guān)聯(lián)的方法調(diào)用語(yǔ)句和調(diào)用服務(wù)器上該方法的信息模型的協(xié)議語(yǔ)句;響應(yīng)執(zhí)行方法調(diào)用語(yǔ)句,執(zhí)行在可執(zhí)行代碼中實(shí)現(xiàn)的協(xié)議語(yǔ)句,以便建立與服務(wù)器的通信;及執(zhí)行在可執(zhí)行代碼中實(shí)現(xiàn)的方法,以便調(diào)用服務(wù)器上的方法。
還提供了部署計(jì)算基礎(chǔ)結(jié)構(gòu)的方法,包括將代碼集成到計(jì)算系統(tǒng)中,其中計(jì)算系統(tǒng)執(zhí)行調(diào)用方法語(yǔ)句并執(zhí)行與被調(diào)用方法語(yǔ)句關(guān)聯(lián)的可執(zhí)行代碼的代碼。
圖1說(shuō)明了現(xiàn)有技術(shù)中已知的客戶(hù)端應(yīng)用程序的例子。
圖2說(shuō)明了其中實(shí)現(xiàn)實(shí)施方式的網(wǎng)絡(luò)計(jì)算環(huán)境。
圖3說(shuō)明了其中實(shí)現(xiàn)實(shí)施方式的包括編譯器的系統(tǒng)的實(shí)施方式。
圖4說(shuō)明了調(diào)用方法的調(diào)用的實(shí)施方式。
圖5說(shuō)明了為信息模型中至少一種方法創(chuàng)建可執(zhí)行對(duì)象的操作的實(shí)施方式。
具體實(shí)施例方式
在以下描述中,參考構(gòu)成本發(fā)明一部分并說(shuō)明本發(fā)明幾種實(shí)施方式的附圖。應(yīng)當(dāng)理解其它實(shí)施方式也可以使用,而且在不背離本發(fā)明范圍的情況下可以進(jìn)行結(jié)構(gòu)和操作的改變。
圖2說(shuō)明了其中實(shí)現(xiàn)本發(fā)明各方面的計(jì)算體系結(jié)構(gòu)。多個(gè)客戶(hù)端系統(tǒng)2a、2b、...、2n,CIM對(duì)象管理器(CIMOM)4、CIM提供者6a、6b及被管理設(shè)備8a、8b、8c在網(wǎng)絡(luò)10上通信。每個(gè)客戶(hù)端2a、2b、...、2n包括CIM應(yīng)用程序10a、10b、...、10n,以生成并傳送包括關(guān)于被管理設(shè)備8a、8b、8c執(zhí)行管理操作的CIM API的CIM管理請(qǐng)求。CIMOM 4從CIM應(yīng)用程序10a、10b、...、10n接收CIM請(qǐng)求并將它們傳輸?shù)脚c請(qǐng)求所指向的被管理設(shè)備8a、8b、8c關(guān)聯(lián)的CIM提供者6a、6b。每個(gè)被管理設(shè)備8a、8b、...、8n實(shí)現(xiàn)特定于設(shè)備的API 12a、12b、...、12n,這些API在設(shè)備8a、8b、...、8n上執(zhí)行與管理相關(guān)的操作、檢索信息、配置等。CIM提供者6a、6b包括用于將CIM消息中的CIM命令映射到能夠在目標(biāo)被管理設(shè)備8a、8b、...、8n上實(shí)現(xiàn)CIM命令的特定于設(shè)備的API 12a、12b、...、12n的數(shù)據(jù)字典14a、14b。CIM模型的更多細(xì)節(jié)在分布式管理任務(wù)組(DMTF)的出版物中描述,包括“Common Information Model(CIM)Infrastructure Specification”版本2.3,初級(jí)(2004年8月11日);“CIMInterop Model White Paper”,CIM版本2.7,版本0.9(2003年6月19日);及“Common Information ModelCore Model”,版本2.4(2000年8月30日)。
網(wǎng)絡(luò)10可以包括本領(lǐng)域已知的任何網(wǎng)絡(luò),如局域網(wǎng)(LAN)、存儲(chǔ)區(qū)域網(wǎng)(SAN)、廣域網(wǎng)(WAN)、因特網(wǎng)、無(wú)線(xiàn)網(wǎng)絡(luò)等??蛇x地,網(wǎng)絡(luò)10可以包括總線(xiàn)接口??蛻?hù)端2a、2b、...、2n可以包括能夠運(yùn)行CIM應(yīng)用程序10a、10b、...、10n的任何類(lèi)型計(jì)算設(shè)備,如工作站、桌面計(jì)算機(jī)、服務(wù)器、膝上型計(jì)算機(jī)、大型機(jī)、電話(huà)設(shè)備、手持式計(jì)算機(jī)等。CIMOM 4可以在與客戶(hù)端2a、2b、...、2n分開(kāi)的系統(tǒng)中實(shí)現(xiàn)。CIM提供者6a、6b、...6n可以在與CIMOM分開(kāi)的系統(tǒng)上運(yùn)行或者在被管理設(shè)備8a、8b、8c中運(yùn)行。此外,一個(gè)CIM提供者6a、6b、...6n可以管理一個(gè)或多個(gè)被管理設(shè)備8a、8b、...8n的CIM消息。被管理設(shè)備8a、8b、...8n可以包括本領(lǐng)域已知的任何物理或邏輯設(shè)備,如對(duì)其可以提供獨(dú)立CIM提供者的存儲(chǔ)設(shè)備、存儲(chǔ)介質(zhì)、存儲(chǔ)介質(zhì)庫(kù)、光纖通道、開(kāi)關(guān)、結(jié)構(gòu)、數(shù)據(jù)庫(kù)等??梢杂腥我鈧€(gè)數(shù)的客戶(hù)端、CIMOM、CIM提供者和被管理設(shè)備,而且在網(wǎng)絡(luò)中它們之間的關(guān)系及實(shí)現(xiàn)不限于圖2所示組件的配置和布置。
在被管理設(shè)備8a、8b、...8n包括存儲(chǔ)設(shè)備或其它輸入/輸出設(shè)備的特定實(shí)施方式中,設(shè)備廠家可以提供實(shí)現(xiàn)CIM類(lèi)的CIM提供者,該CIM類(lèi)使調(diào)用CIM方法和API的客戶(hù)端2a、2b、2c能夠關(guān)于被管理設(shè)備8a、8b、...8n執(zhí)行與管理相關(guān)的操作,如配置存儲(chǔ)器中的邏輯分區(qū)、配置設(shè)置、監(jiān)視設(shè)備使用、配置用戶(hù)設(shè)置等。
CIM應(yīng)用程序10a、10b、...、10n可以本領(lǐng)域已知的方式,如出版物“Specification for CIM Operations Over HTTP”(版權(quán)分配管理任務(wù)組,2003年1月6日)中所描述的方式,生成包括一個(gè)或多個(gè)CIM API的CIM消息。例如,CIM消息可以包括包含CIM API的可擴(kuò)展標(biāo)記語(yǔ)言(XML)文件。包括在CIM消息中的CIM API還將包括該CIM API所指向的被管理設(shè)備8a、8b、...8n的目標(biāo)設(shè)備名或其它標(biāo)識(shí)符。
圖3說(shuō)明了開(kāi)發(fā)系統(tǒng)50的實(shí)施方式,包括用于執(zhí)行與設(shè)備管理相關(guān)的操作的CIM操作和方法的源代碼52。源代碼52可以包括對(duì)用被管理對(duì)象格式(MOF)語(yǔ)言所寫(xiě)的與設(shè)備管理相關(guān)的方法的調(diào)用,它定義了被管理資源的類(lèi)名和屬性。MOF文件的成分是面向?qū)ο箢?lèi)和實(shí)例定義的文本描述、元素限定詞(關(guān)于類(lèi)、屬性、方法等的元數(shù)據(jù))、注釋、編譯器指令及用于CIM模式的特定類(lèi)與實(shí)例定義。CIM協(xié)議類(lèi)54包括具有用于使客戶(hù)端能夠與CIMOM 4和CIM提供者6a、6b建立通信從而使由客戶(hù)端調(diào)用的方法被CIM提供者6a執(zhí)行以便執(zhí)行與設(shè)備8a、8b、8c管理相關(guān)的操作的方法的那些類(lèi)。
編譯器能夠?qū)⒃垂残畔⒛P?CIM)類(lèi)定義從一個(gè)或多個(gè)MOF文件翻譯成對(duì)調(diào)用方法、創(chuàng)建CIM類(lèi)實(shí)例及導(dǎo)航CIMOM 4服務(wù)器上實(shí)例所需的通信機(jī)制(CIM客戶(hù)端API/CIM協(xié)議)進(jìn)行抽象的可重用/可執(zhí)行面向?qū)ο蟮木幊?OOP)類(lèi)。編譯器56還將OOP文件58編譯成方法的可執(zhí)行對(duì)象代碼60。在一種實(shí)施方式中,由編譯器56生成的可執(zhí)行對(duì)象代碼60為提供管理類(lèi)與方法的擴(kuò)展類(lèi)實(shí)現(xiàn)管理特定設(shè)備的一種方法。在一種實(shí)施方式中,編譯器56可以包括解析MOF文件并將類(lèi)與實(shí)例轉(zhuǎn)換成如JavaTM的OOP語(yǔ)言類(lèi)的MOF編譯器功能(Java是Sun Microsystems公司的商標(biāo))。編譯器56可以將MOF文件52中定義的CIM元素映射到對(duì)應(yīng)的Java元素。
由于CIM方法名是由調(diào)用方法的可執(zhí)行對(duì)象代碼60的CIM提供者6a、6b命名的,因此客戶(hù)端應(yīng)用程序10a、10b、...、10n可以通過(guò)調(diào)用CIM方法名直接調(diào)用CIM方法。這種可執(zhí)行對(duì)象代碼60執(zhí)行協(xié)議語(yǔ)句并設(shè)置CIM客戶(hù)端類(lèi)中的值與參數(shù),以建立與CIMOM4的通信;設(shè)置CIM對(duì)象路徑類(lèi)中的值與參數(shù),以提供命名空間并引用該CIM元素;設(shè)置CIM命名空間類(lèi)中的值與參數(shù),以實(shí)例化CIM命名空間;及設(shè)置如CIM值和CIM屬性類(lèi)的其它協(xié)議類(lèi)中的值與參數(shù),以封裝CIM值與屬性,其中數(shù)據(jù)描述類(lèi)的數(shù)據(jù)。
圖4提供了CIM操作“SynchronizedSet”可以如何由調(diào)用方法的OOP語(yǔ)言語(yǔ)句調(diào)用的例子,該方法調(diào)用實(shí)現(xiàn)CIM方法的可執(zhí)行對(duì)象代碼60。這允許客戶(hù)端應(yīng)用程序10a、10b、...、10n利用單個(gè)調(diào)用來(lái)調(diào)用CIM類(lèi)方法,而不需要包括在調(diào)用方法的客戶(hù)端2a、2b、...、2n和CIMOM服務(wù)器4之間建立連接所需的全部CIM協(xié)議語(yǔ)句。因此,CIM應(yīng)用程序10a、10b、...、10n的開(kāi)發(fā)人員不需要在CIM協(xié)議語(yǔ)句上花費(fèi)編碼和調(diào)試的功夫,其中CIM協(xié)議語(yǔ)句包括在實(shí)現(xiàn)CIM方法與操作的可執(zhí)行對(duì)象代碼60中。
圖5說(shuō)明了在編譯器56中實(shí)現(xiàn)的將實(shí)現(xiàn)CIM方法的MOF文件翻譯成該方法的可執(zhí)行對(duì)象代碼60的操作。一旦啟動(dòng)將CIM方法或操作的源代碼52翻譯成可以從客戶(hù)端CIM應(yīng)用程序10a、10b、...、10n調(diào)用的可執(zhí)行對(duì)象文件60的操作,控制就在塊100開(kāi)始。作為啟動(dòng)變換操作的一部分,編譯器56將例如MOF文件的源代碼52及類(lèi)和實(shí)例解析成Java編程語(yǔ)言類(lèi)。編譯器56(在塊102)接收包括定義實(shí)現(xiàn)信息模型中類(lèi)的源代碼52的文件(例如,MOF),并(在塊104)翻譯該方法的源代碼52以便產(chǎn)生面向?qū)ο蟮木幊?OOP)語(yǔ)言文件58中該類(lèi)和方法的面向?qū)ο蟮膶?shí)現(xiàn)。
編譯器56(在塊106)還向OOP文件56添加信息模型的協(xié)議語(yǔ)句,以便使客戶(hù)端應(yīng)用程序10a、10b、...、10n能夠調(diào)用CIMOM服務(wù)器4上的方法。編譯器56(在塊108)可以添加來(lái)自協(xié)議類(lèi)的協(xié)議語(yǔ)句。該協(xié)議語(yǔ)句啟用客戶(hù)端和服務(wù)器處提供者6a、6b之間的通信,以便使客戶(hù)端應(yīng)用程序10a、10b、...、10n能夠利用提供者6a、6b調(diào)用如CIM方法的操作。在一種實(shí)施方式中,方法可以包括提供者翻譯成特定于設(shè)備的命令以便實(shí)現(xiàn)要進(jìn)行管理的設(shè)備8a、8b、8c的方法的功能性的獨(dú)立于設(shè)備的命令。來(lái)自CIM客戶(hù)端類(lèi)的方法可以(在塊108)添加,以便連接到CIMOM服務(wù)器4。編譯器56還可以(在塊110)向OOP文件58添加協(xié)議語(yǔ)句,以便實(shí)例化命名空間對(duì)象并例如從CIM命名空間為該命名空間設(shè)置參數(shù)。命名空間可以包括表示被管理對(duì)象,即表示被管理設(shè)備的對(duì)象,的類(lèi)與方法的邏輯分組。所添加的協(xié)議語(yǔ)句還可以(在塊112)包括語(yǔ)句,來(lái)設(shè)置到類(lèi)的路徑和識(shí)別服務(wù)器上的被管理對(duì)象及包括包含被調(diào)用方法,如來(lái)自CIMObjectPath類(lèi)的方法,的類(lèi)的命名空間。編譯器56還可以(在塊114)添加語(yǔ)句,來(lái)設(shè)置從服務(wù)器上被調(diào)用方法輸出的值,其中設(shè)置值的方法可以來(lái)自CIM Value類(lèi)。在用于方法和CIM協(xié)議類(lèi)語(yǔ)句的所有MOF代碼都添加到OOP語(yǔ)言文件58之后,編譯器56(在塊116)將OOP文件58翻譯成對(duì)一個(gè)或多個(gè)設(shè)備管理操作實(shí)現(xiàn)特定的CIM方法的可執(zhí)行對(duì)象60。
附加實(shí)施方式細(xì)節(jié)所述操作可以實(shí)現(xiàn)為利用標(biāo)準(zhǔn)編程和/或工程技術(shù)產(chǎn)生軟件、固件、硬件或其任何組合的方法、裝置或制品。在此所使用的術(shù)語(yǔ)“制品”指在介質(zhì)中實(shí)現(xiàn)的代碼或邏輯,其中此類(lèi)介質(zhì)可以包括硬件邏輯(例如,集成電路芯片、可編程門(mén)陣列(PGA)、專(zhuān)用集成電路(ASIC)等)或計(jì)算機(jī)可讀介質(zhì),如磁存儲(chǔ)介質(zhì)(例如,硬盤(pán)驅(qū)動(dòng)器、軟盤(pán)、磁帶等)、光存儲(chǔ)器(CD-ROM、光盤(pán)等)、易失和非易失存儲(chǔ)設(shè)備(例如,EEPROM、ROM、PROM、RAM、DRAM、SRAM、固件、可編程邏輯等)。計(jì)算機(jī)可讀介質(zhì)中的代碼可以由處理器訪(fǎng)問(wèn)并執(zhí)行。代碼或邏輯在其中編碼的介質(zhì)還可以包括通過(guò)空間或如光纖、銅線(xiàn)等的傳輸介質(zhì)傳播的傳輸信號(hào)。代碼或邏輯在其中編碼的傳輸信號(hào)還可以包括無(wú)線(xiàn)信號(hào)、衛(wèi)星發(fā)送、無(wú)線(xiàn)電波、紅外線(xiàn)信號(hào)、藍(lán)牙等。代碼或邏輯在其中編碼的傳輸信號(hào)能夠由發(fā)送站發(fā)送并由接收站接收,其中在發(fā)送信號(hào)中編碼的代碼或邏輯可以在接收和發(fā)送站或設(shè)備在硬件或計(jì)算機(jī)可讀介質(zhì)中解碼并存儲(chǔ)。此外,“制品”還可以包括代碼可以在其中體現(xiàn)、處理和執(zhí)行的硬件和軟件組件的組合。當(dāng)然,本領(lǐng)域技術(shù)人員應(yīng)當(dāng)認(rèn)識(shí)到在不背離本發(fā)明范圍的情況下可以對(duì)這種配置進(jìn)行許多修改,而且制品可以包括本領(lǐng)域已知的任何信息承載介質(zhì)。
在所描述的實(shí)施方式中,用于設(shè)備管理模式的信息模型是CIM模式。所述實(shí)施方式還可以應(yīng)用到除CIM模式以外的設(shè)備管理模式。在這種可選模式中,模式的協(xié)議語(yǔ)句啟用與實(shí)現(xiàn)方法的服務(wù)器或提供者的通信。
用于生成包括協(xié)議語(yǔ)句的CIM方法的所述實(shí)施方式可以由提供CIM方法(API)的的廠家實(shí)現(xiàn),其中CIM方法可以由客戶(hù)端和用戶(hù)部署到CIM環(huán)境中來(lái)執(zhí)行關(guān)于由廠家提供的設(shè)備的設(shè)備管理操作。以這種方式,廠家將使用所公開(kāi)的編譯器實(shí)施方式生成用在CIM環(huán)境中用于該廠家產(chǎn)品的CIM方法和API。
除非明確另外指出,否則術(shù)語(yǔ)“一實(shí)施方式”、“實(shí)施方式”、“該實(shí)施方式”、“一種或多種實(shí)施方式”、“一些實(shí)施方式”及“一種實(shí)施方式”意思是本發(fā)明的一種或多種(但不是全部)實(shí)施方式。
除非明確另外指出,否則術(shù)語(yǔ)“包括”、“包含”、“具有”及其變體意思是“包括但不限于”。
除非明確另外指出,否則列舉的項(xiàng)目列表并不暗示任何或全部項(xiàng)目是相互排斥的。
除非明確另外指出,否則術(shù)語(yǔ)“一個(gè)”和“該”意思是“一個(gè)或多個(gè)”。
除非明確另外指出,否則彼此通信的設(shè)備不需要彼此持續(xù)通信。此外,彼此通信的設(shè)備可以通過(guò)一個(gè)或多個(gè)中間件直接或間接通信。
有幾個(gè)彼此通信的組件的實(shí)施方式的描述并不暗示所有這些組件都是必需的。相反,多個(gè)可選組件的描述是為了說(shuō)明本發(fā)明廣泛的多種可能實(shí)施方式。
此外,盡管處理步驟、方法步驟、算法等可以順序描述,但此類(lèi)處理、方法和算法可以配置成以交替次序工作。換句話(huà)說(shuō),可描述的步驟的任何順序或次序都不一定指示步驟要以那種次序執(zhí)行的要求。在此所述的處理步驟可以以任何實(shí)際的次序執(zhí)行。此外,有些步驟可以同時(shí)執(zhí)行。
當(dāng)在此描述單個(gè)設(shè)備或物品時(shí),很顯然多于一個(gè)設(shè)備/物品(不管它們是否合作)可以代替單個(gè)設(shè)備/物品使用。類(lèi)似地,當(dāng)在此描述多于一個(gè)設(shè)備或物品時(shí)(不管它們是否合作),很顯然單個(gè)設(shè)備/物品(不管它們是否合作)可以代替多個(gè)設(shè)備或物品使用。
設(shè)備的功能性和/或特征可以可選地由未在此明確描述的一個(gè)或多個(gè)具有這種功能性和/或特征的設(shè)備體現(xiàn)。因此,本發(fā)明的其它實(shí)施方式不需要包括設(shè)備本身。
變量“n”指示元素實(shí)例的整數(shù)個(gè)數(shù),而且當(dāng)對(duì)不同的元素使用時(shí)可以取不同的值,使56n和86n可以分別指示區(qū)域信息和區(qū)域授權(quán)的相同或不同個(gè)數(shù)的實(shí)例。
在特定的實(shí)施方式中,文件集和元數(shù)據(jù)在單獨(dú)的存儲(chǔ)系統(tǒng)中維護(hù),而拷貝文件集和元數(shù)據(jù)的命令由系統(tǒng)在網(wǎng)絡(luò)上發(fā)送。在可選實(shí)施方式中,文件集和元數(shù)據(jù)可以在同一存儲(chǔ)系統(tǒng)中維護(hù),而拷貝命令可以由系統(tǒng)中的程序啟動(dòng),該系統(tǒng)還直接管理包括要拷貝的文件集和元數(shù)據(jù)的存儲(chǔ)設(shè)備。
圖5所說(shuō)明的操作示出了以特定次序發(fā)生的事件。在可選實(shí)施方式中,特定操作可以不同的次序執(zhí)行、修改或除去。而且,步驟可以添加到上述邏輯并仍然遵循所描述的實(shí)施方式。此外,在此所述的操作可以順序發(fā)生,或者特定操作可以并行處理。再次,操作可以由單個(gè)處理單元或由分布式處理單元執(zhí)行。
以上本發(fā)明各種實(shí)施方式的描述是為說(shuō)明和描述的目的提出的。它不打算是窮盡的或者要將本發(fā)明限定到所公開(kāi)的精確形式。根據(jù)以上教義,許多修改和變體都是可能的。本發(fā)明的范圍不是由具體描述限定,而是由所附權(quán)利要求限定的。以上說(shuō)明書(shū)、例子和數(shù)據(jù)提供了本發(fā)明組成部分制造和使用的完整描述。由于在不背離本發(fā)明主旨與范圍的情況下可以作出本發(fā)明的許多實(shí)施方式,因此本發(fā)明在于下文所附的權(quán)利要求。
權(quán)利要求
1.一種方法,包括接收包括定義實(shí)現(xiàn)信息模型中至少一種方法的類(lèi)的代碼的文件;翻譯該文件,以產(chǎn)生面向?qū)ο蟮木幊?OOP)語(yǔ)言文件中該類(lèi)和該至少一種方法的面向?qū)ο蟮膶?shí)現(xiàn);向該OOP文件添加信息模型的協(xié)議語(yǔ)句,以便使客戶(hù)端應(yīng)用程序能夠調(diào)用服務(wù)器上的該至少一種方法;及編譯該OOP文件,以產(chǎn)生能夠由對(duì)方法調(diào)用語(yǔ)句的調(diào)用來(lái)調(diào)用的可執(zhí)行對(duì)象,其中調(diào)用方法調(diào)用語(yǔ)句的客戶(hù)端應(yīng)用程序使可執(zhí)行對(duì)象中的該協(xié)議語(yǔ)句和該至少一種方法得以執(zhí)行,以便調(diào)用服務(wù)器上的該至少一種方法。
2.如權(quán)利要求1所述的方法,其中信息模型包括設(shè)備管理模式,而且其中該至少一種方法關(guān)于與設(shè)備相關(guān)的設(shè)備管理操作。
3.如權(quán)利要求2所述的方法,其中協(xié)議語(yǔ)句啟用客戶(hù)端與服務(wù)器處提供者之間的通信,以便使客戶(hù)端能夠通過(guò)提供者調(diào)用該至少一種方法,其中該至少一種方法包括提供者翻譯成特定于設(shè)備的命令以對(duì)設(shè)備實(shí)現(xiàn)該至少一種方法的功能性的與設(shè)備獨(dú)立的命令。
4.如權(quán)利要求2所述的方法,其中設(shè)備管理模式包括公共信息模型(CIM)模式。
5.如權(quán)利要求2所述的方法,其中設(shè)備管理模式實(shí)現(xiàn)包括對(duì)所有設(shè)備管理區(qū)域公用的類(lèi)與方法的內(nèi)核模型,而且其中通過(guò)可執(zhí)行對(duì)象調(diào)用的該至少一種方法是提供關(guān)于特定技術(shù)的類(lèi)的擴(kuò)展模式中的類(lèi)成員。
6.如權(quán)利要求1所述的方法,其中添加到OOP文件的協(xié)議語(yǔ)句建立連接到服務(wù)器處的對(duì)象管理器的連接,以便執(zhí)行該至少一種方法。
7.如權(quán)利要求1所述的方法,其中添加到OOP文件的協(xié)議語(yǔ)句實(shí)例化命名空間對(duì)象并設(shè)置該命名空間的參數(shù),其中該命名空間包括表示被管理對(duì)象的類(lèi)與方法的邏輯分組。
8.如權(quán)利要求7所述的方法,其中添加到OOP文件的協(xié)議語(yǔ)句設(shè)置到類(lèi)的路徑并識(shí)別服務(wù)器上的被管理對(duì)象和包括包含被調(diào)用方法的類(lèi)的命名空間。
9.如權(quán)利要求7所述的方法,其中添加到OOP文件的協(xié)議語(yǔ)句設(shè)置從服務(wù)器上的被調(diào)用方法輸出的值。
10.一種用于生成在服務(wù)器處部署并由客戶(hù)端應(yīng)用程序調(diào)用的方法的系統(tǒng),包括處理器;存儲(chǔ)設(shè)備,包括包含定義實(shí)現(xiàn)信息模型中至少一種方法的類(lèi)的代碼的文件;計(jì)算機(jī)可讀介質(zhì),包括由處理器執(zhí)行以便執(zhí)行操作的代碼,該操作包括翻譯該文件,以產(chǎn)生面向?qū)ο缶幊?OOP)語(yǔ)言文件中該類(lèi)和該至少一種方法的面向?qū)ο蟮膶?shí)現(xiàn);向該OOP文件添加信息模型的協(xié)議語(yǔ)句,以便使客戶(hù)端應(yīng)用程序能夠調(diào)用服務(wù)器上的該至少一種方法;及編譯該OOP文件,以產(chǎn)生能夠由對(duì)方法調(diào)用語(yǔ)句的調(diào)用來(lái)調(diào)用的可執(zhí)行對(duì)象,其中調(diào)用方法調(diào)用語(yǔ)句的客戶(hù)端應(yīng)用程序使可執(zhí)行對(duì)象中的協(xié)議語(yǔ)句和至少一種方法執(zhí)行,以便調(diào)用服務(wù)器上的該至少一種方法。
11.如權(quán)利要求10所述的系統(tǒng),其中信息模型包括設(shè)備管理模式,而且其中該至少一種方法關(guān)于與設(shè)備相關(guān)的設(shè)備管理操作。
12.如權(quán)利要求11所述的系統(tǒng),其中協(xié)議語(yǔ)句啟用客戶(hù)端與服務(wù)器處提供者之間的通信,以便使客戶(hù)端能夠通過(guò)提供者調(diào)用至少一種方法,其中該至少一種方法包括提供者翻譯成特定于設(shè)備的命令以對(duì)設(shè)備實(shí)現(xiàn)該至少一種方法的功能性的與設(shè)備獨(dú)立的命令。
13.如權(quán)利要求11所述的系統(tǒng),其中設(shè)備管理模式包括公共信息模型(CIM)模式。
14.如權(quán)利要求11所述的系統(tǒng),其中設(shè)備管理模式實(shí)現(xiàn)包括對(duì)所有設(shè)備管理區(qū)域公用的類(lèi)與方法的內(nèi)核模型,而且其中通過(guò)可執(zhí)行對(duì)象調(diào)用的至少一種方法是提供關(guān)于特定技術(shù)的類(lèi)的擴(kuò)展模式中的類(lèi)成員。
15.如權(quán)利要求10所述的系統(tǒng),其中添加到OOP文件的協(xié)議語(yǔ)句建立連接到服務(wù)器處的對(duì)象管理器的連接,以便執(zhí)行該至少一種方法。
16.如權(quán)利要求10所述的系統(tǒng),其中添加到OOP文件的協(xié)議語(yǔ)句實(shí)例化命名空間對(duì)象并設(shè)置該命名空間的參數(shù),其中該命名空間包括表示被管理對(duì)象的類(lèi)與方法的邏輯分組。
17.如權(quán)利要求16所述的系統(tǒng),其中添加到OOP文件的協(xié)議語(yǔ)句設(shè)置到類(lèi)的路徑并識(shí)別服務(wù)器上的被管理對(duì)象和包括包含被調(diào)用方法的類(lèi)的命名空間。
18.如權(quán)利要求16所述的系統(tǒng),其中添加到OOP文件的協(xié)議語(yǔ)句設(shè)置從服務(wù)器上的被調(diào)用方法輸出的值。
19.一種包括生成在服務(wù)器處部署并由客戶(hù)端應(yīng)用程序調(diào)用的方法的代碼的制品,其中代碼使操作得以執(zhí)行,該操作包括前面方法權(quán)利要求的任一方法的步驟。
20.一種包括用于從客戶(hù)端應(yīng)用程序調(diào)用在服務(wù)器處部署的方法的代碼的制品,其中代碼使操作得以執(zhí)行,該操作包括執(zhí)行與可執(zhí)行代碼關(guān)聯(lián)的方法調(diào)用語(yǔ)句,其中可執(zhí)行代碼提供信息模型中的類(lèi)中的方法的面向?qū)ο蟮膶?shí)現(xiàn)和信息模型的協(xié)議語(yǔ)句,以便調(diào)用服務(wù)器上的方法;響應(yīng)執(zhí)行方法調(diào)用語(yǔ)句,執(zhí)行在可執(zhí)行代碼中實(shí)現(xiàn)的協(xié)議語(yǔ)句,以便建立與服務(wù)器的通信;及執(zhí)行在可執(zhí)行代碼中實(shí)現(xiàn)的方法,以便調(diào)用服務(wù)器上的方法。
21.如權(quán)利要求20所述的制品,其中協(xié)議語(yǔ)句啟用客戶(hù)端與服務(wù)器處提供者之間的通信,以便使客戶(hù)端應(yīng)用程序能夠通過(guò)提供者調(diào)用至少一種方法,其中該方法包括提供者翻譯成特定于設(shè)備的命令以對(duì)該設(shè)備實(shí)現(xiàn)該至少一種方法的功能性的與設(shè)備獨(dú)立的命令。
22.如權(quán)利要求20所述的制品,其中在可執(zhí)行代碼中實(shí)現(xiàn)的協(xié)議語(yǔ)句建立連接到服務(wù)器處的對(duì)象管理器的連接,以便執(zhí)行該至少一種方法。
23.如權(quán)利要求20所述的制品,其中在可執(zhí)行代碼中實(shí)現(xiàn)的協(xié)議語(yǔ)句實(shí)例化命名空間對(duì)象并設(shè)置該命名空間的參數(shù),其中該命名空間包括表示被管理對(duì)象的類(lèi)與方法的邏輯分組。
24.如權(quán)利要求23所述的制品,其中在可執(zhí)行代碼中實(shí)現(xiàn)的協(xié)議語(yǔ)句設(shè)置到類(lèi)的路徑并識(shí)別服務(wù)器上的被管理對(duì)象和包括包含被調(diào)用方法的類(lèi)的命名空間。
25.如權(quán)利要求23所述的制品,其中在可執(zhí)行代碼中實(shí)現(xiàn)的協(xié)議語(yǔ)句設(shè)置從服務(wù)器上的被調(diào)用方法輸出的值。
26.一種用于部署計(jì)算基礎(chǔ)結(jié)構(gòu)的方法,包括將權(quán)利要求20的制品中的代碼集成到計(jì)算系統(tǒng)中,其中該計(jì)算系統(tǒng)執(zhí)行該代碼以執(zhí)行方法調(diào)用并執(zhí)行與被調(diào)用方法語(yǔ)句關(guān)聯(lián)的可執(zhí)行代碼。
全文摘要
提供了用于為信息模型生成實(shí)現(xiàn)方法的可執(zhí)行對(duì)象的方法、系統(tǒng)和程序。接收包括定義實(shí)現(xiàn)信息模型中至少一種方法的類(lèi)的代碼的文件。翻譯該文件,以產(chǎn)生面向?qū)ο蟮木幊?OOP)語(yǔ)言文件中該類(lèi)和至少一種方法的面向?qū)ο蟮膶?shí)現(xiàn)。將信息模型的協(xié)議語(yǔ)句添加到該OOP文件,以便使客戶(hù)端應(yīng)用程序能夠調(diào)用服務(wù)器上的該至少一種方法。編譯該OOP文件,以便產(chǎn)生能夠由對(duì)方法調(diào)用語(yǔ)句的調(diào)用來(lái)調(diào)用的可執(zhí)行對(duì)象,其中調(diào)用方法調(diào)用語(yǔ)句的客戶(hù)端應(yīng)用程序使該可執(zhí)行對(duì)象中的協(xié)議語(yǔ)句和至少一種方法得以執(zhí)行,以便調(diào)用服務(wù)器上的該至少一種方法。
文檔編號(hào)G06F9/45GK1869937SQ20061008034
公開(kāi)日2006年11月29日 申請(qǐng)日期2006年5月12日 優(yōu)先權(quán)日2005年5月13日
發(fā)明者瑪麗亞·S.·拉賈卡尼馬里亞恩, 斯里拉姆·M.·帕拉普迪, 萊納·沃拉夫卡 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司