專利名稱:應用模塊管理系統(tǒng)、應用模塊執(zhí)行方法以及虛擬機的制作方法
技術領域:
本發(fā)明涉及一種軟件集成技術,特別涉及可以將應用軟件的功能集 成在一起的應用模塊管理系統(tǒng)、應用模塊執(zhí)行方法以及虛擬機。
背景技術:
目前存在著大量的應用軟件,但是用戶在使用應用軟件時,應用軟
件之間的數(shù)據(jù)和功能不能夠很好互通,比如在word (注冊商標)文檔 中,如何使用一個photo shop (注冊商標)的"銳化"功能或者用mse 來畫一幅圖,如何在任意的軟件中都能使用翻譯的功能的工具。要實現(xiàn) 這樣的功能,要在用戶的計算機上安裝很多的應用軟件。有時僅僅是為 了打幵一種文件來瀏覽,為了完成一件工作,不得不安裝很多軟件,并 同時打開很多不同程序的窗口 ,被迫在不同的應用程序之間切換。
對于在同一種應用中,使用不同應用的功能,現(xiàn)在比較好的方式是 采用OLE技術和插件技術。
對于OLE技術來說首先要引入或者定義OLE對象,那么在使用時 才可以在另外一個程序中調用其他的程序來編輯OLE對象,否則就不 能使用,并且用戶必須要安裝不同的軟件才可以,即使用戶只需要其中 的一個功能,也必須要完整地安裝到計算機上。
如果使用插件技術,首先應用程序要支持插接的結構,其次軟件開 發(fā)者要針對不同的應用提供不同的插件,比如金山詞霸(注冊商標)的 插件要在word (注冊商標)和acrobat (注冊商標)中使用,就必須提 供兩個插件來分別安裝到不同的軟件中。
各個軟件都是孤立的,各自有一套自己的程序空間,數(shù)據(jù)空間,每 個軟件都要重新構建和設計這樣的環(huán)境,造成極大的浪費,同時用戶使 用軟件時,就必須安裝很多軟件,并被迫在不同的應用程序之間切換。 這樣不僅是對計算機資源的嚴重浪費,而且也是對程序開發(fā)資源的嚴重
6浪費。
發(fā)明內容
本發(fā)明正是為了解決上述技術問題,提供一種可以簡單將應用軟件 的功能集成在一起,而不必安裝完整的該應用軟件,按需組合成自己的 個性化軟件的應用模塊管理系統(tǒng)、應用模塊執(zhí)行方法以及虛擬機。
為達到上述目的,本發(fā)明的應用模塊管理系統(tǒng),包括界面引擎, 包括選擇單元,用于選擇至少一個功能子模塊,所述至少一個功能子模 塊具有對應的應用模塊;管理器,包括第一加載單元,用于從物理存儲 裝置中加載所述應用模塊;執(zhí)行器,包括執(zhí)行單元,用于組織所述應用 模塊,驅動至少一個所述應用模塊的執(zhí)行。
根據(jù)本發(fā)明的應用模塊管理系統(tǒng),可以改造現(xiàn)有的軟件開發(fā)模式, 使程序開發(fā)向功能開發(fā)轉變進一步細化軟件開發(fā)的分工,用戶可以按需 組合自己所需的程序,而不必購買完整的應用軟件。例如,用戶可以隨 意在軟件中加入word, photo sh叩,rose等等的部分或全部的功能,常用 的工作可以在一個軟件中完成,不必切換。
在上述應用模塊管理系統(tǒng)中,所述應用模塊是計算機可執(zhí)行的程序 模塊,對所述程序模塊設置有指針,所述執(zhí)行器根據(jù)所述指針調用所述 程序模塊。
在上述應用模塊管理系統(tǒng)中,所述執(zhí)行器還可以包括傳遞單元,用 于給每個所述應用模塊分別傳遞參數(shù)。
在上述應用模塊管理系統(tǒng)中,所述管理器還可以包括第二加載單 元,用于將持久化代碼加載到所述執(zhí)行器。
在上述應用模塊管理系統(tǒng)中,所述界面引擎還可以包括提供輸入 或者選擇數(shù)據(jù)單元的接口;所述管理器還包括第三加載單元,用于將 所述數(shù)據(jù)單元加載到所述執(zhí)行器。
在上述應用模塊管理系統(tǒng)中,所述程序模塊中可以包括通過程序
的Metadata描述形式聲明的加載點、輸入輸出的數(shù)據(jù)類型以及數(shù)據(jù)的 呈現(xiàn)手段。所述程序的metadata描述形式包括XML的形式或RDF的形式。在上述應用模塊管理系統(tǒng)中,還可以包括中間層,所述中間層包括綁定單元,用于綁定界面元素、數(shù)據(jù)元素和所述程序模塊;處理單元,用于在所述執(zhí)行器和所述界面引擎之間傳遞消息,更新數(shù)據(jù)和請求新的程序單元處理。
為達到上述目的,本發(fā)明的虛擬機,包括接口,包括數(shù)據(jù)訪問接口;管理模塊,包括,加載模塊,用于根據(jù)程序模塊的描述加載所述程序模塊,通過所述數(shù)據(jù)訪問接口將數(shù)據(jù)單元加載到數(shù)據(jù)空間中并進行管理;索引器,負責在所述數(shù)據(jù)空間中査詢和檢索所述數(shù)據(jù)單元,并輸出選擇的數(shù)據(jù)單元;執(zhí)行模塊,包括執(zhí)行單元,用于組織多個所述程序模塊,分別驅動多個所述程序模塊的執(zhí)行。
所述虛擬機還可以包括界面引擎,用于輸入界面元素和數(shù)據(jù)元素;和中間層,包括綁定單元,用于綁定界面元素、數(shù)據(jù)元素和所述程序模塊;處理單元,用于在所述執(zhí)行模塊和所述界面引擎之間傳遞消
息,更新數(shù)據(jù)和請求新的程序模塊處理。
所述管理模塊還可以包括合法性檢査模塊,根據(jù)數(shù)字簽名來校驗要加載的程序模塊的可信性。
所述管理模塊還可以包括DRM模塊,對要加載的程序模塊進行DRM驗證。
所述執(zhí)行模塊還可以包括傳遞單元,用于對每個所述程序模塊分別傳遞參數(shù),構造參數(shù)堆棧和輸出數(shù)據(jù)空間。
所述程序模塊中還可以包括通過程序的Metadata描述形式聲明的加載點、輸入輸出的數(shù)據(jù)類型以及數(shù)據(jù)的呈現(xiàn)手段。所述程序的metadata描述形式包括XML的形式或RDF的形式。
所述管理模塊還可以包括維護單元,用于維護加載數(shù)據(jù)的整個生
命周期,并提供類型檢查和合法性檢查,自動的垃圾回收。
所述虛擬機還可以包括程序空間,所有程序模塊由所述加載模塊加載到所述程序空間。
所述接口還可以包括持久化接口,將持久化代碼加載到所述程序空間。
利用上述虛擬機,就可以加載不同軟件的不同功能模塊,統(tǒng)一維護所有數(shù)據(jù)的類型檢查和生命周期,并在不同的應用中傳遞數(shù)據(jù)。開發(fā)者
只需開發(fā)和某一功能相關的數(shù)據(jù)處理單元并用Metadata的形式聲明自己,而不必構建完整的應用,不必維護數(shù)據(jù)的生命周期。也不必學習和了解要植入系統(tǒng)的接口。因而可以提高軟件開發(fā)周期。
本發(fā)明還提供一種應用模塊執(zhí)行方法,包括選擇步驟,選擇至少一個功能子模塊,所述至少一個功能子模塊具有對應的應用模塊;加載步驟,從物理存儲裝置中加載所述應用模塊;處理步驟,處理所述應用模塊,生成一個可執(zhí)行的應用模塊。
圖1表示本發(fā)明的應用模塊管理系統(tǒng)的主要構成圖。
圖2表示本發(fā)明的應用模塊管理系統(tǒng)的處理流程的一實施例。
圖3表示本發(fā)明的虛擬機的結構示意圖。
具體實施例方式
以下,參照附圖詳細說明本發(fā)明的具體實施方式
。
圖1表示本發(fā)明的應用模塊管理系統(tǒng)的主要構成圖。這種應用模塊管理系統(tǒng)關鍵的部分是把軟件拆散成合理的粒度(稱之為程序單元),比如現(xiàn)在的word軟件可以拆分成多個可以獨立執(zhí)行的程序片段,然后用一個通用的虛擬機統(tǒng)一管理,任意組合,用戶可以把不同的軟件,比如word軟件的部分程序單元和photo shop軟件的部分程序單元組合成一個應用,按需組合,屬于一種開放式的應用模塊管理系統(tǒng)。
這種應用模塊管理系統(tǒng)主要包括三部分界面引擎(User InterfaceEngine) 10、執(zhí)行器20以及管理器30。
界面引擎10呈現(xiàn)類似于瀏覽器的原理,支持基于腳本的組織方式來為用戶呈現(xiàn)數(shù)據(jù)和交互的接口,在呈現(xiàn)時根據(jù)原始數(shù)據(jù)和顯示樣式描述來做界面的渲染,形成腳本,最后呈現(xiàn)給用戶。界面引擎10可以包括人機交互的接口和選擇應用模塊的選擇單元。
執(zhí)行器20負責組織和驅動程序單元的執(zhí)行,根據(jù)程序單元的指針調用程序,并為程序單元傳遞參數(shù),構造參數(shù)堆棧和輸出數(shù)據(jù)空間。因
9此,執(zhí)行器20可以包括執(zhí)行單元和傳遞單元。
管理器30負載管理程序單元和數(shù)據(jù)單元,將數(shù)據(jù)從各種物理存儲 裝置加載到執(zhí)行器20,并將執(zhí)行器20執(zhí)行后的結果數(shù)據(jù)存儲到各種物 理存儲裝置中,也可以允許加載持久化代碼。上述物理存儲裝置,例如 可以是文件、數(shù)據(jù)庫,網(wǎng)絡等,其中包括程序單元庫40和數(shù)據(jù)單元庫 50。所謂持久化(Persistence),即是將數(shù)據(jù)(如內存中的對象)保存 到可永久保存的存儲設備(如磁盤)中。持久化的主要應用是將內存中 的數(shù)據(jù)存儲在關系型的數(shù)據(jù)庫中,當然也可以存儲在磁盤文件、XML 數(shù)據(jù)文件中等等。管理器30可以包括從程序單元庫加載程序單元的程 序加載單元、從數(shù)據(jù)單元庫加載數(shù)據(jù)的數(shù)據(jù)加載單元以及從數(shù)據(jù)單元庫 加載持久化代碼的持久化代碼加載單元。
當界面引擎10向執(zhí)行器20提交處理時,根據(jù)數(shù)據(jù)的ID向執(zhí)行器 20發(fā)出請求,執(zhí)行器20執(zhí)行后返回給界面引擎10。界面引擎10和執(zhí) 行器20之間還可以存在一個中間層,負責綁定界面元素、數(shù)據(jù)元素和 程序單元;負責在執(zhí)行器和界面引擎之間傳遞消息,更新數(shù)據(jù)和請求新 的程序單元處理。
當管理器30所加載的是持久化代碼時,則由執(zhí)行器20來組織和驅動。
在上述應用模塊管理系統(tǒng)中,程序單元通過Metadata的形式聲明 程序的加載點以及輸入和輸出的數(shù)據(jù)類型,以及數(shù)據(jù)的呈現(xiàn)手段,并提 供功能說明的描述。
metadata的描述采用XML或RDF的形式,metadata既可以描述程 序單元的輸入與輸出也可以用來描述一個數(shù)據(jù)對象,這個數(shù)據(jù)對象必須 是可以由簡單類型組合而來的。
所有發(fā)布的程序單元都由用于描述輸入/輸出的metadata和可加載 到執(zhí)行器中的二進制程序組成,并且都只負責處理輸入的數(shù)據(jù)并輸出結 果,空間的分配和數(shù)據(jù)的處理流程由執(zhí)行器處理。
對于程序單元的描述方式,包括程序的名稱,返回值,參數(shù)列表(輸
入數(shù)據(jù)和輸出數(shù)據(jù)),例如可以將一個翻譯程序單元簡單描述如下 < function >
<aNAME=', translate " success=,,0,, fail=" -1" >〈PARAMS〉
<p Type="Input" dataType= "String" index="l" value=""></p> <p Type="Output" dataType-" String " index="2" value=""></p> </ PARAMS >
</a> </ function >
數(shù)據(jù)對象是數(shù)據(jù)單元的具體形式,包括數(shù)據(jù)的類型,由那幾部分構
成,數(shù)據(jù)單元的類型名稱等。數(shù)據(jù)對象的描述方式則為 < DataObject NAME="VERSION,,>
<d type="long" name="Major" value="07> <d type="long " name="Minor" value="0"/> <d type=" long " name="Build" value="07> <d type=" long " name="Revision" value-"0'V〉 </DataObject>
圖2表示本發(fā)明的應用模塊管理系統(tǒng)的處理流程的一實施例,由供 應商或用戶提供的程序單元被保存在物理存儲裝置中的程序單元庫 中,而用戶提供的數(shù)據(jù)則被保存在物理存儲裝置中的數(shù)據(jù)單元庫中。在 執(zhí)行器中可以設置程序空間和數(shù)據(jù)空間,用于臨時保存所集成的多個程 序單元和數(shù)據(jù)單元。在執(zhí)行器中還可以設置具有高速處理能力的執(zhí)行空 間,用于臨時保存當前需要執(zhí)行的程序單元,以加快程序單元的執(zhí)行速 度。但也可以不設置執(zhí)行空間,直接通過指針調用方式調用存儲在程序 空間中的程序單元。
系統(tǒng)通過管理器將需要加載的程序單元從程序單元庫中加載到執(zhí) 行器中的程序空間(步驟l),并且根據(jù)需要,將數(shù)據(jù)單元從數(shù)據(jù)單元 庫中加載到執(zhí)行器中的數(shù)據(jù)空間(步驟2)。
執(zhí)行器將程序空間中的程序單元和數(shù)據(jù)空間中的數(shù)據(jù)單元輸出到 界面引擎,供用戶通過界面選擇需要執(zhí)行的多個程序單元構成的功能組 合,并且選擇該功能組合所需要的數(shù)據(jù)單元,并將選擇結果返回到執(zhí)行 器(步驟3、 4)。
執(zhí)行器將用戶所選擇的多個程序單元和多個數(shù)據(jù)單元中,當前需要 執(zhí)行的程序單元和數(shù)據(jù)單元從程序空間加載到執(zhí)行器的執(zhí)行空間(步驟 5、 6)。然后,執(zhí)行器執(zhí)行在執(zhí)行空間中的程序單元,處理數(shù)據(jù)(步驟7)。 執(zhí)行器將處理后的數(shù)據(jù)結果輸出到界面引擎,將數(shù)據(jù)結果通過界厘 呈現(xiàn)給用戶(步驟8),用戶根據(jù)需要選擇是否保存數(shù)據(jù)(步驟9), 當選擇保存程序時,則執(zhí)行器通過管理器將處理后的數(shù)據(jù)進行持久化, 即將數(shù)據(jù)從執(zhí)行器的數(shù)據(jù)空間中持久地保存到數(shù)據(jù)單元庫中(步驟 10)。
上述處理流程步驟并非全部必須,例如對于有些程序單元的處理并 不需要涉及對數(shù)據(jù)的處理,則上述有關數(shù)據(jù)處理的步驟就可以省略。而 且也可以根據(jù)所執(zhí)行的程序單元的不同,還可以適當變更上述處理流程 步驟的順序。
為了保證作為應用模塊管理系統(tǒng)的完整性,還需要補充消息傳遞模 塊、程序及數(shù)據(jù)索引器、drm模塊和數(shù)據(jù)訪問接口等輔助的部分,來構 成一個虛擬機。圖3表示本發(fā)明的虛擬機的結構示意圖。該虛擬機是以 程序單元的Metadata描述來加載和組織程序,用數(shù)據(jù)的Metadata描述 來做類型校驗和生命周期維護。
虛擬機主要包含以下功能模塊
1) 程序加載模塊,負責讀取并解析程序的meta data,根據(jù)程序單 元的Meta data來加載程序單元到函數(shù)表中,函數(shù)表中的函數(shù)以指針的 形式存在。每個程序單元都有自己的GUID (全局統(tǒng)一標識符)和數(shù)字 簽名,表明自己的身份。而GUID可以保證對在同一時空中的所有機器
都是唯一的。
程序加載模塊可以包括一個合法性檢査模塊,該合法性檢査模塊可 以根據(jù)數(shù)字簽名來校驗程序單元的可信性,避免加載惡意的代碼。
程序加載模塊還可以包括一個DRM模塊,每個虛擬機都有一個自 己GUID和一個token用于標識自己對軟件單元的使用權限;可以根據(jù) 程序單元的DRM key和虛擬機的token來計算出一個key,這個key可 以用來解開程序單元,并允許加載到合法的虛擬機中,否則將不能加 載。
2) 數(shù)據(jù)加載與維護模塊,所有的數(shù)據(jù)都可以XML或RDF的形式 來表達,但是也可以用壓縮和不同的編碼方式來對文檔進行加密,數(shù)據(jù)
12加載模塊可以將數(shù)據(jù)加載到數(shù)據(jù)空間中統(tǒng)一管理。也允許軟件提供商定 義自己的文件格式和管理方式,但需要軟件提供商提供加載和持久化的 程序單元。數(shù)據(jù)一旦被加載到虛擬機的數(shù)據(jù)空間,就將被統(tǒng)一管理起
來,用一個ID來標識在不同的程序單元中傳遞。
數(shù)據(jù)加載與維護模塊還負責維護加載數(shù)據(jù)的整個生命周期,并提供 類型檢查和合法性檢査,自動的垃圾回收等。
3) 執(zhí)行引擎,其核心是程序執(zhí)行模塊,負責組織和驅動程序單元 的執(zhí)行,根據(jù)程序單元的指針調用程序,并為程序單元傳遞參數(shù),構造 參數(shù)堆棧和輸出數(shù)據(jù)空間。
4) 數(shù)據(jù)訪問接口,負責將數(shù)據(jù)從不同物理存儲中(文件、數(shù)據(jù)庫, 網(wǎng)絡等)加載到虛擬機的數(shù)據(jù)空間;負責從虛擬機的數(shù)據(jù)空間中將數(shù)據(jù) 存儲到不同的物理存儲中(文件、數(shù)據(jù)庫,網(wǎng)絡等)。數(shù)據(jù)訪問接口包 括持久化接口,可以允許加載持久化代碼。持久化的執(zhí)行由程序執(zhí)行模 塊來組織和驅動。
5) 索引器,負責在程序空間查詢和檢索程序單元,在數(shù)據(jù)空間中 査詢和檢索數(shù)據(jù)單元。
6) 程序單元庫和數(shù)據(jù)/文件單元庫
7) 中間層,負責綁定界面元素、數(shù)據(jù)元素和程序單元;負責在執(zhí) 行器和界面引擎之間傳遞消息,更新數(shù)據(jù)和請求新的程序單元處理等。
利用上述虛擬機,就可以加載不同軟件的不同功能模塊,統(tǒng)一維護 所有數(shù)據(jù)的類型檢查和生命周期,并在不同的應用中傳遞數(shù)據(jù)。
通過采用本發(fā)明的應用模塊管理系統(tǒng),可以改造現(xiàn)有的軟件開發(fā)模 式,使程序開發(fā)向功能開發(fā)轉變進一步細化軟件開發(fā)的分工,用戶可以 按需組合自己所需的程序,而不必購買完整的應用軟件。例如,用戶可 以隨意在軟件中加入word, photo sh叩,rose等等的部分或全部的功能, 常用的工作可以在一個軟件中完成,不必切換。
這種應用模塊管理系統(tǒng)具有簡單的優(yōu)點,開發(fā)者只需開發(fā)和某一功 能相關的數(shù)據(jù)處理單元并用Meta data的形式聲明自己,而不必構建完 整的應用,不必維護數(shù)據(jù)的生命周期。也不必學習和了解要植入系統(tǒng)的 接口。因而可以縮短軟件開發(fā)周期。
權利要求
1、一種應用模塊管理系統(tǒng),包括界面引擎,包括選擇單元,用于選擇至少一個功能子模塊,所述至少一個功能子模塊具有對應的應用模塊;管理器,包括第一加載單元,用于從物理存儲裝置中加載所述應用模塊;執(zhí)行器,包括執(zhí)行單元,用于組織所述應用模塊,驅動至少一個所述應用模塊的執(zhí)行。
2、 根據(jù)權利要求1所述的應用模塊管理系統(tǒng),其特征在于, 所述應用模塊是計算機可執(zhí)行的程序模塊,對所述程序模塊設置有指針,所述執(zhí)行器根據(jù)所述指針調用所述程序模塊。
3、 根據(jù)權利要求1所述的應用模塊管理系統(tǒng),其特征在于, 所述執(zhí)行器還包括傳遞單元,用于給每個所述應用模塊分別傳遞參數(shù)。
4、 根據(jù)權利要求1所述的應用模塊管理系統(tǒng),其特征在于, 所述管理器還包括第二加載單元,用于將持久化代碼加載到所述執(zhí)行器。
5、 根據(jù)權利要求1 4中任一項所述的應用模塊管理系統(tǒng),其特征 在于,所述界面引擎還包括提供輸入或者選擇數(shù)據(jù)單元的接口; 所述管理器還包括第三加載單元,用于將所述數(shù)據(jù)單元加載到所 述執(zhí)行器。
6、 根據(jù)權利要求2所述的應用模塊管理系統(tǒng),其特征在于, 所述程序模塊中包括通過程序的Metadata描述形式聲明的加載點、輸入輸出的數(shù)據(jù)類型以及數(shù)據(jù)的呈現(xiàn)手段。
7、 根據(jù)權利要求6所述的應用模塊管理系統(tǒng),其特征在于, 所述程序的metadata描述形式包括XML的形式或RDF的形式。
8、 根據(jù)權利要求5所述的應用模塊管理系統(tǒng),其特征在于, 還包括中間層,所述中間層包括綁定單元,用于綁定界面元素、數(shù)據(jù)元素和所述程序模塊; 處理單元,用于在所述執(zhí)行器和所述界面引擎之間傳遞消息,更新 數(shù)據(jù)和請求新的程序單元處理。
9、 一種虛擬機,包括 接口,包括數(shù)據(jù)訪問接口;管理模塊,包括,加載模塊,用于根據(jù)程序模塊的描述加載所述程 序模塊,通過所述數(shù)據(jù)訪問接口將數(shù)據(jù)單元加載到數(shù)據(jù)空間中并進行管 理;索引器,負責在所述數(shù)據(jù)空間中查詢和檢索所述數(shù)據(jù)單元,并輸出 選擇的數(shù)據(jù)單元;執(zhí)行模塊,包括執(zhí)行單元,用于組織多個所述程序模塊,分別驅 動多個所述程序模塊的執(zhí)行。
10、 根據(jù)權利要求9所述的虛擬機,其特征在于,還包括 界面引擎,用于輸入界面元素和數(shù)據(jù)元素;和中間層,包括綁定單元,用于綁定界面元素、數(shù)據(jù)元素和所述程 序模塊;處理單元,用于在所述執(zhí)行模塊和所述界面引擎之間傳遞消 息,更新數(shù)據(jù)和請求新的程序模塊處理。
11、 根據(jù)權利要求9所述的虛擬機,其特征在于, 所述管理模塊還包括合法性檢査模塊,根據(jù)數(shù)字簽名來校驗要加載的程序模塊的可信性。
12、 根據(jù)權利要求9所述的虛擬機,其特征在于, 所述管理模塊還包括DRM模塊,對要加載的程序模塊進行DRM驗證。
13、 根據(jù)權利要求9所述的虛擬機,其特征在于, 所述執(zhí)行模塊還包括傳遞單元,用于對每個所述程序模塊分別傳遞參數(shù),構造參數(shù)堆棧和輸出數(shù)據(jù)空間。
14、 根據(jù)權利要求9所述的虛擬機,其特征在于, 所述程序模塊中包括通過程序的Metadata描述形式聲明的加載點、輸入輸出的數(shù)據(jù)類型以及數(shù)據(jù)的呈現(xiàn)手段。
15、 根據(jù)權利要求9所述的虛擬機,其特征在于,所述管理模塊,還包括維護單元,用于維護加載數(shù)據(jù)的整個生命 周期,并提供類型檢査和合法性檢査,自動的垃圾回收。
16、 根據(jù)權利要求14所述的虛擬機,其特征在于,所述程序的metadata描述形式包括XML的形式或RDF的形式。
17、 根據(jù)權利要求9所述的虛擬機,其特征在于, 還包括程序空間,所有程序模塊由所述加載模塊加載到所述程序空間。
18、 根據(jù)權利要求17所述的虛擬機,其特征在于, 所述接口還包括持久化接口,將持久化代碼加載到所述程序空間。
19、 一種應用模塊執(zhí)行方法,包括選擇步驟,選擇至少一個功能子模塊,所述至少一個功能子模塊具 有對應的應用模塊;加載步驟,從物理存儲裝置中加載所述應用模塊;處理步驟,處理所述應用模塊,生成一個可執(zhí)行的應用模塊。
20、 根據(jù)權利要求19所述的應用模塊執(zhí)行方法,其特征在于, 所述應用模塊是計算機可執(zhí)行的程序模塊,對所述程序模塊設置有指針,所述處理步驟根據(jù)所述指針調用所述程序模塊。
21、 根據(jù)權利要求19所述的應用模塊執(zhí)行方法,其特征在于, 在所述處理步驟中,對每個所述應用模塊分別傳遞參數(shù)。
22、 根據(jù)權利要求19所述的應用模塊執(zhí)行方法,其特征在于, 在所述加載步驟中,還加載持久化代碼。
23、 根據(jù)權利要求19 22中任一項所述的應用模塊執(zhí)行方法,其 特征在于,在所述選擇步驟中,進一步選擇數(shù)據(jù)單元; 在所述加載步驟中,還加載所述數(shù)據(jù)單元。
24、 根據(jù)權利要求20所述的應用模塊執(zhí)行方法,其特征在于, 所述程序模塊中包括通過程序的Metadata描述形式聲明的加載點、輸入輸出的數(shù)據(jù)類型以及數(shù)據(jù)的呈現(xiàn)手段。
25、 根據(jù)權利要求24所述的應用模塊執(zhí)行方法,其特征在于,所述程序的metadata描述形式包括XML的形式或RDF的形式。
全文摘要
本發(fā)明提供一種應用模塊管理系統(tǒng)、應用模塊執(zhí)行方法以及虛擬機,應用模塊管理系統(tǒng)包括界面引擎,包括選擇單元,用于選擇至少一個功能子模塊,所述至少一個功能子模塊具有對應的應用模塊;管理器,包括第一加載單元,用于從物理存儲裝置中加載所述應用模塊;執(zhí)行器,包括執(zhí)行單元,用于組織所述應用模塊,驅動至少一個所述應用模塊的執(zhí)行。這樣,可以簡單將應用軟件的功能集成在一起,而不必安裝完整的該應用軟件,按需組合成自己的個性化軟件。
文檔編號G06F9/44GK101477457SQ20081005590
公開日2009年7月8日 申請日期2008年1月2日 優(yōu)先權日2008年1月2日
發(fā)明者昂 范 申請人:聯(lián)想(北京)有限公司