專利名稱:便攜式應(yīng)用程序的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及存儲器設(shè)備和應(yīng)用程序,尤其涉及便攜式應(yīng)用程序。
背景技術(shù):
計算機(jī)已經(jīng)在我們的生活普及,可以在我們的家庭和工作場所,以及諸如圖書館、機(jī)場、咖啡店等越來越多的各種公共場所找到它的身影。因?yàn)槿藗冊絹硪蕾囉嬎銠C(jī),他們在任何地方使用計算機(jī)的期望可能也在日益增長。例如,當(dāng)用戶在家或辦公室以外的地方旅游時,他們常常期望訪問那些他們習(xí)慣于從家庭或辦公室訪問的程序和/或數(shù)據(jù)。但是,這存在著問題,因?yàn)橛脩魺o法指望程序可在遠(yuǎn)離他們的家或辦公室的計算機(jī)上使用,更無法指望他們所需的數(shù)據(jù)可在遠(yuǎn)離他們的家或辦公室的計算機(jī)上使用。
可用來解決這些問題的一個解決方案是讓用戶購買并在旅行途中隨身攜帶便攜式計算機(jī)。但是,便攜式計算機(jī)有其它的問題,因?yàn)樗鼈兛赡苓^大過重而不便在旅行途中隨身攜帶,過于昂貴而不利于購買,并且可能使用戶成為偷竊的目標(biāo)。
可用來解決這些問題的另一個解決方案是讓用戶在旅行時隨身攜帶硬盤驅(qū)動器。這一解決方案也可能有問題,因?yàn)榇蜷_硬盤驅(qū)動器并斷開到其計算機(jī)的連接,以及將硬盤驅(qū)動器安裝到另一個計算機(jī)上需要相當(dāng)大的力氣;使得他們的計算機(jī)沒有硬盤驅(qū)動器,從而通常無法使用;產(chǎn)生兼容性問題,因?yàn)橐褂脖P驅(qū)動器在另一個計算機(jī)上工作可能需要大量重新配置;并且可能產(chǎn)生法律問題,因?yàn)橛脩艨赡懿槐辉试S打開和篡改公共場所的計算機(jī)。
可用來解決這些問題中的至少一部分的另一個解決方案是將數(shù)據(jù)存儲到通用串行總線(USB)閃存設(shè)備中。這些USB閃存設(shè)備變得越來越常見,它們插在計算機(jī)上的USB端口中。這類USB設(shè)備允許用戶將數(shù)據(jù)從一個計算機(jī)轉(zhuǎn)移到USB設(shè)備,然后將該USB設(shè)備插入另一個計算機(jī)并訪問該USB設(shè)備上的數(shù)據(jù)。但是,此類USB設(shè)備僅僅解決了問題的一部分,因?yàn)樗鼈兺ǔH僅用來存儲數(shù)據(jù)。如果用戶所使用的計算機(jī)沒有正確的程序,那么數(shù)據(jù)通常不能以有用的形式供用戶訪問。
可用來解決這些問題中的至少一部分的另一種解決方案是讓用戶在旅行途中隨身攜帶盤(通常是CD或DVD)上的程序,如果程序在他或她所使用的計算機(jī)上不可用,那么用戶可將該程序安裝到該計算機(jī)上。但是,此解決方案僅僅解決了問題的一部分,因?yàn)榇祟惐P上通常沒有存儲用戶的數(shù)據(jù)。此外,此解決方案還有其它問題,因?yàn)楸P在某種程度上來說是易碎的,并且在旅行期間可能受到損壞,將程序安裝到計算機(jī)上的過程可能是很耗費(fèi)時間的(如果程序與計算機(jī)上運(yùn)行的其它程序不兼容,則可能耗費(fèi)更多時間),用戶在計算機(jī)上可能沒有足夠使用權(quán)限來安裝程序,此類多計算機(jī)上的安裝常常違反程序的許可協(xié)議,并且計算機(jī)的所有者(特別是在公共場合)通常不想要人們將其自己的程序安裝到計算機(jī)上。此解決方案的又一個問題是,當(dāng)用戶從計算機(jī)上卸載程序時,各種從未用過的注冊信息、數(shù)據(jù)等常常被遺留。
因此,有一種改進(jìn)的方法,讓用戶從一個計算機(jī)移到另一個計算機(jī),并可輕易地訪問他們所需的程序及可選地他們所需的數(shù)據(jù)將會是有利的。
發(fā)明內(nèi)容
本文描述便攜式應(yīng)用程序。
根據(jù)某幾個方面,便攜式存儲設(shè)備包括接口以及一個或多個存儲元件。這一個或多個存儲元件存儲一個或多個可執(zhí)行文件,這些文件可由該設(shè)備所耦合的主計算機(jī)執(zhí)行,且即使這一個或多個可執(zhí)行文件包括訪問環(huán)境設(shè)置的指令,也不會改變主計算機(jī)上的任何環(huán)境設(shè)置。
根據(jù)另外幾個方面,應(yīng)用程序被綁定到存儲一個或多個可執(zhí)行文件的便攜式存儲設(shè)備,執(zhí)行這些可執(zhí)行文件將運(yùn)行該應(yīng)用程序。
根據(jù)另外幾個方面,接收將便攜式應(yīng)用程序安裝在耦合到計算機(jī)的便攜式存儲設(shè)備上的請求。便攜式應(yīng)用程序的一個或多個可執(zhí)行文件被寫到便攜式存儲設(shè)備中,關(guān)于便攜式應(yīng)用程序的信息被寫到便攜式存儲設(shè)備上的專用存儲中。
全文使用相同標(biāo)號來引用相同的組件和/或特征。
圖1所示是可使用便攜式應(yīng)用程序的示例性環(huán)境的框圖。
圖2更詳細(xì)地示出一種示例性便攜式存儲設(shè)備。
圖3所示是一種用于執(zhí)行便攜式應(yīng)用程序的示例性過程的流程圖。
圖4所示是一種用于激活便攜式應(yīng)用程序的示例性過程的流程圖。
圖5所示是一種用于將便攜式應(yīng)用程序安裝在便攜式存儲設(shè)備上的示例性過程的流程圖。
圖6示出可使用本文所述的便攜式應(yīng)用程序的通用計算機(jī)環(huán)境。
具體實(shí)施例方式
本文描述便攜式應(yīng)用程序。一個或多個應(yīng)用程序被安裝在便攜式存儲設(shè)備上。當(dāng)便攜式存儲設(shè)備被插入或者耦合到一計算機(jī),該設(shè)備上所安裝的便攜式應(yīng)用程序被自動檢測,并可隨同用戶可能存儲在該設(shè)備上的任何數(shù)據(jù)供用戶使用。便攜式應(yīng)用程序不改變計算機(jī)上的任何環(huán)境設(shè)置,并且數(shù)據(jù)文件仍然保持在便攜式存儲設(shè)備上。用戶從而可訪問他或她所需要的應(yīng)用程序,與此同時在他或她結(jié)束計算機(jī)的使用之后,不會導(dǎo)致環(huán)境設(shè)置的改變,也不會遺留任何數(shù)據(jù)文件。
圖1所示是可使用便攜式應(yīng)用程序的示例性環(huán)境的框圖。環(huán)境100包括便攜式存儲設(shè)備102和主計算機(jī)104。便攜式存儲設(shè)備102可被耦合到主計算機(jī)104以及多個其它計算機(jī)(圖1中未示出),并可輕易地從其移除。便攜式存儲設(shè)備102可使用各種協(xié)議中的任何一種與主計算機(jī)104通信。例如,設(shè)備102可使用諸如USB版本1.0或版本2.0等通用串行總線(USB)連接,或使用諸如IEEE1394a或1394b等IEEE1394連接(有時稱為固件),或使用個人計算機(jī)存儲卡國際協(xié)會(PCMCIA)連接耦合到計算機(jī)104?;蛘撸O(shè)備102可使用各種其它公有或私有的連接協(xié)議中的任何一種耦合到計算機(jī)104。
用來將設(shè)備102耦合到計算機(jī)104的連接協(xié)議通常是“即插即用”連接協(xié)議。即插即用連接協(xié)議指允許主計算機(jī)自動檢測并將其自身配置成訪問連接到該主計算機(jī)的外圍設(shè)備的協(xié)議。當(dāng)外圍設(shè)備被插入到計算機(jī)104,計算機(jī)104可自動標(biāo)識并安裝在計算機(jī)104上運(yùn)行所需的任何設(shè)備驅(qū)動器或其它模塊,以使在計算機(jī)104上運(yùn)行的程序能訪問外圍設(shè)備。
便攜式存儲設(shè)備102包括接口106以及一個或多個存儲元件108,而計算機(jī)104包括處理器120、系統(tǒng)存儲器122(例如,隨機(jī)存取存儲器(RAM))、以及接口124。接口106和124允許設(shè)備102和計算機(jī)104根據(jù)連接協(xié)議相互傳遞信號。這些信號可以是數(shù)據(jù)信號和/或命令信號。
一個或多個存儲元件108可由一個或多個各種不同類型的存儲元件(諸如一個或多個閃存、一個或多個硬磁盤驅(qū)動器(例如,微驅(qū)動器)、一個或多個光盤驅(qū)動器、等等)組成。一個或多個存儲元件108包括應(yīng)用程序部分110和數(shù)據(jù)部分112。應(yīng)用程序部分110可存儲一個或多個便攜式應(yīng)用程序,它們可由計算機(jī)104的處理器120執(zhí)行。便攜式應(yīng)用程序是被設(shè)計成從存儲元件108運(yùn)行、并且即使應(yīng)用程序包括訪問系統(tǒng)設(shè)置的請求也不會改變主計算機(jī)104上的任何環(huán)境設(shè)置的應(yīng)用程序。如以下將更詳細(xì)討論的,便攜式應(yīng)用程序通常也被綁定到便攜式存儲設(shè)備102。
數(shù)據(jù)部分112可存儲一個或多個應(yīng)用程序的數(shù)據(jù)。存儲在部分112中的數(shù)據(jù)可供存儲在部分110中的便攜式應(yīng)用程序和/或其它應(yīng)用程序使用。
計算機(jī)104的處理器120與系統(tǒng)存儲器122和接口124通信以執(zhí)行包括存儲在存儲元件108中的應(yīng)用程序在內(nèi)的應(yīng)用程序。存儲在應(yīng)用程序部分110中的每一個應(yīng)用程序都是可由處理器120執(zhí)行(稱為執(zhí)行或運(yùn)行該應(yīng)用程序)的一個指令集。這些指令可由處理器120直接從存儲元件108加載并執(zhí)行,或者可在由處理器120加載和執(zhí)行以前被轉(zhuǎn)移到系統(tǒng)存儲器122中。還可在由處理器120執(zhí)行這些指令以前將這些指令從存儲元件108轉(zhuǎn)移到計算機(jī)104中的一個或多個高速緩存存儲器中。
可通過將便攜式存儲設(shè)備102插入到計算機(jī)104,來將其耦合到計算機(jī)104。此設(shè)備102到計算機(jī)104的耦合可以是直接連接或間接連接。便攜式存儲設(shè)備102可被直接連接到計算機(jī)104,諸如設(shè)備102上的插孔或連接器被插入到計算機(jī)104上的插孔或連接器。便攜式存儲設(shè)備102還可被間接地連接到計算機(jī)104,諸如通過一條或多條電纜或延長線路、一個或多個其它控制器(例如,USB集線器)、一個或多個其它外圍設(shè)備等方式。計算機(jī)104和便攜式存儲設(shè)備102之間的耦合可以是有線和/或無線的耦合。便攜式存儲設(shè)備102被稱為便攜式,因?yàn)樗辉O(shè)計成可由終端用戶輕易地耦合到一個或多個計算機(jī)104,并可輕易地從其去耦合,并且可由用戶輕易地運(yùn)送。
當(dāng)便攜式存儲設(shè)備102被耦合到計算機(jī)104時,計算機(jī)104自動檢測設(shè)備102的存在。此檢測是作為例如即插即用連接協(xié)議的一部分來執(zhí)行的。一旦被檢測到,便攜式存儲設(shè)備102即可被計算機(jī)104上執(zhí)行的應(yīng)用程序和操作系統(tǒng)訪問,以進(jìn)行數(shù)據(jù)存儲和應(yīng)用程序執(zhí)行。
在便攜式存儲設(shè)備102被檢測到以后,計算機(jī)104自動訪問設(shè)備102,并可運(yùn)行存儲在應(yīng)用程序110部分中的任何應(yīng)用程序,和/或給予計算機(jī)104的用戶運(yùn)行存儲在應(yīng)用程序部分110中的任何應(yīng)用程序的選擇。數(shù)據(jù)部分112也可被計算機(jī)104訪問,以允許計算機(jī)104檢索存儲在部分112中的任何數(shù)據(jù),以及將新的數(shù)據(jù)存儲到部分112中。
許多當(dāng)今的操作系統(tǒng)包括適當(dāng)?shù)脑O(shè)備驅(qū)動器以允許訪問便攜式存儲設(shè)備。如果當(dāng)便攜式閃存設(shè)備102被耦合到計算機(jī)104時這些設(shè)備驅(qū)動器未被安裝,則安裝這些設(shè)備驅(qū)動器(例如,作為即插即用控制協(xié)議的一部分)。但是,應(yīng)當(dāng)注意,不需要在主計算機(jī)104上安裝任何其它的設(shè)備驅(qū)動器或其它驅(qū)動器或軟件以使便攜式存儲設(shè)備102上的便攜式應(yīng)用程序被執(zhí)行。例如,不需要在主計算機(jī)104上安裝專屬于任何特定便攜式應(yīng)用程序的、或便攜式應(yīng)用程序通用的驅(qū)動程序。
圖2更詳細(xì)地示出一種示例性便攜式存儲設(shè)備。便攜式存儲設(shè)備102包括接口106以及一個或多個存儲元件108。存儲元件108包括自動運(yùn)行模塊160、一個或多個應(yīng)用程序文件162、專用存儲164、專用本地概況166、以及數(shù)據(jù)區(qū)168。數(shù)據(jù)區(qū)168包括在圖1的數(shù)據(jù)部分112中,而應(yīng)用程序文件162包括在圖1的應(yīng)用程序部分110中。自動運(yùn)行模塊160通常包括在應(yīng)用程序部分110中,盡管模塊160或可包括在數(shù)據(jù)部分112中。專用存儲164和專用本地概況166通常都包括在數(shù)據(jù)部分112中,盡管存儲164和概況166或可包括在應(yīng)用程序部分110中。
應(yīng)當(dāng)注意,便攜式存儲設(shè)備102不包括用于執(zhí)行便攜式應(yīng)用程序的處理器。便攜式存儲設(shè)備102不是便攜式或手持式計算機(jī),相反,便攜式存儲設(shè)備102是存儲設(shè)備。但是,在某幾個實(shí)施例中,便攜式存儲設(shè)備102可包括為安全目的或加密使用的處理器,但該處理器并非用于執(zhí)行存儲在便攜式存儲設(shè)備102上的便攜式應(yīng)用程序。
自動運(yùn)行模塊160被執(zhí)行以訪問存儲在便攜式存儲設(shè)備102上的應(yīng)用程序。自動運(yùn)行模塊160是用哪些應(yīng)用程序被存儲在便攜式存儲設(shè)備102上的知識,或者用如何確定哪些應(yīng)用程序被存儲在便攜式存儲設(shè)備102上(諸如通過訪問包括該信息的數(shù)據(jù)文件,掃描存儲元件108以尋找應(yīng)用程序模塊,等等)、以及如何執(zhí)行這些應(yīng)用程序的知識來編程的。自動運(yùn)行模塊160隨即可向便攜式存儲設(shè)備102所耦合到的主設(shè)備上的操作系統(tǒng)標(biāo)識哪些應(yīng)用程序162應(yīng)被加載并執(zhí)行,以執(zhí)行所期望的應(yīng)用程序。所期望的應(yīng)用程序可由例如用戶選擇,或可被自動編程到自動運(yùn)行模塊160中。
自動運(yùn)行模塊160可選地現(xiàn)實(shí)用戶界面,該用戶界面向用戶呈現(xiàn)用于與便攜式存儲設(shè)備102交互的各種選擇。這些選擇可包括,例如,存儲在便攜式存儲設(shè)備102上并可由用戶運(yùn)行的的應(yīng)用程序列表,以及存儲在便攜式存儲設(shè)備102上并可由用戶訪問(例如,讀取、刪除、復(fù)制、等等)的數(shù)據(jù)文件列表。用戶界面還可擔(dān)當(dāng)用戶拖放文件圖標(biāo)、以將對應(yīng)文件復(fù)制到便攜式存儲設(shè)備102中的目的地。用戶界面還可支持瀏覽功能,從而控制便攜式存儲設(shè)備102所耦合到的主設(shè)備上的操作系統(tǒng),以允許用戶訪問便攜式存儲設(shè)備102以及主設(shè)備的其它存儲設(shè)備、甚至經(jīng)由一個或多個網(wǎng)絡(luò)耦合到主設(shè)備的其它存儲設(shè)備上的不同文件夾或目錄。
自動運(yùn)行模塊160還允許特定文件類型與設(shè)備102的特定便攜式應(yīng)用程序相關(guān)聯(lián)。例如,一類文件可以是文件名以“.doc”結(jié)尾的文件,它們可與文字處理便攜式應(yīng)用程序相關(guān)聯(lián),而另一類文件可以是文件名以“.xls”結(jié)尾的文件,它們可與電子數(shù)據(jù)表便攜式應(yīng)用程序相關(guān)聯(lián)。特定文件類型到特定便攜式應(yīng)用程序的關(guān)聯(lián)可在自動運(yùn)行模塊160內(nèi),在專用存儲164中、或者設(shè)備102上的其它地方維護(hù)。特定文件類型與特定便攜式應(yīng)用程序的關(guān)聯(lián)是由設(shè)備102(例如,由自動運(yùn)行模塊160使用存儲在專用存儲164中的數(shù)據(jù)),而不是由設(shè)備102所耦合的主設(shè)備實(shí)現(xiàn)的。
將特定文件類型與特定便攜式應(yīng)用程序相關(guān)聯(lián)允許自動運(yùn)行模塊160在相關(guān)聯(lián)類型的文件被用戶選擇時(例如,由用戶雙擊表示文件的圖標(biāo)、由用戶使用鍵盤來導(dǎo)航到表示文件的圖標(biāo)或文件名,等等)自動運(yùn)行正確的便攜式應(yīng)用程序。例如,如果文件名以“.doc”結(jié)尾的文件與文字處理便攜式應(yīng)用程序相關(guān)聯(lián),那么如果用戶選擇“MyReport.doc”,則自動運(yùn)行模塊160可自動運(yùn)行文字處理便攜式應(yīng)用程序并將MyReport.doc文檔加載到文字處理便攜式應(yīng)用程序中。
將特定文件類型與特定便攜式應(yīng)用程序相關(guān)聯(lián)還允許自動運(yùn)行模塊160以其用戶界面的部分的形式呈現(xiàn)表示特定類型文件的特定圖標(biāo)。例如,可為所有文件名以“.doc”結(jié)尾的文件顯示標(biāo)識文字處理便攜式應(yīng)用程序的特定圖標(biāo)。為特定文件類型顯示的特定圖標(biāo)可在自動運(yùn)行模塊160內(nèi)、在專用存儲164中、或在設(shè)備102上的其它地方維護(hù)。
在某幾個實(shí)施例中,自動運(yùn)行模塊160由便攜式存儲設(shè)備102所耦合到的主設(shè)備的操作系統(tǒng)自動加載并執(zhí)行。在這些實(shí)施例中,主設(shè)備上的操作系統(tǒng)被配置成在檢測到便攜式存儲設(shè)備被耦合到主設(shè)備時隨時自動搜索自動運(yùn)行模塊160。例如,操作系統(tǒng)可搜索存儲元件108或存儲元件108上特定的一個或多個文件夾或文件目錄,以尋找具有特定名稱(諸如“Autorun.inf”)的自動運(yùn)行模塊,訪問存儲元件108的特定已知位置,等等。當(dāng)找到自動運(yùn)行模塊160時,操作系統(tǒng)執(zhí)行自動運(yùn)行模塊160中的指令。
或者,能以其它方式啟動自動運(yùn)行模塊160的執(zhí)行。例如,主設(shè)備的用戶能以常規(guī)方式通過操作系統(tǒng)訪問便攜式存儲設(shè)備102,而不是在便攜式存儲設(shè)備102被耦合到主設(shè)備時自動運(yùn)行模塊160。用戶隨即可通過導(dǎo)航存儲在存儲元件108上的所有目錄或文件并選擇要執(zhí)行的文件名或圖標(biāo)(例如,通過雙擊文件名或圖標(biāo))來定位對應(yīng)于自動運(yùn)行模塊160的文件名或圖標(biāo)。
在一些替換實(shí)施例中,用戶(或者另一個應(yīng)用程序或操作系統(tǒng))可手動地導(dǎo)航存儲在存儲元件108上的所有目錄或文件夾以標(biāo)識要執(zhí)行的便攜式應(yīng)用程序,而不是使用自動運(yùn)行模塊160。例如,如果主計算機(jī)104在運(yùn)行Windows操作系統(tǒng)中的一種,則用戶可使用Windows操作系統(tǒng)瀏覽器來手動搜索存儲元件108中的所有文件夾。
應(yīng)用程序文件162包括用于運(yùn)行便攜式應(yīng)用程序的若干指令,以及用于運(yùn)行便攜式應(yīng)用程序的任何相關(guān)聯(lián)的數(shù)據(jù)文件,其中這些指令可被組織成一個或多個應(yīng)用程序模塊。應(yīng)用程序文件162是存儲在便攜式存儲設(shè)備102上的可執(zhí)行文件,以及便攜式應(yīng)用程序其它相關(guān)聯(lián)的文件。為了運(yùn)行便攜式應(yīng)用程序,由主計算機(jī)執(zhí)行這些可執(zhí)行文件中的一個或多個。各種不同應(yīng)用程序中的任何一種都可作為便攜式存儲設(shè)備102上的便攜式應(yīng)用程序被包括。此類應(yīng)用程序的例子包括文字處理應(yīng)用程序、電子數(shù)據(jù)表應(yīng)用程序、數(shù)據(jù)庫應(yīng)用程序、演示應(yīng)用程序、參考應(yīng)用程序、游戲應(yīng)用程序、電子郵件(email)客戶程序、等等。這些應(yīng)用程序可以是被設(shè)計成安裝在臺式計算機(jī)上并在其上運(yùn)行的相同應(yīng)用程序的便攜式版本。例如,可有MicrosoftWord文字處理應(yīng)用程序的便攜式版本。便攜式版本與其對應(yīng)的臺式版本相比功能可能有所減少。例如,應(yīng)用程序中的某個功能在便攜式應(yīng)用程序中可能不讓其自身工作,諸如要求擴(kuò)展名被注冊到主設(shè)備的系統(tǒng)注冊表中(這將改變環(huán)境設(shè)置,而便攜式應(yīng)用程序不作此類改變,如以下將詳細(xì)討論)的功能等。
許多操作系統(tǒng)使用系統(tǒng)信息存儲來維護(hù)計算機(jī)上運(yùn)行的操作系統(tǒng)以及計算機(jī)上安裝的應(yīng)用程序的數(shù)據(jù)。在MicrosoftWindows操作系統(tǒng)家族中,此類系統(tǒng)信息存儲通常被稱為系統(tǒng)注冊表。系統(tǒng)注冊表可存儲,例如設(shè)備和應(yīng)用程序配置設(shè)置、文件類型(例如,基于其擴(kuò)展名)與特定應(yīng)用程序的關(guān)聯(lián)、用戶偏好、性能調(diào)整參數(shù)、等等。通常,在計算機(jī)上安裝應(yīng)用程序期間,有關(guān)應(yīng)用程序的配置設(shè)置的各種信息被寫到系統(tǒng)信息存儲中。相反,對于便攜式存儲設(shè)備102上的便攜式應(yīng)用程序而言,此類設(shè)置不被寫到系統(tǒng)信息存儲中。
為使便攜式應(yīng)用程序與其它應(yīng)用程序通信,而無須在系統(tǒng)信息存儲中維護(hù)關(guān)于便攜式應(yīng)用程序的信息,便攜式應(yīng)用程序利用環(huán)境的運(yùn)行時查詢。環(huán)境的運(yùn)行時查詢指一種應(yīng)用程序可發(fā)布有關(guān)其它哪個(些)應(yīng)用程序提供特定功能的查詢的技術(shù)。響應(yīng)于此類查詢,如果一便攜式應(yīng)用程序提供該功能,則該便攜式應(yīng)用程序用標(biāo)識如何調(diào)用該功能的信息響應(yīng)于該查詢。此查詢通常通過操作系統(tǒng)來代理,因此不是一個應(yīng)用程序直接查詢另一個應(yīng)用程序,而是應(yīng)用程序查詢操作系統(tǒng),后者進(jìn)而查詢其它應(yīng)用程序并將該查詢的結(jié)果返回給該應(yīng)用程序。因此,可查詢應(yīng)用程序以獲得關(guān)于如何調(diào)用該特定功能的信息,而不是檢查系統(tǒng)信息存儲以尋找有關(guān)如何調(diào)用便攜式應(yīng)用程序的特定功能的信息。
盡管關(guān)于便攜式應(yīng)用程序的數(shù)據(jù)不被寫到系統(tǒng)信息存儲中,但是便攜式應(yīng)用程序本身可被設(shè)計成訪問信息存儲,包括將數(shù)據(jù)寫到信息存儲中,及從信息存儲中讀取數(shù)據(jù)。為了適應(yīng)此類訪問,在便攜式存儲設(shè)備102上包括專用存儲164。專用存儲164維護(hù)便攜式應(yīng)用程序的設(shè)置信息——通常在主計算機(jī)的系統(tǒng)信息存儲中維護(hù)的設(shè)置信息被改為在專用存儲164中維護(hù)。可為每個便攜式應(yīng)用程序維護(hù)單獨(dú)的專用存儲164,或者可為便攜式應(yīng)用程序集合或一組便攜式應(yīng)用程序維護(hù)單個專用存儲164。
每個便攜式應(yīng)用程序都被設(shè)計成訪問專用存儲164,而不是主計算機(jī)上的系統(tǒng)信息存儲。因此,便攜式應(yīng)用程序可能寫到信息存儲中的任何數(shù)據(jù)是作為便攜式應(yīng)用程序文件被寫到同一便攜式存儲設(shè)備102上的專用存儲164中,因此主計算機(jī)上的系統(tǒng)信息存儲不會被寫入用于任何便攜式應(yīng)用程序的配置或其它數(shù)據(jù)。在主計算機(jī)包括系統(tǒng)注冊表的某些實(shí)現(xiàn)中,因?yàn)楸銛y式應(yīng)用程序訪問專用存儲164而不是系統(tǒng)注冊表,所以專用存儲164還可被稱為專用注冊表。
便攜式應(yīng)用程序可被設(shè)計成以不同方式訪問專用存儲164而不是主計算機(jī)上的系統(tǒng)信息存儲。在某些實(shí)施例中,主計算機(jī)上的系統(tǒng)信息存儲包括應(yīng)用程序編程接口(API),它具有可由應(yīng)用程序調(diào)用以訪問系統(tǒng)信息存儲的多個接口。此訪問可包括,例如從信息存儲中讀取值,將值寫到信息存儲中,將值從信息存儲中刪除,在信息存儲中修改值,等等。專用存儲164包括具有類似接口的類似的API,這些接口通常和系統(tǒng)信息存儲的接口執(zhí)行相同的功能,但它們具有不同的名稱,并且在專用存儲164、而不是在系統(tǒng)信息存儲上操作。在某些實(shí)現(xiàn)中,便攜式應(yīng)用程序調(diào)用這些專用存儲接口,而不是系統(tǒng)信息存儲接口。
在其它實(shí)現(xiàn)中,便攜式應(yīng)用程序通過中介訪問專用存儲接口。單個中介可作為一個便攜式應(yīng)用程序,或者便攜式應(yīng)用程序集合或一組便攜式應(yīng)用程序的中介。便攜式應(yīng)用程序中想要訪問存儲的各個功能和指令與中介所給出的API交互。中介進(jìn)而與專用存儲所給出API交互。這一具有中介的結(jié)構(gòu)對程序設(shè)計者而言可能是有幫助的,因?yàn)樵O(shè)計者可設(shè)計應(yīng)用程序功能和指令,而無須考慮該應(yīng)用程序會是訪問系統(tǒng)信息存儲的非便攜式應(yīng)用程序,還是訪問專用存儲的便攜式應(yīng)用程序,從而設(shè)計兩個中介(一個用于訪問專用存儲的便攜式應(yīng)用程序,另一個用于訪問系統(tǒng)信息存儲的非便攜式應(yīng)用程序)。
在某些情況中,便攜式應(yīng)用程序可能需要或想要從存儲中檢索先前沒有存儲在專用存儲164中的信息。在此類情況中,便攜式應(yīng)用程序(或中介)可訪問主計算機(jī)上的系統(tǒng)信息存儲以讀取所需信息。此類信息通常不是專屬于一個或多個便攜式應(yīng)用程序的信息,而是關(guān)于主計算機(jī)的一般信息。便攜式應(yīng)用程序(或中介)被設(shè)計成知道對于便攜式應(yīng)用程序所需的特定信息而言,是應(yīng)訪問系統(tǒng)信息存儲以獲取該特定信息,還是應(yīng)訪問專用存儲164以獲取該特定信息。但是,注意,要被寫到存儲中、或從存儲中刪除的任何信息不會被寫到系統(tǒng)信息存儲中或從系統(tǒng)信息存儲中刪除。
或者,當(dāng)便攜式存儲設(shè)備102被耦合到主計算機(jī)時,該主計算機(jī)的系統(tǒng)信息存儲中的信息可被復(fù)制到專用存儲164中,盡管已經(jīng)在專用存儲164中的任何數(shù)據(jù)不會被此復(fù)制所覆蓋。因此,在此替換實(shí)施例中,不應(yīng)出現(xiàn)便攜式應(yīng)用程序訪問先前沒有存儲在專用存儲164中的信息的情況。在其它替換實(shí)施例中,專用存儲164可用默認(rèn)值來預(yù)編程或配置,這些默認(rèn)值被使用,直至它們?yōu)楸銛y式應(yīng)用程序所覆蓋。
類似與專用存儲164,便攜式存儲設(shè)備102還包括專用本地概況166。專用本地概況166存儲便攜式存儲設(shè)備102的用戶的本地概況,該本地概況存儲各種用戶設(shè)置和偏好信息。通過保存此類信息,便攜式存儲設(shè)備102允許用戶定制他或她的體驗(yàn),并且即使他或她可能在多個不同的主計算機(jī)上使用該便攜式存儲設(shè)備102,該定制仍被保持??蔀槊總€便攜式應(yīng)用程序維護(hù)單獨(dú)的專用本地概況166,或者可為便攜式應(yīng)用程序集合或一組便攜式應(yīng)用程序維護(hù)單個專用本地概況166。
使用專用本地概況166,而不是通常在主計算機(jī)上找到的本地概況來存儲此類信息。類似于專用存儲164,專用本地概況166由便攜式應(yīng)用程序可選地經(jīng)由代表便攜式應(yīng)用程序的中介來訪問,基于便攜式應(yīng)用程序所請求的動作,所請求的數(shù)據(jù)被適當(dāng)?shù)貦z索、寫入、刪除、修改、等等。專用本地概況166以及任何中介可給出類似于以上關(guān)于專用存儲164的討論的API。
在某些實(shí)施例中,在被讀取的數(shù)據(jù)不在專用本地概況166中的情況下,對本地概況的讀訪問被定向(例如,由中介)到存儲在主計算機(jī)上的本地概況?;蛘?,存儲在主計算機(jī)上的本地概況可被復(fù)制到專用本地概況166,盡管專用本地概況166中已經(jīng)存在的任何設(shè)置的數(shù)據(jù)不會被此復(fù)制過程所覆蓋。在其它替換實(shí)施例中,專用本地概況166可用默認(rèn)值來預(yù)編程或配置,這些默認(rèn)值被使用,直至它們被便攜式應(yīng)用程序所覆蓋。
因此,通過在便攜式存儲設(shè)備102上維護(hù)應(yīng)用程序文件以及應(yīng)用程序數(shù)據(jù)、信息存儲數(shù)據(jù)和本地概況數(shù)據(jù),不需要對主計算機(jī)作任何永久性改變。當(dāng)執(zhí)行、或?yàn)榱藞?zhí)行便攜式存儲設(shè)備102上的便攜式應(yīng)用程序時,不對主機(jī)上的計算機(jī)系統(tǒng)信息存儲或主計算機(jī)上的本地概況作任何改變。存儲在主計算機(jī)的系統(tǒng)信息存儲和本地概況中的信息可被稱為主計算機(jī)上的環(huán)境設(shè)置,當(dāng)執(zhí)行便攜式應(yīng)用程序時不對此環(huán)境作任何改變。此外,應(yīng)用程序文件以及數(shù)據(jù)文件存儲在便攜式存儲設(shè)備102上,因此沒有任何應(yīng)用程序文件或數(shù)據(jù)文件被寫到主計算機(jī)中。
在某些實(shí)施例中,當(dāng)執(zhí)行便攜式應(yīng)用程序時,沒有任何文件或環(huán)境設(shè)置被寫到主計算機(jī)中。如果便攜式應(yīng)用程序在執(zhí)行期間的確利用任何臨時文件,則這些臨時文件被存儲在便攜式存儲設(shè)備102上,而不是主系統(tǒng)上。在替換實(shí)施例中,在便攜式應(yīng)用程序執(zhí)行期間,一個或多個臨時文件可被寫到主計算機(jī)中。在執(zhí)行期間將臨時文件寫到主計算機(jī)中的便攜式應(yīng)用程序在該應(yīng)用程序執(zhí)行被終止時,刪除那些臨時文件,作為關(guān)閉其自身的一部分?;蛘?,便攜式應(yīng)用程序可依靠諸如主計算機(jī)上的操作系統(tǒng)等另一個組件,在便攜式應(yīng)用程序停止運(yùn)行時,或在有規(guī)律或無規(guī)律的時間間隔來刪除那些臨時文件。
此外,在某些實(shí)施例中,便攜式存儲設(shè)備102可能具有特定的主計算機(jī),與之同步數(shù)據(jù)文件。此“起始”或“基礎(chǔ)”主計算機(jī)上、或者便攜式存儲設(shè)備102上的應(yīng)用程序?qū)z測便攜式存儲設(shè)備102何時被耦合到該起始或基礎(chǔ)主計算機(jī),然后檢查是否已對數(shù)據(jù)區(qū)168中的數(shù)據(jù)文件作出任何修改(例如,基于數(shù)據(jù)文件的最后修改日期和時間,或者任何數(shù)據(jù)文件的添加或刪除)。任何新文件,或最后修改日期和時間晚于起始或基礎(chǔ)主計算機(jī)上的最后修改日期和時間的任何文件隨即被復(fù)制到起始或基礎(chǔ)主計算機(jī)上。用戶可選地被提示認(rèn)證他或她想要這一同步發(fā)生。
圖3所示是一種用于執(zhí)行便攜式應(yīng)用程序的示例性過程200的流程圖。過程200由便攜式存儲設(shè)備所耦合到的主計算機(jī)執(zhí)行。過程200可在軟件、固件、硬件、或其組合中實(shí)現(xiàn)。
開始,主計算機(jī)檢測便攜式存儲設(shè)備(動作202)。如以上所討論,此檢測在便攜式存儲設(shè)備被插入或者耦合到主計算機(jī)時被自動執(zhí)行。
主計算機(jī)隨即標(biāo)識便攜式存儲設(shè)備上的便攜式應(yīng)用程序(動作204)。如以上所討論,此標(biāo)識可由主計算機(jī)自動執(zhí)行,或可由導(dǎo)航到便攜式存儲設(shè)備的用戶手動執(zhí)行。隨后可選地向用戶呈現(xiàn)運(yùn)行所標(biāo)識的便攜式應(yīng)用程序的選擇(動作206)。如以上所討論,可向用戶顯示用戶界面,以允許用戶選擇他或她想要運(yùn)行哪個(些)便攜式應(yīng)用程序?;蛘?,主計算機(jī)可自動選擇運(yùn)行便攜式存儲設(shè)備上便攜式應(yīng)用程序中的一個或多個。
所標(biāo)識的便攜式應(yīng)用程序隨即在主計算機(jī)上運(yùn)行,而不改變主計算機(jī)上的任何環(huán)境設(shè)置(動作208)。如以上所討論,在便攜式存儲設(shè)備上維護(hù)專用存儲和專用本地概況,因此在便攜式應(yīng)用程序的執(zhí)行期間,不需要對存儲在主計算機(jī)上的系統(tǒng)信息存儲或概況作任何改變。
回到圖2,一些應(yīng)用程序制造商用來確保用戶滿足許可義務(wù)的一種當(dāng)前的技術(shù)是,要求用戶在將應(yīng)用程序安裝到用戶的計算機(jī)上以后激活該應(yīng)用程序。應(yīng)用程序通常要求在特定時間范圍之內(nèi)(諸如在第一次運(yùn)行該應(yīng)用程序后的特定天數(shù)之內(nèi),或者在運(yùn)行該應(yīng)用程序某個次數(shù)以前)執(zhí)行此激活。激活過程將應(yīng)用程序綁定到特定計算機(jī),以將應(yīng)用程序的特定副本與特定計算機(jī)相關(guān)聯(lián)。激活過程通常涉及用戶或其它個人輸入隨應(yīng)用程序副本所附的字母數(shù)字序列或密鑰。如果在所要求的時間范圍之內(nèi)應(yīng)用程序未被成功激活,則該應(yīng)用程序或者不能被運(yùn)行,或者只能在功能有所減少的狀態(tài)下運(yùn)行(例如,沒有某些特征或功能性部分),直至該應(yīng)用程序被成功激活。
通過維護(hù)應(yīng)用程序的特定副本與特定計算機(jī)的關(guān)聯(lián),應(yīng)用程序制造商可檢測是否有任何將應(yīng)用程序的同一副本綁定到多個計算機(jī)的企圖。如果像時常出現(xiàn)的情形那樣,在多個計算機(jī)上使用應(yīng)用程序的同一副本違反許可協(xié)議,則副本在第二或后續(xù)的計算機(jī)上的激活可被拒絕,許可協(xié)議的條款得到支持。
但是在便攜式應(yīng)用程序的實(shí)例中,將應(yīng)用程序綁定到特定計算機(jī)的激活技術(shù)是不合乎需要的,因?yàn)楸銛y式應(yīng)用程序的基本概念之一就是其上存儲便攜式應(yīng)用程序的便攜式存儲設(shè)備可被輕易地從一個計算機(jī)移到另一個計算機(jī),并在兩個計算機(jī)上運(yùn)行。因此,在便攜式應(yīng)用程序的實(shí)例中,便攜式應(yīng)用程序被綁定到便攜式存儲設(shè)備,而不是特定計算機(jī)。
通過使用便攜式存儲設(shè)備的標(biāo)識符來將便攜式應(yīng)用程序綁定到便攜式存儲設(shè)備。這一標(biāo)識符被設(shè)計成兩個不同的便攜式存儲設(shè)備很不可能具有相同的標(biāo)識符。因此,這一標(biāo)識符可被用來確定是否有將同一應(yīng)用程序綁定到多個不同的便攜式存儲設(shè)備的企圖。
便攜式存儲設(shè)備的標(biāo)識符能以不同方式生成。標(biāo)識符可由制造商分配,并在制造過程期間,或作為制造商所使用的預(yù)配置過程的一部分被包括到便攜式存儲設(shè)備中。標(biāo)識符可被包括在便攜式存儲設(shè)備的非可重寫部分(諸如使用可被寫一次,但不可被擦除或重寫的存儲器的部分)中,以使其以后不會被修改。
或者,便攜式存儲設(shè)備的標(biāo)識符可以是設(shè)備的簽名,該簽名是基于便攜式存儲設(shè)備的各個硬件方面。此簽名可由便攜式存儲設(shè)備上的應(yīng)用程序(諸如由被激活的便攜式應(yīng)用程序或由某個其它應(yīng)用程序)生成。簽名可被存儲在便攜式存儲設(shè)備上以供后續(xù)使用,或可在每次需要它時重新生成。或者,簽名可由某個其它組件(例如,由便攜式存儲設(shè)備的制造商的系統(tǒng))生成,并存儲在便攜式存儲設(shè)備上。
在其它替換方案中,便攜式存儲設(shè)備的標(biāo)識符從便攜式存儲設(shè)備上的處理組件直接或間接傳達(dá)。例如,處理組件可包括能執(zhí)行公鑰加密操作的加密處理器。一個質(zhì)詢(例如,字母數(shù)字符號和/或其它符號序列)可從請求者(諸如將便攜式應(yīng)用程序綁定到便攜式存儲設(shè)備的設(shè)備或服務(wù))向加密處理器傳達(dá)。加密處理器使用加密處理器的私鑰將質(zhì)詢加密,并將已加密的質(zhì)詢返回給請求者。請求者隨即可使用加密處理器的已知公鑰來認(rèn)證加密處理器的身份,從而認(rèn)證該加密處理器所駐留的便攜式存儲設(shè)備的身份。因?yàn)槊恳粋€加密處理器都有不同的公鑰/私鑰對,所以不同的便攜式存儲設(shè)備可被分別標(biāo)識。
一旦被激活,信息即可被寫回便攜式存儲設(shè)備中,從而便攜式存儲設(shè)備上的便攜式應(yīng)用程序知道它已被成功激活?;蛘?,便攜式應(yīng)用程序不是將此類數(shù)據(jù)寫回便攜式存儲設(shè)備中,而是使用主計算機(jī)的網(wǎng)絡(luò)連接來訪問服務(wù)器(例如,經(jīng)由因特網(wǎng)),以檢查該應(yīng)用程序是否已被成功激活。
圖4所示是一種用于激活便攜式應(yīng)用程序的示例性過程250的流程圖。過程250可在軟件、固件、硬件、或其組合中實(shí)現(xiàn)。
開始,獲得設(shè)備標(biāo)識符和便攜式應(yīng)用程序密鑰(動作252)。設(shè)備標(biāo)識符可通過檢索先前存儲到便攜式存儲設(shè)備中的標(biāo)識符,或者通過生成標(biāo)識符(例如,如以上所討論的便攜式存儲設(shè)備的簽名)來獲得。便攜式應(yīng)用程序密鑰能以不同方式獲得,但通常由用戶手動將密鑰輸入到便攜式存儲設(shè)備所耦合到的主計算機(jī)中來獲得。當(dāng)購買便攜式應(yīng)用程序或已安裝便攜式應(yīng)用程序的便攜式存儲設(shè)備時,此密鑰可被包括在例如包裝中。便攜式應(yīng)用程序的每一個副本通常都被分配一個不同的密鑰。
隨即向激活服務(wù)傳達(dá)設(shè)備標(biāo)識符和便攜式應(yīng)用程序密鑰(動作254)。激活服務(wù)是在一個或多個設(shè)備上實(shí)現(xiàn)的服務(wù),它負(fù)責(zé)確定便攜式應(yīng)用程序是否已被綁定到最大允許個數(shù)的設(shè)備。此確定是通過分析先前激活的應(yīng)用程序的記錄,并檢查便攜式應(yīng)用程序密鑰是否已與最大允許個數(shù)的設(shè)備相關(guān)聯(lián)(基于與便攜式應(yīng)用程序相關(guān)聯(lián)的許可)來作出的。激活服務(wù)還負(fù)責(zé)確定便攜式應(yīng)用程序密鑰的有效性。便攜式應(yīng)用程序密鑰的有效性能以各種方式中的任何一種來確定,諸如有有效密鑰列表,有處理便攜式應(yīng)用程序密鑰以確定有效性的算法,等等。
然后過程250基于便攜式應(yīng)用程序的激活是否成功來繼續(xù)前進(jìn)(動作256)。如果便攜式應(yīng)用程序密鑰尚未被綁定到最大允許個數(shù)的設(shè)備(或如果該便攜式應(yīng)用程序密鑰先前曾被綁定到此設(shè)備標(biāo)識符),并且便攜式應(yīng)用程序密鑰是有效密鑰,則激活是成功的。但是,如果便攜式應(yīng)用程序密鑰已被綁定到最大允許個數(shù)的設(shè)備,或如果便攜式應(yīng)用程序密鑰不是有效密鑰,則激活是不成功的。
如果激活是成功的,則激活服務(wù)維護(hù)該便攜式應(yīng)用程序密鑰與該設(shè)備標(biāo)識符相關(guān)聯(lián)的記錄(動作258)。便攜式應(yīng)用程序已被激活的指示被返回給便攜式應(yīng)用程序,且便攜式應(yīng)用程序已被激活的指示也可被存儲在便攜式存儲設(shè)備中,如以上所討論。此指示可以是,例如特定標(biāo)識符或數(shù)據(jù)值、其真實(shí)性可由便攜式應(yīng)用程序使用加密算法來認(rèn)證的數(shù)字證書、等等。但是,如果激活是不成功的,則激活失敗(動作260),且激活已失敗的指示被返回給便攜式應(yīng)用程序。
回到圖2,便攜式應(yīng)用程序可被預(yù)安裝在便攜式存儲設(shè)備102上,或可由用戶安裝。便攜式應(yīng)用程序可由便攜式存儲設(shè)備102的制造商,或由某個其它實(shí)體(例如,轉(zhuǎn)售者、發(fā)行者、制造商所雇傭的第三方等等)預(yù)安裝。因此,用戶將購買其上已存儲有一個或多個便攜式應(yīng)用程序的便攜式存儲設(shè)備102。或者,一個或多個便攜式應(yīng)用程序可由用戶安裝到便攜式存儲設(shè)備102上。例如,用戶可購買盤上的便攜式應(yīng)用程序,或通過網(wǎng)絡(luò)(諸如因特網(wǎng)等)購買便攜式應(yīng)用程序,并將所購買的應(yīng)用程序安裝到便攜式存儲設(shè)備102上。
在安裝過程期間,無論安裝過程是由便攜式存儲設(shè)備102的購買者還是由某個其它個人執(zhí)行,必要的文件都作為應(yīng)用程序文件112被復(fù)制到存儲元件108中,且對那些文件任何必要的改變或配置都被執(zhí)行。此外,通常作為安裝過程的一部分會被寫到系統(tǒng)信息存儲中的任何信息改為被寫到專用存儲164中。通常,執(zhí)行建立文件以安裝便攜式應(yīng)用程序。當(dāng)執(zhí)行建立文件時,它執(zhí)行這些各種功能以安裝應(yīng)用程序。
圖5所示是一種用于將便攜式應(yīng)用程序安裝在便攜式存儲設(shè)備上的示例性過程280的流程圖。過程280可在軟件、固件、硬件、或其組合中實(shí)現(xiàn)。
開始,接收將便攜式應(yīng)用程序安裝到便攜式存儲設(shè)備上的請求(動作282)。此請求可以是手動的用戶選擇,諸如用戶雙擊“安裝”或“建立”圖標(biāo),或者將一個或多個文件(諸如“安裝”或“建立”文件或圖標(biāo))從源介質(zhì)拖放到便攜式存儲設(shè)備。或者該請求可以是某個其它動作中所固有的,諸如將安裝盤插入到便攜式存儲設(shè)備所耦合到的同一計算機(jī)中,或?qū)⒈銛y式存儲設(shè)備耦合到特定計算機(jī)(例如,在制造商或某個其它第三方位置處)等。
響應(yīng)于該請求,便攜式應(yīng)用程序的一個或多個應(yīng)用程序文件被寫到便攜式存儲設(shè)備中(動作284)。這些應(yīng)用程序文件是,例如圖2的應(yīng)用程序文件162。應(yīng)用程序文件隨即被適當(dāng)?shù)嘏渲?動作286)。作為安裝過程的一部分,需要什么配置(如果有的話)可能根據(jù)不同的便攜式應(yīng)用程序而改變。所需的任何此類配置通常在與便攜式應(yīng)用程序相關(guān)聯(lián)的安裝文件中被標(biāo)識(這通常實(shí)現(xiàn)過程280)。
除了配置應(yīng)用程序文件以外,自動運(yùn)行模塊160還可在動作286中被配置。自動運(yùn)行模塊160的這一配置包括向自動運(yùn)行模塊160添加標(biāo)識便攜式存儲設(shè)備上存在便攜式應(yīng)用程序的信息,以及關(guān)于如何執(zhí)行該便攜式應(yīng)用程序的信息(例如,要執(zhí)行哪個(些)文件以開始運(yùn)行該便攜式應(yīng)用程序,存儲了該便攜式應(yīng)用程序的那些文件夾文件,等等)。
關(guān)于便攜式應(yīng)用程序的信息隨即被寫到便攜式存儲設(shè)備上的專用存儲中(動作288)。寫到專用存儲中的信息可以是關(guān)于便攜式應(yīng)用程序的任何信息,諸如應(yīng)用程序的配置設(shè)置,在應(yīng)用程序運(yùn)行時提高其性能的性能調(diào)整參數(shù),哪些文件類型與該便攜式應(yīng)用程序相關(guān)聯(lián)(例如,從而為該類型的文件顯示正確的圖標(biāo),以向用戶可視化地標(biāo)識這些文件與該便攜式應(yīng)用程序相關(guān)聯(lián)),等等。如以上所討論,此類信息被寫到便攜式存儲設(shè)備上的專用存儲中,而不是該便攜式存儲設(shè)備所耦合到的計算機(jī)上的系統(tǒng)信息存儲中。在一些情況中,第一次為特定的便攜式存儲設(shè)備執(zhí)行動作288時,專用存儲可能尚未被創(chuàng)建。在此類情形中,作為動作288的一部分,在便攜式存儲設(shè)備上創(chuàng)建專用存儲。
應(yīng)當(dāng)注意,在替換實(shí)施例中,安裝過程可能有所不同。例如,在一個或多個文件從源介質(zhì)被復(fù)制到便攜式存儲設(shè)備中處可使用拖放技術(shù)。又如,可創(chuàng)建包括所有可執(zhí)行文件、專用存儲、專用本地概況和自動運(yùn)行模塊的存儲元件的映像,如其在便攜式應(yīng)用程序的安裝以后應(yīng)存在的形式,而不是從諸如安裝文件來執(zhí)行安裝過程280。然后此映像可被簡單地復(fù)制到便攜式存儲設(shè)備的存儲元件上,結(jié)果形成具有所有所需的可執(zhí)行文件、以及用適當(dāng)數(shù)據(jù)填充的專用存儲和/或?qū)S帽镜馗艣r的便攜式存儲設(shè)備。這一預(yù)生成映像并將該映像復(fù)制到便攜式存儲設(shè)備上的過程通常為便攜式存儲設(shè)備的制造商,或者制造、發(fā)送或銷售用相同便攜式應(yīng)用程序配置的大量便攜式存儲設(shè)備的第三方所使用。
回到圖2,應(yīng)當(dāng)注意,盡管圖示存儲元件108中包括模塊160、文件162、存儲164、概況166以及數(shù)據(jù)區(qū)168,但是這些組件中的一個或多個,或者一個或多個這些組件的部分可存儲在不同類型的存儲器中。例如,可使用非可重寫只讀存儲器,而不是可重寫存儲元件來存儲一個或多個組件或其部分??杀淮鎯υ诜强芍貙懼蛔x存儲器中的組件或其部分將是不可改變的組件或部分,諸如應(yīng)用程序的特定指令(應(yīng)用程序文件162的全部或一部分)、本文中所討論的自動運(yùn)行功能的指令(自動運(yùn)行模塊160的全部或一部分)、等等。
此外,應(yīng)當(dāng)注意,便攜式存儲設(shè)備102可以是各種不同設(shè)備中的任何一種。例如,便攜式存儲設(shè)備102可以是便攜式USB閃存存儲設(shè)備、便攜式硬盤驅(qū)動器設(shè)備、或包括閃存或其它存儲元件的某種其它設(shè)備,諸如數(shù)字?jǐn)z像機(jī)等。
因此,可以看到,本文中所討論的便攜式應(yīng)用程序允許便攜式存儲設(shè)備上的應(yīng)用程序有簡單易行的便攜性??珊唵蔚赝ㄟ^將便攜式存儲設(shè)備插入、或?qū)⒈銛y式存儲設(shè)備耦合到不同的主計算機(jī),在不同主計算機(jī)上運(yùn)行便攜式應(yīng)用程序。對主計算機(jī)中的任何一個的環(huán)境設(shè)置都不作任何改變,也不在主計算機(jī)中的任何一個上安裝任何文件。因此,即使便攜式應(yīng)用程序在主計算機(jī)上運(yùn)行,該主計算機(jī)上的環(huán)境設(shè)置仍保持原樣,并且用戶的隱私被保持,因?yàn)楸銛y式應(yīng)用程序不會遺留可能泄漏關(guān)于用戶或者他或她曾處理的數(shù)據(jù)的信息的任何文件或設(shè)置。
圖6示出可使用本文所述的便攜式應(yīng)用程序的通用計算機(jī)環(huán)境300。計算機(jī)環(huán)境300指示計算環(huán)境的一個示例,并不試圖對計算機(jī)和網(wǎng)絡(luò)體系結(jié)構(gòu)的使用范圍或功能提出任何限制。也不應(yīng)將計算機(jī)環(huán)境300解釋為具有涉及示例性計算機(jī)環(huán)境300中所示的任何組件或其組合的依賴性或要求。
計算機(jī)環(huán)境300包括計算機(jī)302形式的通用計算設(shè)備。計算機(jī)302可以是,例如圖1的主計算機(jī)104。計算機(jī)302的組件可包括,但不限于,一個或多個處理器或處理單元304、系統(tǒng)存儲器306、以及將包括處理器304在內(nèi)的各種系統(tǒng)組件耦合到系統(tǒng)存儲器306的系統(tǒng)總線308。
系統(tǒng)總線308標(biāo)識若干類型的總線結(jié)構(gòu)中的一種或數(shù)種,包括存儲器總線或存儲器控制器、外圍總線、加速圖形端口、使用各種總線體系結(jié)構(gòu)中的任何以后德宗處理器或局部總線。作為示例,此類體系結(jié)構(gòu)可包括工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線、微通道體系結(jié)構(gòu)(MCA)總線、增強(qiáng)的ISA(EISA)總線、視頻電子標(biāo)準(zhǔn)協(xié)會(VESA)局部總線、以及也稱為Mezzanine總線的外圍組件互連(PCI)總線。
計算機(jī)302通常包括各種計算機(jī)可讀介質(zhì)。此類介質(zhì)可以是計算機(jī)302可訪問的任何可用介質(zhì),并包括易失性和非易失性介質(zhì)、可移動和不可移動介質(zhì)。
系統(tǒng)存儲器306包括諸如隨機(jī)存取存儲器(RAM)310等易失性存儲器形式的計算機(jī)可讀介質(zhì),和/或諸如只讀存儲器(ROM)312等非易失性存儲器。包含諸如在啟動期間幫助在計算機(jī)302內(nèi)的各元件之間傳送消息的基本例程的基本輸入/輸出系統(tǒng)(BIOS)312存儲在ROM312中。RAM310通常包含處理304即時可訪問的、和/或當(dāng)前正由其操作的數(shù)據(jù)和/或程序模塊。
計算機(jī)302還可包括其它可移動/不可移動、易失性/非易失性計算機(jī)存儲介質(zhì)。作為示例,圖6示出用于讀或?qū)懖豢梢苿?、非易失性磁介質(zhì)(未示出)的硬盤驅(qū)動器316,用于讀或?qū)懣梢苿?、非易失性磁盤320(例如,“軟盤”)的磁盤驅(qū)動器332,以及用于讀和/或?qū)懼T如CD-ROM、DVD-ROM或其它光介質(zhì)等可移動、非易失性光盤324的光盤驅(qū)動器322。硬盤驅(qū)動器316、磁盤驅(qū)動器332和光盤驅(qū)動器322每一個都由一個或多個數(shù)據(jù)介質(zhì)接口326連接到系統(tǒng)總線308?;蛘撸脖P驅(qū)動器316、磁盤驅(qū)動器332和光盤驅(qū)動器322可由一個或多個接口(未示出)連接到系統(tǒng)總線308。還可將其它計算機(jī)存儲介質(zhì)作為計算機(jī)302的部分包括在內(nèi),諸如以上所討論的便攜式閃存設(shè)備。
磁盤存儲及其相關(guān)聯(lián)的計算機(jī)可讀介質(zhì)為計算機(jī)302提供計算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的非易失性存儲。盡管該例示出硬盤316、可移動磁盤320和可移動光盤324,應(yīng)當(dāng)認(rèn)識到,還可利用諸如磁帶盒或其它磁存儲設(shè)備,閃存卡,CD-ROM、數(shù)字多功能盤(DVD)或其它光存儲、隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、電可擦除可編程只讀存儲器(EEPROM)等能夠存儲可計算機(jī)可訪問的數(shù)據(jù)的其它類型的計算機(jī)可讀介質(zhì)來實(shí)現(xiàn)該示例性計算系統(tǒng)和環(huán)境。
任何數(shù)量的程序模塊可被存儲在硬盤316、磁盤320、光盤324、ROM 312、和/或RAM310上,例如包括,操作系統(tǒng)326、一個或多個應(yīng)用程序328、其它程序模塊330、以及程序數(shù)據(jù)332。這些操作系統(tǒng)326、一個或多個應(yīng)用程序328、其它程序模塊330、以及程序數(shù)據(jù)332中的每一個(或其某種組合)可實(shí)現(xiàn)支持分布式文件系統(tǒng)的所有常駐組件或其中的一部分。
用戶可經(jīng)由諸如鍵盤334和定位設(shè)備336(例如,“鼠標(biāo)”)等輸入設(shè)備將命令和信息輸入到計算機(jī)302中。其它輸入設(shè)備338(未具體示出)可包括話筒、操縱桿、游戲墊、圓盤式衛(wèi)星天線、串行端口、掃描儀、和/或其它。這些及其它輸入設(shè)備經(jīng)由耦合到系統(tǒng)總線308的輸入/輸出接口340連接到處理單元304,但也可通過諸如并行端口、游戲端口、通用串行總線(USB)或固件(IEEE1394)總線等其它接口或總線結(jié)構(gòu)連接。
監(jiān)視器342或其它類型的顯示設(shè)備也可經(jīng)由諸如視頻適配器344等接口連接到系統(tǒng)總線308。除了監(jiān)視器342之外,其它輸出外圍設(shè)備可包括諸如揚(yáng)聲器(未示出)和打印機(jī)346等可經(jīng)由輸入/輸出接口340連接到計算機(jī)302的組件。
計算機(jī)302可使用到諸如遠(yuǎn)程計算設(shè)備348等一個或多個遠(yuǎn)程計算機(jī)的邏輯連接在聯(lián)網(wǎng)中工作。作為示例,遠(yuǎn)程計算設(shè)備348可以是個人計算機(jī)、便攜式計算機(jī)、服務(wù)器、路由器、網(wǎng)絡(luò)計算機(jī)、對等設(shè)備、或其它普通網(wǎng)絡(luò)節(jié)點(diǎn)、等等。圖示遠(yuǎn)程計算設(shè)備348為可包括本文中相對于計算機(jī)302所描述的許多或所有元件和特征的便攜式計算機(jī)。
圖示計算機(jī)302和遠(yuǎn)程計算機(jī)348之間的邏輯連接為局域網(wǎng)(LAN)350和一般廣域網(wǎng)(WAN)352。此類網(wǎng)絡(luò)環(huán)境常見于辦公室、企業(yè)范圍的計算機(jī)網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)、以及因特網(wǎng)。
當(dāng)在LAN網(wǎng)絡(luò)環(huán)境中實(shí)現(xiàn)時,計算機(jī)302經(jīng)由網(wǎng)絡(luò)接口或適配器354連接到局域網(wǎng)350。當(dāng)在WAN網(wǎng)絡(luò)環(huán)境中實(shí)現(xiàn)時,計算機(jī)302通常包括調(diào)制解調(diào)器356或用于通過廣域網(wǎng)352建立通信的其它裝置??梢詢?nèi)置或外置于計算機(jī)302的調(diào)制解調(diào)器356可經(jīng)由輸入/輸出接口340或其它適當(dāng)機(jī)制連接到系統(tǒng)總線308。應(yīng)當(dāng)認(rèn)識到,所示網(wǎng)絡(luò)連接是示例性的,且可使用在計算機(jī)302和348之間建立通信鏈路的其它裝置。
在諸如計算環(huán)境300所示的聯(lián)網(wǎng)環(huán)境中,相對于計算機(jī)302所示的程序模塊或其部分可存儲在遠(yuǎn)程記憶存儲設(shè)備中。作為示例,遠(yuǎn)程應(yīng)用程序358駐留在遠(yuǎn)程計算機(jī)348的存儲器設(shè)備上。出于說明目的,本文中將應(yīng)用程序及諸如操作系統(tǒng)等其它可執(zhí)行程序組件示為離散的框,盡管可以認(rèn)識到,這些程序和組件在各個時間駐留在計算設(shè)備302的不同存儲組件中,并由計算機(jī)的數(shù)據(jù)處理器執(zhí)行。
本文在由一個或多個計算機(jī)或其它設(shè)備執(zhí)行的、諸如程序模塊等計算機(jī)可執(zhí)行指令的上下文中描述各種模塊和技術(shù)。一般而言,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等。通常,在各個實(shí)施例中,可按序組合或分布各程序模塊的功能。
這些模塊和技術(shù)的一個實(shí)現(xiàn)可存儲在某種形式的計算機(jī)可讀介質(zhì)上,或可通過其來發(fā)送。計算機(jī)可讀介質(zhì)可以是能被計算機(jī)訪問的任何可用介質(zhì)。作為示例,而非限制,計算機(jī)可讀介質(zhì)可包括“計算機(jī)存儲介質(zhì)”和“通信介質(zhì)”。
“計算機(jī)存儲介質(zhì)”包括以用于存儲諸如計算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)等信息的任何方法或技術(shù)實(shí)現(xiàn)的易失性和非易失性、可移動和不可移動介質(zhì)。計算機(jī)存儲介質(zhì)包括,但不限于,RAM、ROM、EEPROM、閃存或其它存儲器技術(shù),CD-ROM、數(shù)字多功能盤(DVD)或其它光存儲,磁帶盒、磁帶、磁盤存儲或其它磁存儲設(shè)備,或可用來存儲所需信息并可由計算機(jī)訪問的任何其它介質(zhì)。
“通信介質(zhì)”通常具體化為諸如載波或其它傳輸機(jī)制等已調(diào)制數(shù)據(jù)信號中的計算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)。通信介質(zhì)還包括任何信息傳遞介質(zhì)。術(shù)語“已調(diào)制數(shù)據(jù)信號”指以在信號中將信息編碼的方式設(shè)置或改變其一個或多個特征的信號。作為示例,而非限制,通信介質(zhì)包括諸如有線網(wǎng)絡(luò)或直接連線連接等有線介質(zhì),以及諸如聲學(xué)、RF、紅外和其它無線介質(zhì)等無線介質(zhì)。以上任何介質(zhì)的組合也包括在計算機(jī)可讀機(jī)制的范圍之內(nèi)。
盡管以上描述使用專屬于結(jié)構(gòu)化特征和/或方法性動作的語言,但是應(yīng)當(dāng)理解,在所附權(quán)利要求書中定義的本發(fā)明不限于所描述的具體特征或動作。相反,這些具體特征和動作是作為實(shí)現(xiàn)本發(fā)明的示例性形式來揭示的。
權(quán)利要求
1.一種便攜式存儲設(shè)備,包括接口;以及一個或多個存儲元件,所述一個或多個存儲元件存儲一個或多個可執(zhí)行文件,所述一個或多個可執(zhí)行文件可由所述設(shè)備所耦合到的主計算機(jī)執(zhí)行,即使所述一個或多個可執(zhí)行文件包括訪問環(huán)境設(shè)置的指令也不會改變所述主計算機(jī)上的任何環(huán)境設(shè)置。
2.如權(quán)利要求1所述的便攜式存儲設(shè)備,其特征在于,所述主計算機(jī)上的環(huán)境設(shè)置包括所述主計算機(jī)的系統(tǒng)注冊表中的信息。
3.如權(quán)利要求1所述的便攜式存儲設(shè)備,其特征在于,所述主計算機(jī)上的環(huán)境設(shè)置包括所述主計算機(jī)的本地概況中的信息。
4.如權(quán)利要求1所述的便攜式存儲設(shè)備,其特征在于,所述訪問主計算機(jī)上的環(huán)境設(shè)置的指令包括寫環(huán)境指令的指令。
5.如權(quán)利要求1所述的便攜式存儲設(shè)備,其特征在于,所述一個或多個可執(zhí)行文件包括訪問所述主計算機(jī)上的環(huán)境設(shè)置的指令,且其中,所述一個或多個可執(zhí)行文件包括一中介,所述中介用于接收訪問所述主計算機(jī)上的環(huán)境設(shè)置的請求,并且響應(yīng)于所述請求而訪問所述一個或多個存儲元件中的設(shè)置,而不是所述主計算機(jī)上的環(huán)境設(shè)置。
6.如權(quán)利要求1所述的便攜式存儲設(shè)備,其特征在于,所述便攜式存儲設(shè)備不包括執(zhí)行所述一個或多個可執(zhí)行文件的指令的處理器。
7.如權(quán)利要求1所述的便攜式存儲設(shè)備,其特征在于,所述一個或多個存儲元件還存儲自動運(yùn)行模塊,所述自動運(yùn)行模塊可由所述主計算機(jī)訪問以呈現(xiàn)用戶界面,所述用戶界面標(biāo)識可通過執(zhí)行所述一個或多個可執(zhí)行文件來運(yùn)行的應(yīng)用程序。
8.如權(quán)利要求7所述的便攜式存儲設(shè)備,其特征在于,所述自動運(yùn)行模塊為與所述應(yīng)用程序中的一個相關(guān)聯(lián)的類型的數(shù)據(jù)文件呈現(xiàn)與所述一個應(yīng)用程序相關(guān)聯(lián)的圖標(biāo),作為所述用戶界面的一部分,所述一個或多個存儲元件存儲所述數(shù)據(jù)文件。
9.如權(quán)利要求7所述的便攜式存儲設(shè)備,其特征在于,當(dāng)用戶選擇與所述一個應(yīng)用程序相關(guān)聯(lián)的文件時,所述自動運(yùn)行模塊自動運(yùn)行所述一個應(yīng)用程序。
10.如權(quán)利要求1所述的便攜式存儲設(shè)備,其特征在于,所述一個或多個存儲元件還存儲多個數(shù)據(jù)文件,其中,所述多個數(shù)據(jù)文件中的幾個與所述一個或多個可執(zhí)行文件相關(guān)聯(lián),所述多個數(shù)據(jù)文件中的幾個不與所述一個或多個可執(zhí)行文件中的任一個相關(guān)聯(lián)。
11.如權(quán)利要求1所述的便攜式存儲設(shè)備,其特征在于,所述一個或多個可執(zhí)行文件被執(zhí)行,以運(yùn)行被綁定到所述便攜式存儲設(shè)備的應(yīng)用程序。
12.如權(quán)利要求1所述的便攜式存儲設(shè)備,其特征在于,所述一個或多個存儲元件包括一個或多個閃存。
13.如權(quán)利要求12所述的便攜式存儲設(shè)備,其特征在于,所述便攜式存儲設(shè)備包括通用串行總線(USB)閃存設(shè)備。
14.一種方法,包括將一應(yīng)用程序綁定到一便攜式存儲設(shè)備,所述便攜式存儲設(shè)備存儲要被執(zhí)行以運(yùn)行所述應(yīng)用程序的一個或多個可執(zhí)行文件。
15.如權(quán)利要求14所述的方法,其特征在于,所述便攜式存儲設(shè)備包括通用串行總線(USB)設(shè)備。
16.如權(quán)利要求14所述的方法,其特征在于,所述便攜式存儲設(shè)備包括閃存設(shè)備。
17.如權(quán)利要求14所述的方法,其特征在于,所述綁定是作為激活所述應(yīng)用程序的一部分來執(zhí)行的。
18.如權(quán)利要求14所述的方法,其特征在于,還包括在所述便攜式存儲設(shè)備上保存所述應(yīng)用程序已被激活的指示。
19.如權(quán)利要求14所述的方法,其特征在于,還包括維護(hù)所述應(yīng)用程序被綁定到所述便攜式存儲設(shè)備的記錄。
20.一種在計算機(jī)中實(shí)現(xiàn)的方法,所述方法包括標(biāo)識存儲在耦合到所述計算機(jī)的便攜式存儲設(shè)備上的便攜式應(yīng)用程序;以及運(yùn)行所述便攜式應(yīng)用程序而不改變所述計算機(jī)上的環(huán)境設(shè)置。
21.如權(quán)利要求20所述的方法,其特征在于,還包括呈現(xiàn)一用戶界面,所述用戶界面標(biāo)識存儲在所述便攜式存儲設(shè)備上的多個便攜式應(yīng)用程序;以及接收用戶對所述多個便攜式應(yīng)用程序之一的選擇,運(yùn)行所述多個便攜式應(yīng)用程序,即使所述便攜式應(yīng)用程序包括訪問環(huán)境設(shè)置的一個或多個請求,也不改變所述計算機(jī)上的環(huán)境設(shè)置。
22.如權(quán)利要求20所述的方法,其特征在于,所述計算機(jī)上的環(huán)境設(shè)置包括所述計算機(jī)的系統(tǒng)注冊表中的信息。
23.如權(quán)利要求20所述的方法,其特征在于,運(yùn)行所述便攜式應(yīng)用程序還包括運(yùn)行所述便攜式應(yīng)用程序而不要求在所述計算機(jī)上安裝任何其它驅(qū)動程序。
24.一種在計算機(jī)上實(shí)現(xiàn)的方法,所述方法包括接收在耦合到所述計算機(jī)的便攜式存儲設(shè)備上安裝便攜式應(yīng)用程序的請求;將所述便攜式應(yīng)用程序的一個或多個可執(zhí)行文件寫到所述便攜式存儲設(shè)備中;以及將有關(guān)所述便攜式應(yīng)用程序的信息寫到所述便攜式存儲設(shè)備上的專用存儲中。
25.如權(quán)利要求24所述的方法,其特征在于,所述寫信息包括將關(guān)于所述便攜式應(yīng)用程序的信息寫到所述便攜式存儲設(shè)備上的專用存儲中,而不將所述信息寫到所述計算機(jī)行的系統(tǒng)信息存儲中。
26.如權(quán)利要求24所述的方法,其特征在于,還包括將所述便攜式存儲設(shè)備上的自動運(yùn)行模塊配置成標(biāo)識所述便攜式存儲設(shè)備上存在所述便攜式應(yīng)用程序。
27.如權(quán)利要求24所述的方法,其特征在于,還包括在將信息寫到所述專用存儲之前,在所述便攜式存儲設(shè)備上創(chuàng)建所述專用存儲。
28.如權(quán)利要求24所述的方法,其特征在于,所述專用存儲先前已用信息填充,并被復(fù)制到所述便攜式存儲設(shè)備中。
29.如權(quán)利要求24所述的方法,其特征在于,所述專用存儲包括專用注冊表。
30.一個或多個其上存儲多個指令的計算機(jī)可讀介質(zhì),當(dāng)由計算機(jī)的一個或多個處理器執(zhí)行所述指令時,使所述一個或多個處理器不在所述計算機(jī)上存儲任何永久文件;以及訪問所述存儲設(shè)備上的環(huán)境設(shè)置以及所述計算機(jī)上的環(huán)境設(shè)置。
31.如權(quán)利要求30所述的一個或多個計算機(jī)可讀介質(zhì),其特征在于,訪問所述存儲設(shè)備上的環(huán)境設(shè)置以及所述計算機(jī)上的環(huán)境設(shè)置是從所述存儲設(shè)備和所述計算機(jī)讀取環(huán)境設(shè)置,但僅將環(huán)境設(shè)置寫到所述存儲設(shè)備中。
32.如權(quán)利要求30所述的一個或多個計算機(jī)可讀介質(zhì),其特征在于,所述一個或多個計算機(jī)可讀介質(zhì)是便攜式存儲設(shè)備的一部分。
33.如權(quán)利要求30所述的一個或多個計算機(jī)可讀介質(zhì),其特征在于,所述多個指令還使所述一個或多個處理器在終止所述多個指令的執(zhí)行之前,刪除所述多個指令存儲在所述計算機(jī)上的任何臨時文件。
34.如權(quán)利要求30所述的一個或多個計算機(jī)可讀介質(zhì),其特征在于,所述多個指令是一便攜式應(yīng)用程序的一部分,僅在所述便攜式應(yīng)用程序已被激活的情況下,所述便攜式應(yīng)用程序才會被執(zhí)行。
35.如權(quán)利要求30所述的一個或多個計算機(jī)可讀介質(zhì),其特征在于,所述多個指令是一便攜式應(yīng)用程序的一部分,在所述便攜式應(yīng)用程序尚未被激活的情況下,所述便攜式應(yīng)用程序在功能有所減少的狀態(tài)下被執(zhí)行。
36.如權(quán)利要求34所述的一個或多個計算機(jī)可讀介質(zhì),其特征在于,所述便攜式應(yīng)用程序被綁定到所述便攜式存儲設(shè)備。
全文摘要
一種便攜式存儲設(shè)備包括接口以及一個或多個閃存。這一個或多個閃存存儲一個或多個可執(zhí)行文件,它們可由該設(shè)備所耦合到的主計算機(jī)執(zhí)行,即使這一個或多個可執(zhí)行文件包括訪問環(huán)境設(shè)置的指令,也不改變主計算機(jī)上的任何環(huán)境設(shè)置。此外,在激活過程期間,應(yīng)用程序被綁定到便攜式存儲設(shè)備。
文檔編號G06F13/00GK1790265SQ200510125030
公開日2006年6月21日 申請日期2005年11月15日 優(yōu)先權(quán)日2004年12月15日
發(fā)明者A·T·休斯, P·C·巴, A·Y·尼沙諾瓦, D·A·亞洛夫司基, J·A·伊斯特 申請人:微軟公司