TWI289267B - Method, apparatus, system and machine-readable medium for dynamically managing components of applications - Google Patents
Method, apparatus, system and machine-readable medium for dynamically managing components of applications Download PDFInfo
- Publication number
- TWI289267B TWI289267B TW092100240A TW92100240A TWI289267B TW I289267 B TWI289267 B TW I289267B TW 092100240 A TW092100240 A TW 092100240A TW 92100240 A TW92100240 A TW 92100240A TW I289267 B TWI289267 B TW I289267B
- Authority
- TW
- Taiwan
- Prior art keywords
- component
- components
- interface
- application
- interfaces
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Computer And Data Communications (AREA)
- Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
Description
1289267 (Ο 玖、發明說明 (發明說明咖··㈣嫩細域、输術、㈣、衡式式簡單說明) 著作權公告 此專利文件的揭露一 料 ^ ^ 斗刀έ有受制於著作權保護的資 枓。當出現在專利 - 」和商‘局專利檔案或記錄中時, =者對專利文件或專利揭露為任何人所複製再現沒有星 :二:留任何其他所有著作權權利。當在下面和… 2述時’以下公告適用於軟體和資料.1作權卿, 英特爾公司,保留所有權利。 技術領域 本發明與應用程式組合和維護,R @ & ^4 h又且更明確地與應用程式 的動怨組合,的領域有關。 先前技術 J立一軟體應用程式可能是-非常適時和沈闊的程序。 此程序可能包含撰寫一技術規格 氣碼,或其任何組合。 广以所選擇的程式語言編寫、編譯、除錯、和執行一 ::程式。修改一軟體應用程式有時可能同樣沈闕,因為 母一次修改一元件它就必須重新編譯。 II㈣程序在鍊結時間靜態地鍵結所需的元件 (切數等)。這表示要修改的任^分 晋1>改的仕仃兀件必須在執行時間使用 匕-件的應用程式執行之前修改。因&,如果那些修改正 進行中、或是不正確,應用程式必須關閉直到對元件的 %改完成。 實施方式 地組合和維護應用程式 在本發明的一種態樣中,是動態 (2)1289267 發明敢明續頁 兀件框架當中,其中應 。另外,每一元件 些万法,讓元件框架管 元件框架、其他元件、 的一種方法。一應用程式建立在一 用私式的每一元件是元件框架的一 貝施一整合介面。整合介面包含一 理元件的生命週期,且給予元件與 和外部實體通信的能力。 尽發明包括各種運 由硬體元件勃广$ T I麵〜 尽發明的運作可 叫又扭7L忏執仃,或可具體實現在 * Η丨』 細·可執行的指令中, 用末引起以那些指令規劃的一 一般用 十、贫姑系t 尺符疋用途處理哭 或邏輯電路執行那些運作。或者, - 體的組合執行。 丨二運作可由硬體和軟 :發明可提供為一電腦程式產S,可能包括其上 “的-電腦可讀取媒ft,其上所料的指令可用來規劃 一電腦(或其他電子裝置),以執行依照本發明的一程序。 電腦可讀取的媒體可能包括,但不限制於軟式磁碟片、光 f片:小型碟片-唯讀記憶體(CD-R0MS)、和磁性光碟、唯 讀記憶體’Ms)、隨機存取記憶體(RAMs)、可消除可程式 唯讀記憶體(EPR0MS)、電磁可消除可程式唯讀記憶體 (EEPROMs)、磁性或光學卡片、快閃記憶體、或適合儲存 電子指令的其他類型之媒體/電腦可讀取的媒體。 而且,本發明也可下載當成一種電腦程式產品,其中程 式可經由一通信鏈結(例如,一數據機或網路連接)透過具 體實現在一載波或其他傳播媒體中的資料訊號’從一遠端 的书腩(舉例來忒,一伺服器)傳送到一請求的電腦(舉例來 忒,一用戶端)。因此,在此處載波將視為包含一電腦可 -6- 1289267 (3) 奋明說明續頁 讀取的媒體。 介紹 圖1舉例說明用以實現一動態地組合的應用程式之系統 架構。架構100包含一元件框架1〇2、一或更多的元件104A-N、一發訊機制106、一元件載入器108、一介面交換中心110、 和一元件倉庫112。每一應用程式包含一元件框架和一組 元件,而每一元件1〇4Α-Ν與一對應的介面114A-n有關。 因此,當建立一應用程式時,它是建立在一元件框架1〇2 當中’其中它的每-元件1()从_財現—整合介面u4A_N。 此外,一整合介面114A-N包含一些方法,讓元件框架管理 它的元件之生命週期。這些在下面進一步地描述。 元件 兀忏是不可分 …,、仏巩足,C + +語 中的類別、c語言中的函數、或軟體元去 旦7^素),和資源(整 和通信的介面)。不可分割的元件在一 T杜 兀件框架中必須 可配置的:元件A不應該依附在要完成 ^ ’、 疋风的另一兀件中的 函數。 元件可能使用不對稱編密包裝,以防止惡意的更改、 經由元件製造者的數位簽章識別他們。元件的製造者使 他們的私密金鑰包裝那些元件。元件的製造者在啟動時 將公開金鑰給元件框架,以便元件框架可解開包裝好的 件並取得數位簽章。 每一元件104A-N實現一整合介面114A_N,讓它的對應 件框架102管理它。 〜 1289267 (4) 發綱ίΡ月續兔 元件框架 一几件框架102提供一結構式框架,元件1〇4Α-Ν的集合在 當中運作。它的目的是多層的。其一,它負責在執行時間 載入和卸載元件104Α-Ν。當元件框架ι〇2從一外部實體U8 收到要載入並鏈結一元件1〇4Α-Ν的命令,例如一以GUI(圖 形使用者介面)為基礎的管理應用程式,元件框架從一來 源(元件倉庫112、持續性儲存體、插槽、檔案系統等)載入 所敘述的元件,然後並鏈結所載入的元件。 轉變元侔 元件框架102也藉由將那些元件1〇4A_N從初始化狀態轉變 到破壞狀態管理元件的生命週期。當一元件1〇4A-N實施整 合介面114A-N時’它繼承整合介面ι14Α-Ν的方法,允許元 件框架102將元件i〇4A_N從一狀態轉變到另一狀態。 圖2A是一範例結構,具有定義這些狀態的事件處理常式 CompFrameworklnterface,而這些狀態在圖2C-2F中說明。對 應於這些狀態的事件處理常式概述如下: 初始化(圖2C,第8-20行):元件框架102給一元件104A-N 機會準備操作。預期元件104A-N藉由初始化它的内部資料 結構、並藉由取得所需的資源回應這個呼叫。當一執行中 的元件104A-N回應這個狀態時,它應該準備好要執行正常 的運作。 取代(圖2C,第22行到圖2E,第8行):元件框架102通知 要被取代的元件104A-N它正被取代。為了轉移狀態,取代 事件處理常式把要給新元件104A-N的介面給元件框架 1289267 (5) 發明敢明續頁 102。當元件框架1〇2將要被取代的元件1〇4A-N之狀態完全 地轉移到新的元件1〇4A-N時,元件框架1〇2遞送一停止事 件到要被取代的元件104A-N。元件框架102接著啟動新的 元件 104A_N。 執行(圖2E,第10行到圖2F,第3行):當所有的資源準備 好供元件104A-N在正常操作模態中使用時,元件框架1〇2 轉變一元件104A-N到這個狀態。 停止(圖2F,第5-13行):元件框架102在破壞或卸載元件 104A-N之前,元件框架102給元件104A-N—個機會清除或釋 出資源(也就是,記馎體、檔案描述元件、取消已公告的 介面等),以便維護整個系統的穩定度。如果元件104a_n 不能繼續正常的運作,這個事件處理常式可能傳回一錯誤 碼(第11行)。 如圖2B所說明,元件框架102也經由整合介面114A-N與所 載入的元件104A-N通信。元件框架102可識別那些元件 104A-N,包括它們的名稱和版本,以管理那些元件1〇4A-N 如下: : getName方法(圖2B,第8· 11行)用來取得所載入元件1 〇4A- N的名稱。 吕61:\^5丨〇11方法(圖28’第13-16行)用來取得所載入元件的 版本。 初始化、取代、執行、停止、getName、和getVersion組件 由一對應的元件104A-N初始化。 1289267 (6) 發明諱明續頁 元件框架102提供一種機制給元杜A 心 啊币」、、口 tl件1〇4Α-Ν,以登錄由其他 元件丨04Α-Ν用來做元件-間通信的介面。如圖2(}_2j中所說 明,元件1〇4A-N使用它們對應的整合介面114a_n之下列事 件處理常式,以登錄它們做元件-間通信的介面: 所載入元件104 A-N的公告方法f固。ττ 心Λ , 口乃古(圖2Η,第4行到圖21第4 行),以公告資料和事件。 除去方法(圖21,第6-20行)允許—載入的元件l〇4A_N除去 先前所公告的介面。 所載入元件104Α-Ν的取回方法(圖21,第22行到圖2J,第16 行),以訂閱資料和事件。 事件 兀件框架102也可能通知登錄了的元件某些事件的發 生,例如元件104A-N何時啟動或停止、或一介面何時公告 或移除。如圖2K-2M所說明,對那些事件有興趣的任何元 件104A_N可對元件框架登錄’以在那些事件發生時被通 知0 addListener方法(圖2K,第14行到圖2L,第7行)允許一載 入的元件104A-N登錄所敘述事件的一事件處理常式或一監 聽程式。當所敘述的事件發生時,引發特定的監聽程式(事 件處理常式)。 removeListener方法(圖2L,第9行到圖2M ,第1行)允許一 載入的元件104A-N解除-登錄(除去)先前登錄的事件處理常 式或監聽程式。 這些組件在呼叫初始化方法以前由元件框架初始化。 -10- 1289267 (7) 這些事件在圖3A-3C中說明,並概述如下: 當元件框架102啟始一元件1〇4Α_Ν時,發生元件啟始了的 (圖3A,第3行)事件。 g元件框架1 〇 2停止或取代一元件10 4 A - N時,發生元件停 止了的(圖3A,第4行)事件。 當一元件104A-N公告一介面時,發生介面發出了的(圖 3A,第5行)事件。 當一元件104A-N除去一先前公告了的介面時,發生介面 除去了的(圖3A’第6行)事件。 當一元件104 A-N登錄一管理的命令時,發生命令發出了 的(圖3 A,第7行)事件。 發訊機制 往回參照圖1,元件框架102必須支援—些層次的通信’ 包括與外部實體118的通信,以便可接收各種命令。這些 命令包括影響元件丨㈣八…的生命週期的那些命令,例如元 件的啟始和停止。也支援其他命令,例如以一好的元件 104A:N取代一有程式錯誤的元件,關閉元件框架1〇2等。 本發明具體實施例中的—發訊機制⑽提供監聽外部會 體m的命令之能力。此機制’也稱為動態命令促成器 (DCF),提供元件1()4A_N-種在執行時間動g地登錄所需 要的管理命令和相關的回呼函數之方》去。當⑽收到所輸 入的命令時,DCF經由特定的回呼函數將所輸入的命令轉 送到擁有那些,命令的元件104A_N。圖4說明外部實體ιι8可 用來與元件框架102和執行中的元件1〇4A_N通信之定義。 !289267 (8) 發明說明續頁 發訊機制106可經由一訊息佇列、插槽、或任何其他lpc(程 序間通信)機制實施。 元件載入器 一凡件載入器108負責從例如一檔案系統、或一元件倉 庫112的一來源載入所敘述的元件1〇4A-N(見以下)。在載入 了所敘述的元件104A-N之後,它們鏈結到正執行中的應用 程式内。元件載入器1〇8應該能夠使用公開金鑰解開一包 裝過的元件104A-N,公開金鑰由使用者在元件框架1〇2的 啟動時提供。元件載入器108也應該能夠從所敘述的位置 (例如永久儲存器,或一網路連接)載入包裝過的元件丨〇4αν 。 元件載入态也可聯絡一網路中一可信任的中央主機,以 且珣和取回元件。除此之外,如果元件載入器參考它的對 等單元配置’例如一網路中的其他元件載入器,元件載入 知且為&的對等單元、並從那些有最快的回應時間之對 等單元取回所需要的元件。如果在元件的傳遞期間發生網 路連接問題,:元件載入器將試著從其他對等單元取回所需 要的元件而不管回應時間。 元件倉庫 兀件倉庫U2保存包裝過的元件104Α-Ν。當元件載入器108 而要載入一 tl件104A_N時,元件載入器ι〇8載入包裝過的 元件104A-N使用特定的公開金鑰解碼包裝過的元件1〇4A_ N、和確認作用中的元件1〇4A_N之製造者的數位簽章。 介面交換中心 -12- 1289267 (9) 發雕說明續耳 元件框架102應該提供一眾所週知的地方來收集、分類、 和供應介面。這個地方稱為介面交換中心110。介面交換 中心110的目的是提供元件104A-N可用來公告和除去介面的 一機制。 如果一元件1〇4Α_Ν想與其他元件104A-N共享它的内部資 料和事件,它將它的介面公告到介面交換中心110。想要 消耗公告的資料和事件那些元件104A-N來到介面交換中心 110,以取回公告過的介面。 介面交換中心11 〇不應該加上任何有線協定。那些元件 104A-N彼此協議適當的有線協定,提供那些元件104A-N建 立新的和適當的有線協定之彈性。 在元件框架和元件之間的通信 當一特定應用程式收到一開始命令時,元件框架102載 入並鏈結應用程式的一所敘述元件104A-N。應用程式首先 使用,舉例來說下列命令,找出包含元件104A-N的所敘述 共享程式館:
Start <Comp〇iient-Package-Name> <Interface-Accessor>
Component-Package-Name是包含元件104A-N和相關資源的 編密過的包裝之名稱。Interface-Accessor是元件框架用來從 所載入的元件104A-N取回一整合介面的函數名稱。當那個 函數名稱由元件框架102引用時,那個函數必須傳回一整 合介面114A-N。啟始那個元件104A_N的夕卜部實體118必須載 明那個函數名稱(Interface-Accessor),以便元件框架可啟始 一通信階段來從元件取回一整合介面。 -13 - 1289267 發_故明續頁 元件框架102載入含有所述元件1〇4A_N的所找到共享程式 館,然後並經由如啟動一元件的外部實體所敘述的一 interface-accessor取回整合介面114A-N。舉例來說: void*〈interface-accessor-name>(v〇id){…} 介面存取器接著傳回一指標到整合介面114A-N的一會 體。指標在元件104A-N的整個生命期間保持有效。 然後元件框架1〇2可使用所取回的整合介面114A-N藉由啟 動初始化方法將所載入且鏈結的元件104A-N轉變到初始化 狀態,並藉由啟動執行方法將所鏈結的元件104A-N轉變到 執行狀態。如果執行中的元件104A-N想要對其他元件ι〇4Α. N公告資料和事件供取回,執行中的元件1〇4A-N啟動它的 公告方法。如果元件想要消耗所公告的資料和事件,它啟 動它的取回方法。如果一執行中的元件想要接收事件,執 行中的元件啟動它的addListener方法。 當應用程式收到對一特定名稱和版本的元件1〇4A_N之一 停止命令時’元件框架1〇2卸載所敘述的元件l〇4A_N。在 收到停止命令:時’應用程式查詢所有元件104A-N它們的名 稱和版本。結束有所敘述的元件名稱和版本的第一個元件 104A N元件框架1〇2給所敘述的元件1〇4A-N—機會,藉由 將那個7L件i〇4A-N轉變到停止狀態執行清除。 然後當應用程式收到一退出命令時它退出。在應用程式 退出< W ’它以就像收到對所有元件ι〇4Α_Ν的一停止命令 相同之方式結束所有元件1〇4a_n。 圖5舉例过明元件框架和元件IN集合之間的相互 -14 - 1289267 U1) 發_諱明績頁、 作用0本 _ 曷一兀件104A-N由元件框架1〇2載入時,元件框架1〇2 啟動所載入元件的初始化方法502。當一執行中的元件 104A-N需要從元件框架1〇2卸載時,元件框架ι〇2啟動所載 入元件104A-N的停止方法504。 如果執行中的元件104八屮想要對其他元件1〇4A_N公告資 料和事件供耵閱,執行中的元件啟動所載入元件104A-N的 公告方法506。如果一元件i〇4A-N想要消耗所公告的資料 和事件,它啟動所載入元件1〇4A-N的取回方法508。 在元件之間的诵信 如圖6所說明,在對公告和取回方法兩者的至少一呼叫 之後’建立了元件-間通信的一通信匯流排600,允許元件 104A-N與彼此通信而不用元件框架1〇2介入。 那些元件104A-N它們自己定義一適當的有線協定和介 面。元件104A-N使用一介面彼此交談,而有線協定是用來 描述元件104A-N的意圖之語言。 產生資料及/或事件的那些元件104A-N經由元件框架102 的介面交換中:心11 〇公告一介面。消耗資料及/或事件的那 些元件104A-N經由介面交換中心110訂閱那些資料及/或事 件。如上面所陳述,當至少存在著一呼叫要公告和取回時, 會建立一通信匯流排600。 當一元件104 A-N想要與一或更多其他元件104 A-N通信 時,用戶元件啟動整合介面114A-N的取回方法508敘述元件 104A-N的一介面。如果所請求的介面存在,元件框架1〇2 將所敘述的介面給元件104A-N。一介面的存在只發生在當 -15- (12) 1289267 發明說明續頁 那個介面已經由一元件1〇4A-N公告時。用戶元件i〇4a_n使 用addListener方法通知生產者元件1〇4α·ν有關的事件。 f元件104Α-Ν之間的通信可以事件為基礎以便使流量減 到最少。那些兀件只從它們的對等單元和元件框架接收所 敘述的事件。舉例來說,當一事件發生在一特定元件當中, 而沒有其他元件登綠要接收那個事件時,將不會廣播所發 生的事件。這個限制適用於所有的事件和元件。當任何一 7C件104A-N想要結束_通信階段時,那些元件1〇4a_n必須 彼此通知。此外,元件104A-N應該能夠感應一通信階段的 兴常結束’並因此對它反應。 應用程式的快i亲 使用上面所述的方法,一應用程式能夠在執行時間載入 和鍵結一元件。舉例來說,假定一應用程式包含元件A、B、 C、和D,且因為元件b被升級所以應用程式正在執行而沒 有元件B 也假足元件B包裝在Component-Package-B中。當 元件B準備好時’它可如下面所述載入和鏈結到其他元件。 應用程式從:一外部實體接收一開始命令,外部實體提 供,介面存取器函數IA—B,給應用程式。應用程式的元件 框架載入並鏈結一所述的元件。應用程式首先使用,舉例 來說下列命令’找出包含元件的所敘述共享程式館:
Start <Component.Package-B> <IA^B> 兀件框架載入所找到含有所述元件的共享程式館,然後 並使用介面存取器函數藉由引用,舉例來說,v〇id* <IA—B>(v〇id){...}取回整合介面。然後介面存取器傳回一指 -16 - 1289267 (13) 發明說明續頁 ^^|||麵iei:難鑛麵類種麵 標到整合介面的一實體。 然後元件框架可使用所取回的整合介面藉由啟動初始化 方法,將載入且鏈結的元件B轉變到初始化狀態。然後應 用程式可利用元件B。 惠程式的動鮮φ辦 一有缺陷的及/或一過時的元件可在執行時間以一新的 元件取代。使用者(管理者、技術支援職員等)發出一取代 疋件命令到元件框架。元件框架經由整合介面的取代方法 通知執行中的元件關於取代的意圖。取代方法將要轉變的 執仃中7L件^狀您傳回到新的元件。當狀態的轉變完成 時’元件框架停止執行中的元件並啟動新的元件。 使用者啟動一診斷开 件。那個元件檢查所有其他執行中 凡件的狀態。如果發 ^ if 7Γ ^ ^ ^ 可兀件不是在一穩定的狀態中, 0 k/f 7L件發出一命令 元件倉庫中找不到一更新、二錯誤的元件。如果在區域性 信任的中央主機件,診斷元件可聯絡4 ^ ^ π ^ ^ π Β 又回一更新過的元件來取代錯 次的兀件。所:取回更 个 倉庫中。 ,W 、兀件包裝將儲存在區域性元件 舉例來說,能夠動熊 用一負載平 、 並鏈結元件的一應用程3
己的負載平衡演算法。”使:如一使用者想要使W 元件以,與/ ί + 用者的負載平衡演算法^ 件以舉例來說c語言,發展出來。 然後元件編譯到〜共享 館使用其相關公開金餘已提二:。然後那個共㈣ /、、七7G件框架的一私密金屬 -17- 1289267 _ (14) I發明說明續頁 裝。然後發出一命令到元件框架,以載入元件並鏈結到應 用程式。然後應用程式指派負載平衡工作到動態地載入和 聯接的元件。這個指派進行直到發出了一命令給應用程 式,指示它使用原來的負載平衡演算法。 方法 圖7是說明依照本發明的具體實施例,用以動態地組合 和維護一應用程式的方法之流程圖。流程圖從方塊700開 始並繼續進行到方塊702,在那裡收到將一元件整合到一 執行中的應用程式之指示。在方塊704,載入了元件,而 在方塊706,藉由取得元件的整合介面、並啟動整合介面 的初始化方法鏈結了元件。方法在方塊706結束。 結論 至此,已描述了用以在執行時間組合或維護一應用程式 而不用關閉執行中的元件框架之發明。 在前面的說明書中,本發明已參照其特定具體實施例描 述。然而,顯而易見的可對其進行各種修改和變化而不脫 離本發明的廣義精神和範疇。因此,說明書和圖式視為是 一種實例而非一限制的意向。 圖式簡單說明 本發明在伴隨的圖式之圖形中以範例的方式、而不以限 制的方式說明,且其中同樣的參考數字表示相似元件: 圖1是說明用以實現依照本發明的具體實施例之一動態 地組合的應用程式之系統架構的方塊圖。 圖2A-2M包含元件的識別和版本控制、元件的生命週期 -18- 1289267 (15) 管理、元件的通信能力、和事件通知的範例程式碼。 圖3 A-3C包含事件的發生之範例程式碼。 圖4包含與外部實體通信的元件之範例程式碼。 圖5是說明依照本發明的具體實施例在一元件框架和元 件之間的相互作用之方塊圖。 圖6是說明依照本發明的具體實施例之元件-間通信的方 塊圖。 圖7是說明依照本發明的一般具體實施例,動態地組合 和維護一應用程式的方法之流程圖。 圖式代表符號說明 102 元件框架 104 A 元件A 104N 元件N 106 發訊機制 108 元件載入器 110 介面交換中心 112 元件倉庫 114AJ14N 整合介面 116 作業系統 118 外部實體 502 初始化方法 504 停止方法 506 公告方法 508 取回方法 600 通信匯流排 -19-
Claims (1)
1289360100240號專利 26 -----------1 中文申請專利範圍訾換^(_)正替換頁 ::::i, '.....A.一.:』:—…‘二 1. 一種用以動態管理應用程式之元件的方法,包含: 接收一指示,以動態地將一元件整合到一執行中的應 用程式内; 載入元件;和 將元件鏈結到應用程式,藉由: 取得元件的整合介面5該整合介面含有用來管理元 件的方法;和 啟動該整合介面的一初始化方法。 2.如申請專利範圍第1項之方法,其中該元件是取代一已存 在元件的一新元件,且該方法附帶地包含啟動整合介面 的一取代方法,取代方法將已存在元件的一瑰存狀態轉 移到新元件内。 3. 如申請專利範圍第1項之方法,附帶地包含支援元件允許 其他元件與它通信的能力: 啟動整合介面的一公告方法,並敘述要對其他元件公 告的一或更多介面;和 將該等一或更多介面儲存在一介面交換中心中。 4. 如申請專利範圍第3項之方法,附帶地包含支援元件與其 他元件通信的能力: 查詢介面交換中心,以決定從其他元件取回的一或更 多介面; 啟動整合介面的一取回方法,並敘述從其他元件取回 的一或更多介面中的一介面;和 83050-951226.doc 1 1289267 使用所取回的介面與其他元件通信。 5.如申請專利範園第i項之方法, 閉時,啟動整合介面的一停止方;包含當元件準備好關 6·如申請專利範園第丨項之方法, 中,且該元件的載入包入 中應用私式是在一網路 7·如申請專利範固第6項之方法 々—組件取回元件。 元。 〃法’其中組件包含-對等單 8·如申請專利範園第7項之 乃成其中對菩 的另一元件載入器。 匕έ網路中 9_如申請專利範圍第6項之方法, ,、中組件包4辦|後+ 主機。 丁匕。網路中的— 10· —種用以動態管理應用程式 兀件的裝置,包本· -元件載入器,以載入複數個元件中:的 到-應用程式内,該等複數個元件對應於一鹿用二件 且每一元件實施一整合介面, "^式, 具有用以管理所載人+ 1 的一些方法; 丨孰入7L件 一介面交換中心,以儲在t放 , 坷#和管理對應於所 介面;和 1飘入兀件的 一發訊機制,以使外部實 耳組與所載入的元件通俨 11·如申請專利範圍第10項之裝 ° ° 裝置,其中整合介面包含: 一初始化方法,以將一姑々_ ° 争疋7L件轉變到一狀態 作;和 1水洙 一停止方法,以將特定元件轉變到一破壞狀態内。 12·如申請專利範圍第11項之裝置,附帶地包含_取代狀 態,藉由將一舊元件的一已存在狀態轉移到一新元件/ -2 83050-951226.doc
1289267 以新元件取代舊元件。 13. 如申請專利範圍第10項之裝置,其中應用程式是在一網 路中,且該元件的載入包含從網路中的一組件取回元件。 14. 一種用以動態管理應用程式之元件的系統,包含: 一整合介面,具有用以管理一元件的複數個方法; 實施該整合介面的至少一元件; 一元件倉庫,用以儲存該至少一元件; 對應於一應用程式的一元件框架,以管理使用該整合 介面的該至少一元件,該元件框架具有: 一元件載入器,以從元件倉庫載入所請求的元件到 一應用程式中; 一介面交換中心,以儲存和管理對應於所載入元件 的介面;和 一發訊機制,以使外部實體與所載入的元件通信。 15. 如申請專利範圍第14項之系統,附帶地包含元件·間通信 的一通信匯流排。 16. 如申請專利範圍第14項之系統,其中通信匯流排是在對 整合介面的一公告方法和一取回方法的至少一呼叫之後 建立。 17. 如申請專利範圍第14項之系統,其中應用程式是在一網 路中,且該元件的載入包含從網路中的一組件取回元件。 18. —種電腦可讀取的媒體,其上儲存有代表序列指令的資 料,當序列指令由一處理器執行時,引起處理器: 接收動態地將一元件整合到一執行中的應用程式中之 一指示; 83050-951226.doc
載入元件;和 將元件鏈結到應用程式,藉由: 取得元件的整合介面,該整合介面含有用以管理元 件的方法;和 啟動該整合介面的一初始化方法。 19·如申請專利範圍第18項之電腦可讀的媒體,其中元件是 一新的元件,且指令藉由啟動整合介面的一取代方法造 成處理器取代一已存在的元件,取代方法將已存在元件 的一現存狀態轉變到新元件内。 20·如申請專利範圍第18項之電腦可讀的媒體,指令造成處 理器附帶地支援元件允許其他元件與它通信的能力: 啟動整合介面的一公告方法,並敘述要對其他元件公 告的一或更多介面;和 將该等一或更多介面儲存在一介面交換中心中。 21·如申請專利範圍第20項之電腦可讀的媒體,指令造成處 理器附帶地支援元件與其他元件通信的能力: 查詢介面交換中心,以決定從其他元件取回的一或更 多介面; 啟動整合介面的一取回方法,並敘述從其他元件取回 的一或更多介面中的一介面;和 使用所取回的介面與其他元件通信。 22·如申請專利範圍第18項之電腦可讀的媒體,其中應用程 式是在一網路中,且該元件的載入包含從網路中的一組 件取回元件。 23· —種用以動態管理應用程式之元件的裝置,包本·· 83050-951226.doc -4 - 1289267 26
至少一處理器;和 一電腦可讀取的媒體,其上有編碼了指令,當指令由 處理器執行時,能夠指揮處理器: 接收動態地將一元件整合到一執行中的應用程式中 之一指示; 載入元件;和 將元件鏈結到應用程式,藉由·· 取得元件的整合介面,該整合介面含有用以管理元 件的方法;和
啟動該整合介面的一初始化方法。 24. 如申請專利範園第23項之裝置,其中元件是一新的元 件’且指令藉由啟動整合介面的一取代方法造成處理器 取代一已存在的元件,取代方法將已存在元件的一現存 狀態轉變到新元件内。 25. 如申請專利範圍第23項之裝置’指令造成處理器附帶地 支援元件允許其他元件與它通信的能力:
啟動整合介面的一公告方法’並敘述要對其他元件公 告的一或更多介面;和 將該等一或更多介面儲存在一介面交換中心中。 26·如申請專利範圍第25項之裝置,指令造成處理器附帶地 支援元件與其他元件通信的能力: 查詢介面交換中心,以決定從其他元件取回的一或更 多介面; 啟動整合介面的一取回方法’並敘述從其他元件取回 的一或更多介面中的一介面;和 83050-951226.doc 1289267
δ 日修(¼)正替换ι|
使用所取回的介面與其他元件通信。 27. —種用以動態管理應用程式之元件的裝置,包含: 載入構件,用以載入複數個元件中之所請求的元件到 一應用程式内,該等複數個元件對應於一應用程式,且 每一元件實施一整合介面,該介面具有用以管理所載入 元件的一些方法; 儲存和管理構件,用以儲存和管理對應於所载入元件 的介面;和 使外部實體與所載入的元件通信的構件。 28. 如申請專利範圍第27項之裝置,其中整合介面包含·· 構件,用以將一特定元件轉變到一狀態内來操作;和 構件,用以將特定元件轉變到一破壞狀態内。 29. 如申請專利範圍第27項之裝置,附帶地包含構件,用以 藉由將一舊元件的一已存在狀態轉移到一新元件,以新 元件取代舊元件。 30. 如申請專利範圍第27項之裝置,其中應用程式是在一網 路中,且該載入元件的構件包含用以從網路中的一組件 取回元件的構件。 83050-951226.doc 6-
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US10/040,654 US7246350B2 (en) | 2002-01-07 | 2002-01-07 | Dynamic composition and maintenance of applications |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW200412543A TW200412543A (en) | 2004-07-16 |
| TWI289267B true TWI289267B (en) | 2007-11-01 |
Family
ID=21912187
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW092100240A TWI289267B (en) | 2002-01-07 | 2003-01-07 | Method, apparatus, system and machine-readable medium for dynamically managing components of applications |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US7246350B2 (zh) |
| AU (1) | AU2003202203A1 (zh) |
| TW (1) | TWI289267B (zh) |
| WO (1) | WO2003058442A2 (zh) |
Families Citing this family (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4115759B2 (ja) * | 2002-07-01 | 2008-07-09 | 株式会社東芝 | 耐タンパプロセッサにおける共有ライブラリの使用方法およびそのプログラム |
| US7490183B2 (en) * | 2004-02-12 | 2009-02-10 | International Business Machines Corporation | Information kit integration architecture for end-user systems |
| JP4876438B2 (ja) * | 2005-05-31 | 2012-02-15 | 株式会社日立製作所 | コンポーネントソフトウェアの運用方法および運用基盤 |
| US8122444B2 (en) * | 2007-08-02 | 2012-02-21 | Accenture Global Services Limited | Legacy application decommissioning framework |
| US8112771B2 (en) * | 2008-01-30 | 2012-02-07 | Microsoft Corporation | Managing component programs within a service application |
| US8108831B2 (en) * | 2008-02-07 | 2012-01-31 | Microsoft Corporation | Iterative component binding |
| US8307329B2 (en) | 2008-02-07 | 2012-11-06 | Microsoft Corporation | Implicit composition of component bindings |
| US20100153942A1 (en) * | 2008-12-12 | 2010-06-17 | Lazar Borissov | Method and a system for delivering latest hotfixes with a support package stack |
| US20110185179A1 (en) * | 2009-08-26 | 2011-07-28 | Viswanathan Swaminathan | System And Method For Digital Rights Management With A Lightweight Digital Watermarking Component |
| US20110145734A1 (en) * | 2009-12-10 | 2011-06-16 | Microsoft Corporation | Processing Computer Implemented Action |
| KR20110080448A (ko) * | 2010-01-06 | 2011-07-13 | 삼성전자주식회사 | 애플리케이션 구축 시스템 및 그 방법 |
| US9110758B2 (en) | 2013-03-15 | 2015-08-18 | Western Digital Technologies, Inc. | Cross-platform software framework for embedded systems on data storage device |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5369766A (en) * | 1993-03-25 | 1994-11-29 | Taligent, Inc. | Object-oriented loader system with support for different load formats |
| US5761499A (en) * | 1995-12-21 | 1998-06-02 | Novell, Inc. | Method for managing globally distributed software components |
| US6434568B1 (en) * | 1999-08-31 | 2002-08-13 | Accenture Llp | Information services patterns in a netcentric environment |
| US6615253B1 (en) * | 1999-08-31 | 2003-09-02 | Accenture Llp | Efficient server side data retrieval for execution of client side applications |
| US6438594B1 (en) * | 1999-08-31 | 2002-08-20 | Accenture Llp | Delivering service to a client via a locally addressable interface |
| US6640238B1 (en) * | 1999-08-31 | 2003-10-28 | Accenture Llp | Activity component in a presentation services patterns environment |
| US6332163B1 (en) * | 1999-09-01 | 2001-12-18 | Accenture, Llp | Method for providing communication services over a computer network system |
| US6996832B2 (en) * | 2001-05-30 | 2006-02-07 | Bea Systems, Inc. | System and method for software component plug-in framework |
-
2002
- 2002-01-07 US US10/040,654 patent/US7246350B2/en not_active Expired - Lifetime
-
2003
- 2003-01-03 AU AU2003202203A patent/AU2003202203A1/en not_active Abandoned
- 2003-01-03 WO PCT/US2003/000113 patent/WO2003058442A2/en not_active Ceased
- 2003-01-07 TW TW092100240A patent/TWI289267B/zh not_active IP Right Cessation
Also Published As
| Publication number | Publication date |
|---|---|
| WO2003058442A2 (en) | 2003-07-17 |
| AU2003202203A1 (en) | 2003-07-24 |
| AU2003202203A8 (en) | 2003-07-24 |
| US20030131153A1 (en) | 2003-07-10 |
| US7246350B2 (en) | 2007-07-17 |
| TW200412543A (en) | 2004-07-16 |
| WO2003058442A3 (en) | 2005-01-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| RU2379755C2 (ru) | Система и способ для совместного использования объектов между компьютерами по сети | |
| TWI289267B (en) | Method, apparatus, system and machine-readable medium for dynamically managing components of applications | |
| US8209704B1 (en) | Techniques for user space and kernel space communication | |
| US20200225982A1 (en) | Event proxies for functions-as-a-service (faas) infrastructures | |
| Gheith et al. | Ibm bluemix mobile cloud services | |
| US20060206583A1 (en) | Framework for managing client application data in offline and online environments | |
| CN107135188B (zh) | 金融信息交换fix协议的业务实现方法、装置及系统 | |
| US8484616B1 (en) | Universal module model | |
| US8359603B1 (en) | Techniques for inter-user-space communication | |
| CN111033633A (zh) | 将数据记录上传到云存储库 | |
| TW200900923A (en) | Deterministic memory management in a computing environment | |
| AU2014238177A1 (en) | System and method for providing a genericized medical device architecture | |
| US12212622B2 (en) | Data auditing for object storage public clouds | |
| FR3006527A1 (fr) | Migration de composants applicatifs | |
| EP1429245A2 (fr) | Système informatique modulaire et procédé associé | |
| Katzer | Learning Serverless | |
| Exposito et al. | Smart SOA platforms in cloud computing architectures | |
| CN113157452B (zh) | 应用服务请求方法、装置、计算机设备及存储介质 | |
| CN116684241A (zh) | 容器管理调度平台消息传输方法、装置及存储介质 | |
| US11513833B1 (en) | Event listener interface for container-based execution of serverless functions | |
| Sharma et al. | Getting started with istio service mesh | |
| CN115118485A (zh) | 基于区块链获取数据的方法和装置 | |
| CN114090030B (zh) | 一种软件管理方法、基础软件管理平台、设备及存储介质 | |
| Chandy et al. | II: The Infospheres Infrastructure User Guide | |
| CN119728663A (zh) | 一种三方接口请求监控及管理的方法、装置、设备及介质 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| MM4A | Annulment or lapse of patent due to non-payment of fees |