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

用于供應(yīng)包的分發(fā)的系統(tǒng)和方法

文檔序號:7949539閱讀:225來源:國知局
專利名稱:用于供應(yīng)包的分發(fā)的系統(tǒng)和方法
用于供應(yīng)包的分發(fā)的系統(tǒng)和方法
本申請是于2004年12月8日提交的美國專利申請第11/006,837號的部分延 續(xù),而該申請又是于2004年11月15日提交的美國專利申請第10/989,122號的部 分延續(xù)。
本專利一般涉及計算機,尤其涉及計算機管理系統(tǒng)。
背景
世界人口中相當(dāng)大的一部分無法負(fù)擔(dān)擁有計算機和/或允許對計算機的有效使 用的各種軟件。存在向發(fā)展中國家的人們提供對計算的可負(fù)擔(dān)訪問的需求??紤]到 軟件產(chǎn)業(yè)的傳統(tǒng)結(jié)構(gòu),其中軟件許可證一般在永久許可證的基礎(chǔ)上出售,這種情況 也是真實的。作為不具有購買各種軟件的永久許可證的足夠資源的結(jié)果,人們被禁 止使用這樣的軟件,即使是用于訓(xùn)練目的等的短期基礎(chǔ)上。而且,即使在發(fā)達國家 中,當(dāng)計算機用戶需要在有限的時間內(nèi)使用特定軟件時,用戶由于必須購買該特定 軟件的永久許可證而感到沮喪。
這在計算機操作系統(tǒng)的情況中尤為真實。使用技術(shù)先進的計算機和計算能力 以及經(jīng)由因特網(wǎng)可用的資源,復(fù)雜操作系統(tǒng)被用于操作計算機及其與因特網(wǎng)和其它 資源的通信是必需的。然而,與軟件情況相同,操作系統(tǒng)一般也以永久許可證出售, 而這樣的永久許可證的成本與各個第三世界國家的人們的購買力相比相當(dāng)高昂。
嘗試了各種商業(yè)模型來提供用于允許使用軟件而無需購買永久許可證的替換 解決方案。例如,各個公司提供基于應(yīng)用服務(wù)供應(yīng)商(ASP)模型的軟件,其中駐 留在諸如因特網(wǎng)等網(wǎng)絡(luò)上的服務(wù)器上的軟件可由用戶通過登錄該服務(wù)器來訪問。然 而,這種方法要求用戶持續(xù)經(jīng)由網(wǎng)絡(luò)連接至服務(wù)器。這在各個發(fā)展中國家中不是可 行的解決方案,在這些國家中對因特網(wǎng)的接入是不可靠且昂貴的?;蛘?,軟件供應(yīng) 商通常允許用戶下載軟件以便在固定時限內(nèi)使用, 一般用于試用目的,在此之后用 戶必須購買軟件的永久許可證。然而,用于使用這樣的試用軟件的時限通常是固定 的,且用戶沒有購買他或她自己選擇的時限或?qū)υ撛囉密浖褂美m(xù)展附加的固定 時間量的選擇。如可以容易理解的,存在對以使用戶可按照各種不同方式購買服務(wù)的方式向用戶提供軟件服務(wù)的需求。
概述
一種動態(tài)軟件供應(yīng)系統(tǒng)允許基于所需商業(yè)過程在多個不同的計算設(shè)備上供應(yīng) 軟件。該動態(tài)軟件供應(yīng)系統(tǒng)允許用戶向因特網(wǎng)服務(wù)供應(yīng)商、系統(tǒng)供應(yīng)商或向第三方 請求對操作系統(tǒng)或其它應(yīng)用程序和工具的特定時間期限、特定使用量或任何其它所 需方式的使用。供應(yīng)服務(wù)使用用于管理軟件和使用授權(quán)消息的實際傳遞的分發(fā)環(huán) 境,這些軟件和使用授權(quán)消息有時被稱為供應(yīng)包。分發(fā)環(huán)境接收具有與目標(biāo)計算機 相關(guān)聯(lián)的標(biāo)識符的供應(yīng)包,并使供應(yīng)包排隊以便傳遞。當(dāng)對供應(yīng)包的請求到達時, 將請求中的標(biāo)識符與供應(yīng)包中的標(biāo)識符進行匹配。然后將正確的供應(yīng)包傳遞給計算 機??墒挂粋€以上的包排隊以便在分發(fā)環(huán)境中傳遞。
附圖簡述


圖1是互連多個計算資源的網(wǎng)絡(luò)的框圖2是可連接至圖1的網(wǎng)絡(luò)的計算機的框圖3是用于在圖1的網(wǎng)絡(luò)上的計算機上供應(yīng)操作系統(tǒng)的軟件供應(yīng)系統(tǒng)的框圖4是描述計算機在圖3的軟件供應(yīng)系統(tǒng)上的注冊的流程圖5是圖3的軟件供應(yīng)系統(tǒng)的核心供應(yīng)系統(tǒng)的框圖6是圖5的核心供應(yīng)系統(tǒng)所使用的核心數(shù)據(jù)庫的框圖7是圖3的核心軟件供應(yīng)系統(tǒng)所使用的分發(fā)數(shù)據(jù)庫的框圖8是圖3的軟件供應(yīng)系統(tǒng)的本地供應(yīng)模塊的框圖9是圖3的軟件供應(yīng)系統(tǒng)所使用的密鑰注冊程序的流程圖10是圖3的軟件供應(yīng)系統(tǒng)所使用的包生成程序的流程圖11是圖3的軟件供應(yīng)系統(tǒng)所使用的引導(dǎo)程序的流程圖12是圖3的軟件供應(yīng)系統(tǒng)所使用的包分發(fā)程序的流程圖13示出圖8的本地供應(yīng)模塊的操作情形的流程圖14示出圖8的本地供應(yīng)模塊的操作情形的另一流程圖15示出圖8的本地供應(yīng)模塊的操作情形的另一流程圖16示出圖8的本地供應(yīng)模塊的操作情形的另一流程圖17示出圖8的本地供應(yīng)模塊的操作情形的又一流程圖18示出在圖17的操作情形期間向用戶呈現(xiàn)的示例性GUI圖19示出在圖17的操作情形期間向用戶呈現(xiàn)的另一示例性GUI;
圖20示出在圖17的操作情形期間向用戶呈現(xiàn)的另一示例性GUI; 圖21示出在圖17的操作情形期間向用戶呈現(xiàn)的另一示例性GUI; 圖22示出在圖17的操作情形期間向用戶呈現(xiàn)的另一示例性GUI; 圖23示出在圖7的操作情形期間向用戶呈現(xiàn)的另一示例性GUI;以及 圖24示出在圖17的操作情形期間向用戶呈現(xiàn)的另一示例性GUI。
描述
盡管以下文本描述了各個不同實施例的詳細(xì)描述,但應(yīng)理解,該描述的法定 范圍由本專利所附的權(quán)利要求書的文字定義。該詳細(xì)描述將被解釋為僅為示例性而 沒有描述每個可能的實施例,因為描述每個可能的實施例即使不是不可能也是不切 實際的??墒褂卯?dāng)前的技術(shù)或本專利的申請日之后開發(fā)的技術(shù)來實現(xiàn)各種替換實施 例,它們?nèi)月淙攵x本發(fā)明的權(quán)利要求書的范圍之內(nèi)。
還應(yīng)理解,除非使用語句"如此處所使用的,術(shù)語'_,此處被定義為指
的是…"或類似語句在本專利中明確地定義術(shù)語,否則不旨在顯式或隱式地限制該 術(shù)語的意義來超出其普通或平常的意義,這樣的術(shù)語不應(yīng)被解釋為被限制于基于本 專利的任何章節(jié)中作出的任何陳述(除權(quán)利要求書的語言之外)的范圍中。就本專 利所附的權(quán)利要求書中所述的任何術(shù)語在本專利中以與單數(shù)含義一致的方式被引 用而言,這是僅為清楚起見以便不混淆讀者,而不旨在這樣的權(quán)利要求術(shù)語以隱式 等方式被限于該單數(shù)意義。最后,除非通過敘述詞語"裝置"以及功能而沒有敘述 任何結(jié)構(gòu)來定義權(quán)利要求要素,否則不旨在將任何權(quán)利要求元素的范圍基于35 U.S.C. § 112第六段的應(yīng)用來解釋。
網(wǎng)絡(luò)
圖1示出可用于實現(xiàn)動態(tài)軟件供應(yīng)系統(tǒng)的網(wǎng)絡(luò)10。網(wǎng)絡(luò)IO可以是因特網(wǎng)、虛 擬專用網(wǎng)絡(luò)(VPN)、或允許一臺或多臺計算機、通信設(shè)備、數(shù)據(jù)庫等彼此通信連 接的任何其它網(wǎng)絡(luò)。網(wǎng)絡(luò)10可經(jīng)由以太網(wǎng)16和路由器18以及陸上通訊線20連接 至個人計算機12和計算機終端14。另一方面,網(wǎng)絡(luò)10可經(jīng)由無線通信站26和無 線鏈路28無線連接至膝上型計算機22和個人數(shù)據(jù)助理24。類似地,服務(wù)器30可 使用通信鏈路32連接至網(wǎng)絡(luò)10,大型機34可使用另一通信鏈路36連接至網(wǎng)絡(luò)10。 如將在以下更詳細(xì)描述的,動態(tài)軟件供應(yīng)系統(tǒng)的一個或多個組件可被存儲在連接至網(wǎng)絡(luò)10的各個設(shè)備中的任何一個上并在其上操作。
計算機
圖2示出可連接至網(wǎng)絡(luò)10且可用于實現(xiàn)動態(tài)軟件供應(yīng)系統(tǒng)的一個或多個組件 的計算機110形式的計算設(shè)備。計算機110的組件可以包括,但不限于,處理單元 120、系統(tǒng)存儲器130和將包括系統(tǒng)存儲器在內(nèi)的各種系統(tǒng)組件耦合至處理單元120 的系統(tǒng)總線121。系統(tǒng)總線121可以是若干類型的總線結(jié)構(gòu)中的任一種,包括存儲 器總線或存儲器控制器、外圍總線和使用各種總線體系結(jié)構(gòu)中的任一種的局部總 線。作為示例,而非限制,這樣的體系結(jié)構(gòu)包括工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線、 微通道體系結(jié)構(gòu)(MCA)總線、擴展的ISA (EISA)總線、視頻電子技術(shù)標(biāo)準(zhǔn)協(xié) 會(VESA)局部總線和外圍部件互連(PCI)總線(也被稱為Mezzanine總線)。
計算機110通常包括各種計算機可讀介質(zhì)。計算機可讀介質(zhì)可以是能夠被計 算機IIO訪問的任何可用介質(zhì),且包括易失性和非易失性介質(zhì)、可移動和不可移動 介質(zhì)。作為示例,而非限制,計算機可讀介質(zhì)可以包括計算機存儲介質(zhì)和通信介質(zhì)。 計算機存儲介質(zhì)包括以任何方法或技術(shù)實現(xiàn)的用于存儲諸如計算機可讀指令、數(shù)據(jù) 結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)等信息的易失性和非易失性、可移動和不可移動介質(zhì)。 計算機存儲介質(zhì)包括,但不限于,RAM、 ROM、 EEPROM、閃存或其它存儲器技 術(shù)、CD-ROM、數(shù)字多功能盤(DVD)或其它光盤存儲、磁帶盒、磁帶、磁盤存 儲或其它磁性存儲設(shè)備、或能用于存儲所需信息且可以由計算機110訪問的任何其 它介質(zhì)。通信介質(zhì)通常具體化為諸如載波或其它傳輸機制等已調(diào)制數(shù)據(jù)信號中的計 算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù),且包含任何信息傳遞介質(zhì)。術(shù)語 "已調(diào)制數(shù)據(jù)信號"指的是這樣一種信號,其一個或多個特征以在信號中編碼信息 的方式被設(shè)定或更改。作為示例,而非限制,通信介質(zhì)包括有線介質(zhì),諸如有線網(wǎng) 絡(luò)或直接線連接,以及無線介質(zhì),諸如聲學(xué)、射頻、紅外線和其它無線介質(zhì)。上述 中任一個的組合也應(yīng)包括在計算機可讀介質(zhì)的范圍之內(nèi)。
系統(tǒng)存儲器130包括易失性或非易失性存儲器形式的計算機存儲介質(zhì),諸如 只讀存儲器(ROM) 131和隨機存取存儲器(RAM) 132?;据斎?輸出系統(tǒng)133
(BIOS)包含有助于諸如啟動時在計算機110中元件之間傳遞信息的基本例程, 它通常存儲在ROM 131中。RAM 132通常包含處理單元120可以立即訪問和/或 目前正在操作的數(shù)據(jù)和/或程序模塊。作為示例,而非限制,圖1示出了操作系統(tǒng) 134、應(yīng)用程序135、其它程序模塊136和程序數(shù)據(jù)137。計算機110也可以包括其它可移動/不可移動、易失性/非易失性計算機存儲介 質(zhì)。僅作為示例,圖l示出了從不可移動、非易失性磁介質(zhì)中讀取或向其寫入的硬
盤驅(qū)動器140,從可移動、非易失性磁盤152中讀取或向其寫入的磁盤驅(qū)動器151, 以及從諸如CD ROM或其它光學(xué)介質(zhì)等可移動、非易失性光盤156中讀取或向其 寫入的光盤驅(qū)動器155??梢栽谑纠圆僮鳝h(huán)境下使用的其它可移動/不可移動、易 失性/非易失性計算機存儲介質(zhì)包括,但不限于,盒式磁帶、閃存卡、數(shù)字多功能 盤、數(shù)字錄像帶、固態(tài)RAM、固態(tài)ROM等。硬盤驅(qū)動器141通常經(jīng)由諸如接口 140等不可移動存儲器接口連接至系統(tǒng)總線121,磁盤驅(qū)動器151和光盤驅(qū)動器155 通常由諸如接口 150等可移動存儲器接口連接至系統(tǒng)總線121。
以上描述和在圖1中示出的驅(qū)動器及其相關(guān)聯(lián)的計算機存儲介質(zhì)為計算機 110提供了對計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的存儲。例如,在 圖1中,硬盤驅(qū)動器141被示為存儲操作系統(tǒng)144、應(yīng)用程序145、其它程序模塊 146和程序數(shù)據(jù)147。注意,這些組件可以與操作系統(tǒng)134、應(yīng)用程序135、其它程 序模塊136和程序數(shù)據(jù)137相同或不同。操作系統(tǒng)144、應(yīng)用程序145、其它程序 模塊146和程序數(shù)據(jù)147在這里被標(biāo)注了不同的標(biāo)號是為了說明至少它們是不同的 副本。用戶可以通過輸入設(shè)備,諸如鍵盤162和定點設(shè)備161 (通常指鼠標(biāo)、跟蹤 球或觸摸墊)向計算機20輸入命令和信息。其它輸入設(shè)備(未示出)可以包括麥 克風(fēng)、操縱桿、游戲墊、圓盤式衛(wèi)星天線、掃描儀等。這些和其它輸入設(shè)備通常經(jīng) 由耦合至系統(tǒng)總線的用戶輸入接口 160連接至處理單元120,但也可以由其它接口 或總線結(jié)構(gòu),諸如并行端口、游戲端口或通用串行總線(USB)連接。監(jiān)視器191 或其它類型的顯示設(shè)備也經(jīng)由諸如視頻接口 190的接口連接至系統(tǒng)總線121。除監(jiān) 視器以外,計算機也可以包括其它外圍輸出設(shè)備,諸如揚聲器197和打印機196, 它們可以通過輸出外圍接口 190連接。
計算機110可使用至一個或多個遠(yuǎn)程計算機,諸如遠(yuǎn)程計算機180的邏輯連 接在網(wǎng)絡(luò)化環(huán)境下操作。遠(yuǎn)程計算機180可以是個人計算機、服務(wù)器、路由器、網(wǎng) 絡(luò)PC、對等設(shè)備或其它常見網(wǎng)絡(luò)節(jié)點,且通常包括上文相對于計算機110描述的 許多或所有元件,盡管在圖1中只示出存儲器存儲設(shè)備181。圖1中所示邏輯連接 包括局域網(wǎng)(LAN) 171和廣域網(wǎng)(WAN) 173,但也可以包括其它網(wǎng)絡(luò)。這樣的 連網(wǎng)環(huán)境在辦公室、企業(yè)范圍計算機網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)和因特網(wǎng)中是常見的。
當(dāng)在LAN連網(wǎng)環(huán)境中使用時,計算機110通過網(wǎng)絡(luò)接口或適配器170連接至 LAN 171。當(dāng)在WAN連網(wǎng)環(huán)境中使用時,計算機IIO通常包括調(diào)制解調(diào)器172或用于通過諸如因特網(wǎng)等WAN 173建立通信的其它裝置。調(diào)制解調(diào)器172可以是內(nèi) 置或外置的,它可以通過用戶輸入接口 160或其它合適的機制連接至系統(tǒng)總線121。 在網(wǎng)絡(luò)化環(huán)境中,相對于計算機IIO描述的程序模塊或其部分可以存儲在遠(yuǎn)程存儲 器存儲設(shè)備中。作為示例,而非限制,圖1示出了遠(yuǎn)程應(yīng)用程序185駐留在存儲器 設(shè)備181上??梢岳斫?,所示的網(wǎng)絡(luò)連接是示例性的,且可以使用在計算機之間建 立通信鏈路的其它手段。
軟件供應(yīng)系統(tǒng)
圖3示出供應(yīng)操作系統(tǒng)在計算設(shè)備202上的使用的動態(tài)軟件供應(yīng)系統(tǒng)200,其 中計算設(shè)備202可以是公知計算設(shè)備中的任何一種,諸如臺式計算機12、膝上型 計算機22、 PDA 24、手機或任何類似的設(shè)備。盡管軟件供應(yīng)系統(tǒng)200被示為被實 現(xiàn)來供應(yīng)操作系統(tǒng)的使用,但在一個替換實現(xiàn)中,軟件供應(yīng)系統(tǒng)200可用于供應(yīng)諸 如軟件、固件、計算設(shè)備的特征等其它資源的使用。類似地,盡管軟件供應(yīng)系統(tǒng) 200被示為供應(yīng)資源在通信連接至網(wǎng)絡(luò)10的計算設(shè)備202上的使用,但它可用于 實現(xiàn)在可能未連接至網(wǎng)絡(luò)10或可能臨時連接至網(wǎng)絡(luò)10的計算設(shè)備上的這樣的使 用。
軟件供應(yīng)系統(tǒng)200可包括供應(yīng)服務(wù)模塊204,它含有核心供應(yīng)服務(wù)模塊206、 具有確認(rèn)服務(wù)209的分發(fā)服務(wù)模塊208、證書服務(wù)模塊210、核心數(shù)據(jù)庫212以及 分發(fā)數(shù)據(jù)庫214。供應(yīng)系統(tǒng)204可經(jīng)由記帳適配器218與記帳系統(tǒng)216通信,而核 心供應(yīng)服務(wù)模塊206可經(jīng)由數(shù)據(jù)庫寫入器220與分發(fā)數(shù)據(jù)庫214通信,分發(fā)數(shù)據(jù)庫 214可經(jīng)由數(shù)據(jù)庫讀取器222與分發(fā)服務(wù)208通信。計算設(shè)備202可包括經(jīng)由分發(fā) web服務(wù)模塊226與分發(fā)服務(wù)模塊208通信并經(jīng)由記帳web服務(wù)模塊228與記帳 系統(tǒng)216通信的本地供應(yīng)模塊(LPM) 224。
供應(yīng)服務(wù)模塊204可位于諸如服務(wù)器30等服務(wù)器系統(tǒng)或通信連接至網(wǎng)絡(luò)10 的其它系統(tǒng)上。類似地,記帳系統(tǒng)216也可位于諸如服務(wù)器30等服務(wù)器系統(tǒng)或通 信連接至網(wǎng)絡(luò)10的其它系統(tǒng)上。而且,供應(yīng)服務(wù)模塊204的各個組件中的一個或 多個可位于同一服務(wù)器上或位于不同位置中的多個不同服務(wù)器上。例如,核心數(shù)據(jù) 庫212可位于不同位置且各自通信連接至網(wǎng)絡(luò)10的多個不同的數(shù)據(jù)庫服務(wù)器上。 供應(yīng)服務(wù)模塊204及其各個組件模塊的功能將在以下更詳細(xì)說明。
盡管在圖3中將計算設(shè)備202示為分別經(jīng)由web服務(wù)模塊226和228與分發(fā) 服務(wù)模塊208和記帳系統(tǒng)216通信。在某些情況中,web服務(wù)模塊226可識別活動超出期望水平的增加。但在替換實施例中,計算設(shè)備202的用戶可經(jīng)由諸如電話等
替換通信模式與分發(fā)服務(wù)模塊208和記帳系統(tǒng)216通信。例如,在其中計算設(shè)備 202無法連接至網(wǎng)絡(luò)10的情形中,計算設(shè)備202的用戶可經(jīng)由電話和附連至分發(fā) 服務(wù)模塊208的啟用語音識別的用戶界面,或經(jīng)由能夠與分發(fā)服務(wù)模塊208通信的 顧客服務(wù)代表來通信。
當(dāng)計算設(shè)備202是諸如計算機IIO等計算機時,LPM 224可位于不可移動、 非易失性存儲器140上、作為系統(tǒng)存儲器130的一部分、作為計算機110包括處理 單元120在內(nèi)的各個硬件組件的一部分、或作為這些的任何組合。將在以下更詳細(xì) 說明LPM 224的運作。
供應(yīng)系統(tǒng)流程圖
現(xiàn)在參考圖4,供應(yīng)程序250示出軟件供應(yīng)系統(tǒng)200的一般運作。在框251 處,可向用戶提供用于在計算設(shè)備202上使用操作系統(tǒng)的注冊密鑰。作為用戶購買 用于使用操作系統(tǒng)的額外時間等的結(jié)果,可連同用戶對計算設(shè)備202的新的購買來 向用戶提供注冊密鑰。多個不同的實體可向用戶提供注冊密鑰,例如銷售計算設(shè)備 202的計算機商店可向用戶提供密鑰,銷售包括計算設(shè)備202對操作系統(tǒng)的使用的 服務(wù)包的因特網(wǎng)服務(wù)供應(yīng)商可向用戶提供注冊密鑰等。
如將在以下更詳細(xì)說明的,注冊密鑰可由供應(yīng)服務(wù)模塊204使用證書服務(wù)210 來產(chǎn)生,并可按照安全方式被發(fā)送給注冊密鑰提供者?;蛘?,注冊密鑰提供者可按 照與供應(yīng)服務(wù)模塊204協(xié)定的方式來產(chǎn)生注冊密鑰。注冊密鑰可以包含或不包含硬 件或使用注冊密鑰標(biāo)識計算設(shè)備202的其它組件所專用的信息。在軟件供應(yīng)系統(tǒng) 200的一個實現(xiàn)中,每一注冊密鑰用計算設(shè)備202的硬件標(biāo)識(HWID)來唯一地 標(biāo)識計算設(shè)備202。在另一實現(xiàn)中,注冊密鑰可以是產(chǎn)品標(biāo)識號,諸如操作系統(tǒng)產(chǎn) 品密鑰等,且可由諸如操作系統(tǒng)開發(fā)員、使用該操作系統(tǒng)的計算設(shè)備的制造商等除 供應(yīng)服務(wù)以外的實體來產(chǎn)生。注冊密鑰也被稱為初始化密鑰(InitKey),它可采 用一連串的字母數(shù)字字符的形式、射頻標(biāo)識(RFID)標(biāo)簽的形式、或任何其它協(xié) 定的格式。
在向用戶提供注冊密鑰之后,在框252處,供應(yīng)程序250可確定是否有必要 向供應(yīng)服務(wù)模塊204注冊該注冊密鑰。如果InitKey最初是由供應(yīng)服務(wù)模塊204開 發(fā)的,則不必注冊該InitKey,因為它可能己經(jīng)存儲在供應(yīng)服務(wù)模塊204處的數(shù)據(jù) 庫中?;蛘?,如果軟件供應(yīng)系統(tǒng)200以允許第三方廠商基于協(xié)定的過程生成InitKey的方式來設(shè)置,則這樣的廠商可能需要在生成密鑰之后或至少將其提供給用戶之后
注冊InitKey。
如果確定有必要注冊InitKey,則在框254處,廠商可向供應(yīng)服務(wù)模塊204注 冊InitKey。 InitKey的注冊將在以下圖9中更詳細(xì)示出。
在注冊InitKey之后,在框256處,供應(yīng)程序250為計算設(shè)備202生成供應(yīng)包 (也被稱為"包")。供應(yīng)包可由計算設(shè)備202使用以允許用戶在指定的時間量、 指定的期限、或任何其它協(xié)定的方式來使用操作系統(tǒng)。在一替換實現(xiàn)中,供應(yīng)包可 用于允許用戶在指定期限內(nèi)使用諸如軟件、應(yīng)用程序等任何其它資源。由供應(yīng)服務(wù) 模塊204生成的供應(yīng)包可包含關(guān)于該包的用戶、由該包允許的使用量等信息。例如, 當(dāng)廠商以在計算設(shè)備202上操作系統(tǒng)一個月的預(yù)付使用來銷售計算設(shè)備202時,在 框256處,供應(yīng)服務(wù)模塊204可為計算設(shè)備202生成允許計算設(shè)備202使用該操作 系統(tǒng)一個月期限的供應(yīng)包。然而,可按照僅有計算設(shè)備202可使用該特定供應(yīng)包的 方式來生成供應(yīng)包。供應(yīng)包的生成將在以下圖IO中更詳細(xì)示出。
當(dāng)用戶試圖通過開啟計算設(shè)備202或以任何其它方式來激活計算設(shè)備202上 的操作系統(tǒng)時,LPM 224可控制操作系統(tǒng)的激活。這由程序250的框258表示。 如果LPM 224檢測到這是用戶首次試圖使用該操作系統(tǒng),則LPM 224可請求用戶 輸入InitKey。在一替換實現(xiàn)中,LPM 224可掃描計算設(shè)備202來確定計算設(shè)備202 是否預(yù)先填充了 InitKey,且如果是則LPM224自動從計算設(shè)備202中檢索InitKey。 當(dāng)從用戶接收到InitKey之后,LPM 224可與供應(yīng)服務(wù)模塊204聯(lián)系以請求計算設(shè) 備202的證書,其中對證書的請求包括計算設(shè)備202的InitKey和HWID等信息。 LPM 224的設(shè)計和操作將在以下圖7中更詳細(xì)描述。
響應(yīng)于對證書的請求,在框260處,供應(yīng)服務(wù)模塊204可從證書服務(wù)模塊210 接收證書,并經(jīng)由分發(fā)服務(wù)模塊208將證書發(fā)送給計算設(shè)備202。從證書服務(wù)模塊 210生成證書并將證書發(fā)送給客戶機設(shè)備的過程將在以下圖10中更詳細(xì)描述。
在從供應(yīng)服務(wù)模塊204接收證書之后,在框262處,LPM 224確定是否有必 要獲得更多的供應(yīng)包以便在計算設(shè)備202上使用操作系統(tǒng)。LPM 224可基于諸如 計算設(shè)備202己被使用的時間、當(dāng)前時間期限等商業(yè)規(guī)則或任何類似的商業(yè)規(guī)則來 消費從供應(yīng)服務(wù)模塊204接收的供應(yīng)包。如以下進一步描述的,LPM 224可具有 包含之前從供應(yīng)服務(wù)模塊204接收的供應(yīng)包的本地供應(yīng)包存儲模塊。LPM 224可 從這樣的本地包存儲中選擇供應(yīng)包,并分析其內(nèi)容以卻確定是否需要向供應(yīng)服務(wù)模 塊204請求更多的包。供應(yīng)包的選擇以及對所選供應(yīng)包的分析將在以下圖7中更詳細(xì)說明。
如果確定有必要請求更多的供應(yīng)包,則在框264處,LPM 224可向供應(yīng)服務(wù) 模塊204發(fā)送接收更多的供應(yīng)包的請求。LPM 224可按照多種不同方式向PSM發(fā) 送這樣的請求,包括通過連接至分發(fā)服務(wù)模塊208的網(wǎng)絡(luò)服務(wù)模塊226、請求計算 設(shè)備202的用戶聯(lián)系供應(yīng)服務(wù)模塊204處的顧客服務(wù)代表、或任何其它所需方式。 對供應(yīng)包的請求可包括標(biāo)識客戶機設(shè)備、由客戶機使用的操作系統(tǒng)等的信息。
當(dāng)從計算設(shè)備202接收對供應(yīng)包的請求之后,在框266處,供應(yīng)服務(wù)模塊204 可生成供應(yīng)包并將其分發(fā)給LPM 224。提供給LPM 224的每一供應(yīng)包可包含標(biāo)識 計算設(shè)備202、由計算設(shè)備202使用的操作系統(tǒng)、包類型、包序列號、允許計算設(shè) 備使用操作系統(tǒng)的時間或操作系統(tǒng)使用期滿的日期等的各種信息。允許LPM 224 認(rèn)證供應(yīng)包中的信息的數(shù)字簽名也可被包括在供應(yīng)包中。或者,在不同的安全協(xié)議 下,允許LPM 224認(rèn)證供應(yīng)包中的信息的數(shù)字簽名也可被單獨發(fā)送給LPM 224。 供應(yīng)包的生成和分發(fā)將在以下圖12中更詳細(xì)描述。
在接收供應(yīng)包之后,在框268處,LPM 224可處理供應(yīng)包,這將在以下圖7 中更詳細(xì)描述。當(dāng)分析供應(yīng)包的內(nèi)容之后,如果LPM224確定允許在計算設(shè)備202 上使用操作系統(tǒng),則在框270處,計算設(shè)備202可開啟計算設(shè)備202上的操作系統(tǒng)。
核心供應(yīng)系統(tǒng)
圖5示出圖3的核心供應(yīng)服務(wù)模塊206的詳細(xì)框圖。核心供應(yīng)服務(wù)模塊206 可在服務(wù)器30、大型機34、或通信連接至網(wǎng)絡(luò)IO的任何其它合適的設(shè)備上實現(xiàn)。 核心供應(yīng)服務(wù)模塊206可與證書服務(wù)模塊210、記帳適配器218、核心DB 212和 分發(fā)服務(wù)模塊208通信。核心供應(yīng)服務(wù)206可包括與記帳適配器通信的記帳接口 280、與證書服務(wù)模塊210通信的證書服務(wù)接口 282、與分發(fā)服務(wù)模塊208通信的 分發(fā)服務(wù)接口 288、帳戶更新模塊284、包生成器286以及與核心數(shù)據(jù)庫21和分發(fā) 數(shù)據(jù)庫214通信的數(shù)據(jù)訪問模塊290。
記帳接口 280可使用web接口、至記帳適配器218的VPN、或本領(lǐng)域技術(shù)人 員所公知的任何其它期望方式來實現(xiàn)。在一特定實現(xiàn)中,記帳接口 280可使用 Microsoft消息隊列(MSMQ) TM接口來實現(xiàn)?;蛘?,使用不同的行業(yè)協(xié)議設(shè)計的 接口,諸如使用企業(yè)應(yīng)用接口 (EAI)協(xié)議設(shè)計的Microsoft BiztalkTM也可用于實 現(xiàn)記帳接口 280。 MSMQ,技術(shù)也可用于實現(xiàn)分發(fā)服務(wù)接口 288和數(shù)據(jù)訪問模塊 290。記帳接口模塊280可從記帳適配器218接收對注冊計算設(shè)備的InitKey的請求、 與帳戶更新通信來提供帳戶更新信息、程序引導(dǎo)各種計算設(shè)備、向證書服務(wù)模塊 210請求計算設(shè)備的客戶機證書等。
帳戶更新模塊284可負(fù)責(zé)創(chuàng)建、維護和更新計算設(shè)備202的帳戶。帳戶更新 模塊284可從記帳適配器218接收關(guān)于計算設(shè)備202的帳戶設(shè)置和更新的信息,且 它可與包生成器286通信以生成并存儲計算設(shè)備202的供應(yīng)包。例如,諸如電信公 司等承保人可出售操作系統(tǒng)在計算設(shè)備202的一塊使用時間,并使用記帳適配器 218向核心供應(yīng)服務(wù)206發(fā)送帳戶更新請求以便據(jù)此更新計算設(shè)備202的帳戶。當(dāng) 從記帳適配器218接收帳戶更新請求之后,帳戶更新模塊284可使用數(shù)據(jù)訪問模塊 290形成核心數(shù)據(jù)庫212中的所需條目,并與包生成器通信以生成必需的供應(yīng)包。 在一替換情況中,分發(fā)服務(wù)模塊208可從計算設(shè)備208接收為計算設(shè)備202購買供 應(yīng)包的請求。
另一方面,當(dāng)計算設(shè)備202向供應(yīng)服務(wù)206發(fā)送對證書或?qū)?yīng)包的請求時, 帳戶更新模塊284可從核心數(shù)據(jù)庫212中檢索供應(yīng)包、更新計算設(shè)備202的帳戶信 息、以及與分發(fā)服務(wù)模塊208通信以便將供應(yīng)包發(fā)送給計算設(shè)備202。
當(dāng)核心供應(yīng)服務(wù)206從計算設(shè)備202接收對證書或?qū)?yīng)包的請求時,核心 供應(yīng)服務(wù)206可使用證書服務(wù)接口 282與證書服務(wù)模塊210通信以接收證書或驗證 證書。證書服務(wù)模塊210可使用允許生成并管理加密證書的標(biāo)準(zhǔn)證書技術(shù)中的任何 一種來實現(xiàn)。例如,證書服務(wù)模塊210可使用遵循公鑰基礎(chǔ)架構(gòu)(PKI)的證書授 權(quán)機構(gòu)來實現(xiàn)。證書服務(wù)模塊210可包括負(fù)責(zé)生成加密非對稱雙生密鑰(twinkey)、 標(biāo)識并認(rèn)證密鑰訂戶等的密鑰管理器。證書服務(wù)模塊210還可包括用于經(jīng)由數(shù)字證 書將公鑰綁定至客戶機帳戶的證書生成器,用于這樣的證書的發(fā)放、維護、管理、 撤銷、延緩、恢復(fù)和續(xù)展,以及用于公共密鑰儲存庫的創(chuàng)建和管理??蛻魴C證書的 生成和管理將在以下圖11中更詳細(xì)示出。
證書服務(wù)接口 282可在將由包生成器286生成的供應(yīng)包發(fā)送給計算設(shè)備202 之前通過使用由證書服務(wù)模塊210生成的證書來簽署該供應(yīng)包。證書服務(wù)接口 282 也可與證書服務(wù)模塊210通信以便驗證包請求上的客戶機簽名等。
核心供應(yīng)服務(wù)206可負(fù)責(zé)將供應(yīng)包和其它客戶機設(shè)備程序引導(dǎo)信息,諸如客 戶機設(shè)備證書發(fā)布到分發(fā)數(shù)據(jù)庫214內(nèi)。注意到,可允許分發(fā)服務(wù)模塊208從分發(fā) 數(shù)據(jù)庫214讀取信息,然而為了維護帳戶信息的完整性, 一般不允許分發(fā)服務(wù)模塊 208發(fā)布到分發(fā)數(shù)據(jù)庫214內(nèi)。盡管核心供應(yīng)服務(wù)206中的各個模塊被示為執(zhí)行上述不同任務(wù)的不同的模塊,
但可以理解,這種描述是僅用于說明的目的,且實際上,所有這些不同的模塊可按 照不同的方式來實現(xiàn),使得這些模塊中一個或多個可被組合、所有這些模塊可按照 不同的方式彼此交互等。
核心數(shù)據(jù)庫模式
圖6示出可用于核心數(shù)據(jù)庫212的一種實現(xiàn)的核心數(shù)據(jù)庫模式310。核心數(shù)據(jù) 庫模式310可包括程序引導(dǎo)(Bootstrap)表312、計算設(shè)備(PC)表314、作業(yè)(Job) 表316、包(Packet)表318、配置(Configuration)表320、計算設(shè)備日志(PCLog) 表322、類型(Type)表324、作業(yè)日志(JobLog)表326和狀態(tài)(Status)表328。 核心數(shù)據(jù)庫模式310可使用公知關(guān)系型數(shù)據(jù)庫軟件中的任一種來實現(xiàn),且核心數(shù)據(jù) 庫模式310的各個表可被存儲在單個數(shù)據(jù)庫服務(wù)器上或被存儲在經(jīng)由諸如網(wǎng)絡(luò)10 等網(wǎng)絡(luò)彼此連接的分開的數(shù)據(jù)庫服務(wù)器上。
程序引導(dǎo)表312可存儲諸如計算設(shè)備202等可使用軟件供應(yīng)系統(tǒng)200來供應(yīng) 的計算設(shè)備的程序引導(dǎo)數(shù)據(jù),其中這一數(shù)據(jù)經(jīng)由記帳適配器218從承保人接收。引 導(dǎo)表312中的每一記錄可包括各種信息,包括記錄標(biāo)識域(ID)、計算設(shè)備的標(biāo) 識(PCID)、提供給計算設(shè)備的用戶的InitKey (InitKey)、標(biāo)識包被傳遞給計算 設(shè)備的次數(shù)的傳遞計數(shù)(DeliverCount)、和計算設(shè)備的程序引導(dǎo)狀態(tài)(Status)。
計算設(shè)備表314可存儲與諸如計算設(shè)備202等可使用軟件供應(yīng)系統(tǒng)200來供 應(yīng)的計算設(shè)備有關(guān)的數(shù)據(jù)。計算設(shè)備表314可存儲與計算設(shè)備有關(guān)的、被添加到發(fā) 送給計算設(shè)備的注冊包或供應(yīng)包的各種數(shù)據(jù)。計算設(shè)備表314可用于標(biāo)識計算設(shè)備 并跟蹤計算設(shè)備的狀態(tài)。計算設(shè)備表314中的每一記錄可包括各種信息,包括記錄 標(biāo)識域(ID)、指定計算設(shè)備的硬件配置的硬件標(biāo)識(HWID)、表示之前發(fā)送給 計算設(shè)備的供應(yīng)包的序列號的最近序列號(LastSequenceNumber)等。
作業(yè)表316存儲可基于對供應(yīng)服務(wù)模塊204的各個供應(yīng)請求而創(chuàng)建的數(shù)據(jù), 其中每一供應(yīng)請求在作業(yè)表316中創(chuàng)建一新記錄。作業(yè)表316中的記錄可用于跟蹤 各個供應(yīng)請求的供應(yīng)作業(yè)狀態(tài)。作業(yè)表316中的每一記錄包括各種信息,包括記錄 標(biāo)識域(ID)、計算設(shè)備標(biāo)識(PCID)、作業(yè)類型標(biāo)識(Type)、作業(yè)跟蹤標(biāo)識 (TrackingID)、供應(yīng)請求的令牌(TokenID)、作出供應(yīng)請求的計算設(shè)備的帳戶 標(biāo)識(AccountID)、供應(yīng)請求的日期和時間(Date)、處理供應(yīng)請求的狀態(tài)(Status) 等。包表318存儲可基于作業(yè)數(shù)據(jù)而創(chuàng)建的包數(shù)據(jù),其中一個作業(yè)可創(chuàng)建一個或
多個包。包表用于跟蹤響應(yīng)于從分發(fā)服務(wù)模塊208或從記帳適配器218接收的供應(yīng)
請求而生成的各個供應(yīng)包的分發(fā)狀態(tài)。包表中的每一記錄可包括關(guān)于記錄標(biāo)識
(ID)、表示導(dǎo)致包被創(chuàng)建的作業(yè)的作業(yè)標(biāo)識(JobID)、包含在包內(nèi)的各種數(shù)據(jù) (Data)、描述自從特定計算設(shè)備接收最后一次包下載確認(rèn)以來將包傳遞給該特定 計算設(shè)備的次數(shù)的傳遞計數(shù)(DdiverCount)、以及表示包的處理階段的狀態(tài)(Status)
的信息。
配置表320可存儲表示服務(wù)器配置數(shù)據(jù)的所有名稱-值對、描述用于實現(xiàn)核心 數(shù)據(jù)庫212的服務(wù)器的數(shù)據(jù)。配置表320中的每一記錄可包括關(guān)于服務(wù)器名字空間 (NameSpace)、服務(wù)器名稱-值對的名稱(Name)和設(shè)定(Setting)的信息。
計算設(shè)備日志表322可將除與計算設(shè)備有關(guān)的作業(yè)以外的與計算設(shè)備有關(guān)的 各種活動記入日志。計算設(shè)備日志表322中的每一記錄可包括關(guān)于記錄標(biāo)識(ID)、 計算設(shè)備標(biāo)識(PCID)、計算設(shè)備類型(Type)、描述計算設(shè)備的數(shù)據(jù)(Data) 以及計算設(shè)備使用供應(yīng)服務(wù)模塊204登錄的時間(LogDate)等信息。例如,計算 設(shè)備的類型可以是程序引導(dǎo)記錄己創(chuàng)建類型、程序引導(dǎo)進行中類型、程序引導(dǎo)已完 成類型、程序引導(dǎo)超限類型(表示在未從計算設(shè)備接收確認(rèn)的情況下將超出指定個 數(shù)的證書傳遞給計算設(shè)備)、證書己請求類型、包已請求類型等。
類型表324可用于預(yù)定義由作業(yè)表316、計算設(shè)備日志表322和作業(yè)日志表 326使用的各種可枚舉類型。
作業(yè)日志表326可用于將與作業(yè)或包有關(guān)的各種活動記入日志,其中每一記 錄可包括各種信息,包括記錄標(biāo)識(ID)、作業(yè)標(biāo)識(JobID)、作業(yè)類型(Type)、 作業(yè)描述(Data)、作業(yè)被記入日志的時間(LogDate)等。
狀態(tài)表328可用于預(yù)定義引導(dǎo)表312、計算設(shè)備表314、作業(yè)表316和包表318 中所使用的各種可枚舉狀態(tài)。
分發(fā)數(shù)據(jù)庫模式
圖7示出可用于分發(fā)數(shù)據(jù)庫214的一種實現(xiàn)的分發(fā)數(shù)據(jù)庫模式340。分發(fā)數(shù)據(jù) 庫模式340可包括分發(fā)引導(dǎo)表342和分發(fā)包表344。分發(fā)數(shù)據(jù)庫模式340可使用所 有公知關(guān)系型數(shù)據(jù)庫軟件中的任一種來實現(xiàn),且分發(fā)數(shù)據(jù)庫模式340的各表可被存 儲在單個數(shù)據(jù)庫服務(wù)器上或存儲在經(jīng)由諸如網(wǎng)絡(luò)10的網(wǎng)絡(luò)彼此連接的分開的數(shù)據(jù) 庫服務(wù)器上。分發(fā)程序引導(dǎo)表(Bootstrap) 342可存儲由核心供應(yīng)服務(wù)206在計算設(shè)備的注 冊期間發(fā)布的引導(dǎo)數(shù)據(jù)。分發(fā)引導(dǎo)表342的每一記錄可包含各種信息,包括記錄標(biāo) 識(ID)、與特定計算設(shè)備有關(guān)的InitKey (InitKey)和該特定計算設(shè)備的硬件標(biāo) 識(HWID),且分發(fā)程序引導(dǎo)表342中的記錄可在該特定計算的程序引導(dǎo)完成時 由核心供應(yīng)服務(wù)206移除。
分發(fā)包表(Packet) 344可存儲由核心供應(yīng)服務(wù)206生成的包。分發(fā)包表344 中的每一記錄可對應(yīng)于特定的包且包括各種信息,包括記錄標(biāo)識(ID)、描述將 使用該特定包的計算設(shè)備的硬件標(biāo)識(HWID)、該特定包的包序列號
(S叫uenceNumber)、該特定包的內(nèi)容(Data)、指定在未接收確認(rèn)的情況下將該 特定包發(fā)送給客戶機設(shè)備的次數(shù)的傳遞計數(shù)(DeliveryCount)、以及指定分發(fā)服務(wù) 模塊208可嘗試將該特定包傳遞給客戶機設(shè)備的次數(shù)的最大傳遞計數(shù)
(MaxDdiveryCount)。當(dāng)特定包由客戶機計算設(shè)備成功下載時,與該特定包有關(guān) 的記錄可從分發(fā)包表344中移除。而且,如果特定包的傳遞計數(shù)大于最大傳遞計數(shù), 則與該特定包有關(guān)的記錄也可從分發(fā)包表344中移除。
本地供應(yīng)模塊
圖8示出LPM224的更詳細(xì)的框圖。LPM224是駐留在諸如計算設(shè)備202等 計算設(shè)備上的軟件供應(yīng)系統(tǒng)200的客戶機方組件。LPM 224可執(zhí)行各種功能,包 括使用由軟件供應(yīng)系統(tǒng)200供應(yīng)的服務(wù)來與計算設(shè)備的用戶交互、經(jīng)由網(wǎng)絡(luò)10與 分發(fā)服務(wù)模塊208交互等。
LPM 224可通過與客戶機計算設(shè)備202所使用的特定登錄程序交互來執(zhí)行將 特定狀態(tài)強加于客戶機計算設(shè)備202的功能。在其中客戶機設(shè)備使用Windows②產(chǎn) 品激活(WPA)系統(tǒng)作為登錄邏輯的一特定實現(xiàn)中,LPM224可與WPA交互以將 特定狀態(tài)強加于客戶機計算設(shè)備202。然而,在一替換實現(xiàn)中,LPM224可與任何 其它適當(dāng)?shù)牟僮飨到y(tǒng)登錄程序交互。LPM 224的實現(xiàn)在圖8中被描述為以軟件實 現(xiàn)且被構(gòu)成為鏈接到由WPA使用的登錄程序的庫的各種邏輯組件分組。然而,在 LPM 224的一個替換實現(xiàn)中,LPM 224的各種邏輯組件中的一個或多個可使用硬 件實現(xiàn)。
具體地,LPM 224可包括強制計算設(shè)備202以特定狀態(tài)操作的強制插件模塊 352、計量軟件供應(yīng)系統(tǒng)200所供應(yīng)的資源的使用的計量模塊354、使用由核心供 應(yīng)服務(wù)206提供的供應(yīng)包來進行事務(wù)的事務(wù)引擎356、為供應(yīng)包提供安全存儲的安全存儲管理器358、與核心供應(yīng)服務(wù)206通信的通信模塊360、以及與用戶交互的 用戶經(jīng)歷模塊362。
強制附件模塊352可被插入到計算設(shè)備202的登錄邏輯364內(nèi)。當(dāng)用戶使用 登錄邏輯364登錄到計算設(shè)備202上時,登錄邏輯364內(nèi)的強制插件模塊352可向 計量模塊354查詢供應(yīng)包的余額信息。如果強制插件模塊352確定計算設(shè)備202 具有足夠的供應(yīng)包,則它可允許登錄邏輯364以其正常例程操作并允許用戶登錄到 計算設(shè)備202上。然而,如果強制插件模塊352確定計算設(shè)備202不具有足夠的供 應(yīng)包,則它強制計算設(shè)備202進入停用狀態(tài)。在這樣的停用狀態(tài)中,向計算設(shè)備 202的用戶提供僅激活計算設(shè)備202所需的受限用戶界面。
計量模塊354可包括用于讀取并驗證可用于所供應(yīng)資源的使用的當(dāng)前余額、 更新當(dāng)前余額并用于處理供應(yīng)包的余額管理器366。計量模塊354還可包括配置管 理器368和用于維護始終增加的定時器的可靠時鐘管理器370??煽繒r鐘管理器370 可使用可靠硬件時鐘372來完成維護時鐘增加的定時器的任務(wù)。余額管理器366 和可靠時鐘管理器370對LPM 224的安全操作非常敏感且重要,從而它們在LPM 224的操作期間可能遭受各種安全攻擊。
強制插件模塊352和計量模塊354可一起工作來實現(xiàn)被供應(yīng)資源在計算設(shè)備 202上的激活和停用。強制插件模塊352可用作登錄邏輯364內(nèi)基于某些事件而喚 起余額管理器366的事件分派器,而余額管理器366可確定當(dāng)響應(yīng)于事件而被喚起 時要采取什么動作。可使強制插件模塊352激活余額管理器366的各種事件的示例 有(l)登錄事件,(2)系統(tǒng)解鎖事件,(3)從休眠中還原事件,(4)從待機中 喚醒事件,(5)用戶觸發(fā)事件,(6)注銷事件,(7)包下載,(8)報時,(10) 系統(tǒng)鎖定事件,(11)屏幕保護程序啟動事件,(12)屏幕保護程序停止事件等。 余額管理器366可接受事件作為輸入,并向強制插件模塊352返回結(jié)果動作。
例如,當(dāng)用戶登錄時,強制插件模塊352可向余額管理器366發(fā)送用戶登錄 事件。響應(yīng)于該用戶登錄事件,余額管理器366可査詢可用于使用所供應(yīng)的資源的 當(dāng)前余額,如果余額足夠,則余額管理器366可向強制插件模塊352返回登錄動作。 然而,如果余額不夠,則強制插件模塊352可使登錄邏輯364返回通知用戶界面 (UI) 398,其中通知UI允許用戶通過向供應(yīng)服務(wù)模塊204購買更多的供應(yīng)包來 增加余額以便激活計算設(shè)備202。
事務(wù)引擎356可處理供應(yīng)包以便更新余額管理器366中的余額和包消費計數(shù)。 事務(wù)引擎365可確保任何供應(yīng)包僅被消費一次以更新余額。事務(wù)引擎356可被設(shè)計成將余額和包消費計數(shù)一起更新,因此余額和包消費計數(shù)中的任一項均被更新或者 余額和包消費計數(shù)均未被更新?;蛘?,事務(wù)引擎356也可用于維護余額數(shù)據(jù)的一致
性,以確保余額數(shù)據(jù)不會被某些意外事件破壞。將在以下提供事務(wù)引擎356的運作
的示例。
在該示例中,假設(shè)用戶使用兩張預(yù)付卡來購買被供應(yīng)資源的使用時間,第一
張卡十小時,第二張卡二十小時。因為供應(yīng)服務(wù)模塊204不維護總余額,因此在供 應(yīng)服務(wù)模塊204處創(chuàng)建兩組分開的許可證信息, 一組為十小時,另一組為二十小時。 當(dāng)用戶聯(lián)系供應(yīng)服務(wù)模塊204以在計算設(shè)備202上下載供應(yīng)包時,下載到計算設(shè)備 202上的供應(yīng)包中的每一個具有唯一的供應(yīng)包號。當(dāng)事務(wù)引擎356處理第一個包時, 它增加包消費計數(shù)并使余額增加十小時,隨后當(dāng)事務(wù)引擎356處理第二個包時,它 再次增加包消費計數(shù)并使余額增加另外的二十小時。
安全存儲管理器358可允許LPM 224以安全方式來存儲余額數(shù)據(jù),使得余額 數(shù)據(jù)不可能被用戶篡改且使余額數(shù)據(jù)僅可由LPM224訪問。在由LPM224下載供 應(yīng)包之后,可將其存儲在安全存儲管理器358中。類似地,余額計數(shù)和包消費計數(shù) 也可被存儲在安全存儲管理器358中。在示出的實現(xiàn)中,安全存儲管理器358被實 現(xiàn)為動態(tài)鏈接庫(dll),使得用戶經(jīng)歷模塊362可訪問安全存儲管理器358。
為了確保安全存儲管理器358中所存儲的數(shù)據(jù)是安全的,可使用數(shù)據(jù)加密密 鑰來將數(shù)據(jù)存儲在安全存儲管理器358中,且僅有具有數(shù)據(jù)加密密鑰的模塊才能夠 從安全存儲管理器358中讀取數(shù)據(jù)。安全存儲管理器358可與本地安全授權(quán)機構(gòu) (LSA)子系統(tǒng)374通信以便與LSA數(shù)據(jù)庫376通信,與存儲驅(qū)動器378通信以 便與安全硬件存儲380通信,且與文件系統(tǒng)驅(qū)動程序382通信以便與計算設(shè)備202 上的文件384通信。為了增加安全性,安全存儲管理器358的替換實現(xiàn)也可使用存 儲在安全存儲管理器358中的數(shù)據(jù)的多個副本,使得每一副本可被交叉參考以確保 不存在對數(shù)據(jù)任何單個副本的篡改。盡管此處所述的LPM 224的實現(xiàn)具有以軟件 實現(xiàn)的安全存儲管理器358,但在替換實現(xiàn)中,安全存儲管理器358可使用硬件來 實現(xiàn)。
通信模塊360可包括向供應(yīng)服務(wù)模塊204請求供應(yīng)包和/或證書的包/證書請求 管理器386、向記帳系統(tǒng)216和/或向供應(yīng)服務(wù)模塊204購買更多供應(yīng)包的購買管理 器388、以及允許LPM224與網(wǎng)絡(luò)10通信的網(wǎng)絡(luò)服務(wù)通信管理器390。
包/證書請求管理器386可從用戶經(jīng)歷模塊362接收向供應(yīng)服務(wù)模塊請求包或 證書的請求。例如,當(dāng)用戶通過將InitKey輸入到UI內(nèi)來首次登錄客戶機設(shè)備時,用戶經(jīng)歷模塊362可將InitKey傳給包/證書請求管理器386,并且包/證書請求管理 器386可與供應(yīng)服務(wù)模塊204通信以便從供應(yīng)服務(wù)模塊204接收證書。包/證書請 求管理器386也可負(fù)責(zé)在成功下載證書或供應(yīng)包之后向供應(yīng)服務(wù)模塊204確認(rèn)。包 /證書請求管理器386可使用供應(yīng)協(xié)議來與供應(yīng)服務(wù)模塊204通信。由包/證書請求 管理器386下載的包可被存儲在安全存儲管理器358中。
購買管理器388可通過從計算設(shè)備202的用戶接收支付信息并將支付信息傳 輸給記帳系統(tǒng)216或供應(yīng)服務(wù)模塊204來允許該用戶購買更多的供應(yīng)包。包/證書 請求管理器386和購買管理器388都可使用web服務(wù)通信管理器390與網(wǎng)絡(luò)10通 信。web服務(wù)通信管理器可使用網(wǎng)絡(luò)服務(wù)管理器392和網(wǎng)絡(luò)接口卡(NIC) 394來 與網(wǎng)絡(luò)10通信。注意到在本實現(xiàn)中,使用web服務(wù)通信管理器390來與網(wǎng)絡(luò)10 通信,而在一替換實現(xiàn)中,可使用諸如文件傳輸協(xié)議(FTP)驅(qū)動程序等其它通信 工具來與網(wǎng)絡(luò)IO通信。
用戶經(jīng)歷模塊362可包括要求用戶輸入允許包/證書請求管理器386從供應(yīng)服 務(wù)模塊204下載證書的InitKey的激活用戶界面(UI) 396,以及允許LPM 224與 用戶交互的通知UI 398。例如,當(dāng)用戶為使用被供應(yīng)資源而購買了預(yù)付卡時,激 活UI 396可要求用戶輸入由預(yù)付卡提供的號碼并調(diào)用包/證書請求管理器386來下 載對應(yīng)于預(yù)付卡號的最新的供應(yīng)包。激活UI 396也可調(diào)用購買管理器388來允許 用戶購買更多的供應(yīng)包,且它可被設(shè)計成當(dāng)完成購買之后可自動調(diào)用包/證書請求 管理器386來下載對應(yīng)于購買的供應(yīng)包。
通知UI 398可包括允許用戶査詢當(dāng)前余額信息、使用歷史等的各種用戶界面。 通知UI 398可由用戶或登錄邏輯364調(diào)用。在其中可用于使用所供應(yīng)的資源的余 額較低的情況中,登錄邏輯364可調(diào)用通知UI 398來向用戶通知需要更多的購買。 通知UI可以是恒定活動的,且它可經(jīng)由任務(wù)欄圖標(biāo)、控制面板小程序、氣球彈出 框、或使用任何其它公知的UI方法來向用戶提供通知服務(wù)。
描述了軟件供應(yīng)系統(tǒng)200的各個組件之后,以下附圖9-12將更詳細(xì)描述軟件 供應(yīng)系統(tǒng)200的操作。
InitKey的注冊
圖9示出可用于向核心供應(yīng)服務(wù)206注冊InitKey的注冊程序430的流程圖。 在框432處,InitKey的提供者向核心供應(yīng)服務(wù)206發(fā)送InitKey注冊請求。如前所 述,提供者可以是記帳系統(tǒng)216,它可由第三方管理,諸如計算設(shè)備202的廠商、
20計算設(shè)備202的操作系統(tǒng)的使用的廠商、軟件供應(yīng)系統(tǒng)200的顧客服務(wù)代表(CSR)等。
InitKey注冊請求可在核心供應(yīng)服務(wù)206的消息隊列中接收。當(dāng)識別其消息隊 列中的InitKey注冊請求之后,在框434處,核心供應(yīng)服務(wù)206可啟動注冊過程。
在框436處,InitKey可被添加到核心數(shù)據(jù)庫212的程序引導(dǎo)表312中,且注 冊程序430可將引導(dǎo)狀態(tài)置為"已創(chuàng)建"。
隨后,在框438處,核心供應(yīng)服務(wù)206可將"程序引導(dǎo)已創(chuàng)建"消息記入計 算設(shè)備日志表322中。
最后,在框440處,核心供應(yīng)服務(wù)206可將分發(fā)數(shù)據(jù)庫214的消息隊列發(fā)送 "程序引導(dǎo)發(fā)布"消息。
包的生成
圖10示出可用于生成將由計算設(shè)備202的LPM 224使用的供應(yīng)包的包生成程 序450的流程圖。
在框452處,記帳適配器218可向核心供應(yīng)服務(wù)206發(fā)送對供應(yīng)包的供應(yīng)請 求消息。由于核心供應(yīng)服務(wù)206可連接至多個承保人,因此這樣的供應(yīng)請求消息在 將記帳適配器218連接至核心供應(yīng)服務(wù)206的MSMQ接口中排隊。
當(dāng)從記帳適配器218中檢索了供應(yīng)請求消息之后,在框454處,核心供應(yīng)服 務(wù)206可啟動包生成事務(wù)。
在框456處,核心供應(yīng)服務(wù)206可使用來自供應(yīng)請求消息的硬件標(biāo)識來將新 計算設(shè)備記錄添加到計算設(shè)備表314。然而,如果包含該硬件標(biāo)識的記錄已存在于 計算設(shè)備表314中,則可能不必添加新計算設(shè)備記錄。
隨后,在框458處,核心供應(yīng)服務(wù)206可向作業(yè)表316添加記錄對供應(yīng)包的 新作業(yè)請求的新作業(yè)記錄。核心供應(yīng)服務(wù)206可將新添加的作業(yè)記錄的狀態(tài)置為 "已創(chuàng)建"。在框460處,核心供應(yīng)服務(wù)206可將新記錄以及供應(yīng)請求消息的日期 和時間添加到作業(yè)日志表326中。
在框462處,核心供應(yīng)服務(wù)206可基于供應(yīng)請求消息來創(chuàng)建供應(yīng)包。包生成 可包括驗證供應(yīng)請求消息中所提供的證書、將使用時間量加給供應(yīng)包等。
在框464處,核心供應(yīng)服務(wù)206可與密鑰管理器292通信以便使用安全密鑰 簽署該供應(yīng)包,并創(chuàng)建基于XML的供應(yīng)包。
當(dāng)創(chuàng)建了供應(yīng)包之后,在框466處,核心供應(yīng)服務(wù)206可使計算設(shè)備表314中的最后序列號增l。
在框468處,核心供應(yīng)服務(wù)206可將新創(chuàng)建的供應(yīng)包插入到包表318內(nèi),并 將包表318中該供應(yīng)包的狀態(tài)置為"包已創(chuàng)建"。
隨后,在框370處,核心供應(yīng)服務(wù)206可將"包已創(chuàng)建"消息記入作業(yè)日志 表326中。最后,在框372處,核心供應(yīng)服務(wù)206可將"包發(fā)布"消息發(fā)送到分發(fā) 數(shù)據(jù)庫寫入器220的消息隊列內(nèi)以便將該包添加到分發(fā)數(shù)據(jù)庫214內(nèi)。
程序引導(dǎo)
圖11示出可用于向證書服務(wù)模塊210請求證書并將該證書發(fā)送給計算設(shè)備 202的引導(dǎo)程序500的流程圖。
在框502處,分發(fā)服務(wù)模塊208可從諸如計算設(shè)備202等計算設(shè)備接收證書 請求。證書請求可由包/證書請求管理器386生成,且可包括各種信息,包括計算 設(shè)備202的硬件標(biāo)識、InitKey等。
在框504處,核心供應(yīng)服務(wù)206可査找程序引導(dǎo)表312中的InitKey。在框506 處,核心供應(yīng)服務(wù)206可檢查計算設(shè)備表314來查看它是否包含證書請求中所提供 的硬件標(biāo)識的記錄。如果計算設(shè)備表314不存在這樣的記錄,則核心供應(yīng)服務(wù)206 可將一記錄添加到計算設(shè)備表314中。
在框508處,核心供應(yīng)服務(wù)206可將"計算設(shè)備已創(chuàng)建"消息記入到計算設(shè) 備日志表322中。隨后,在框510處,核心供應(yīng)服務(wù)206可開始處理證書請求事務(wù)。
在框512處,核心供應(yīng)服務(wù)206可檢查引導(dǎo)表312來查看傳遞計數(shù)是否大于 由配置表320指定的最大傳遞計數(shù),且如果情況如此,則它可將控制轉(zhuǎn)移給框524。
如果傳遞計數(shù)不大于最大傳遞計數(shù),則在框514處,核心供應(yīng)服務(wù)206可檢 査引導(dǎo)表312中的引導(dǎo)狀態(tài)。如果引導(dǎo)狀態(tài)不等于"已創(chuàng)建"或"進行中",則控 制可轉(zhuǎn)移給框524。
然而,如果引導(dǎo)狀態(tài)等于"已創(chuàng)建"或"進行中"的任一種,則在框516處, 核心供應(yīng)服務(wù)206可將引導(dǎo)表312中的引導(dǎo)狀態(tài)更新為"進行中"。
隨后,在框518處,核心供應(yīng)服務(wù)206可將"引導(dǎo)進行中"消息記入到計算 設(shè)備日志表322中。
在框520處,核心供應(yīng)服務(wù)206可調(diào)用證書實用程序來生成新的客戶機證書。 在從證書實用程序接收到新證書之后,在框522處,核心供應(yīng)服務(wù)206可將客戶機 證書發(fā)送到分發(fā)服務(wù)模塊208的消息隊列中,并將控制轉(zhuǎn)移給框530。在框524處,核心供應(yīng)服務(wù)206可將程序引導(dǎo)表312中的引導(dǎo)狀態(tài)更新為"超 限",因為程序引導(dǎo)表中的傳遞計數(shù)高于最大傳遞計數(shù)。"超限"狀態(tài)表示核心供 應(yīng)服務(wù)206未接收到響應(yīng)于已為計算設(shè)備202發(fā)布證書而從LPM 224中發(fā)出的適 當(dāng)確認(rèn)。從而,在框526處,核心供應(yīng)服務(wù)206可將"程序引導(dǎo)超限"消息記入到 計算設(shè)備日志表322中,表示未從請求證書的計算設(shè)備接收到確認(rèn)。
在框528處,核心供應(yīng)服務(wù)206可將"移除程序引導(dǎo)"消息發(fā)送到分發(fā)數(shù)據(jù) 庫寫入器220的消息隊列中以從分發(fā)數(shù)據(jù)庫214中移除引導(dǎo)記錄。
框530可在將證書發(fā)送給客戶機之后從框522接收控制,從而表示對證書請 求的處理的結(jié)束。
當(dāng)處理證書請求之后,在框532處,核心供應(yīng)服務(wù)206可接收分發(fā)服務(wù)模塊 208的消息隊列中的證書下載完成消息。這樣的證書下載完成消息可在成功下載證 書之后由LPM 224的包/證書請求管理器386發(fā)送。
當(dāng)接收證書下載完成消息之后,在框534處,核心供應(yīng)服務(wù)206可啟動程序 引導(dǎo)己完成事務(wù)。在框536處,核心供應(yīng)服務(wù)206可將程序引導(dǎo)表312中的程序引 導(dǎo)狀態(tài)更新為"已完成"。隨后,在框538處,核心供應(yīng)服務(wù)206可將"程序引導(dǎo) 已完成"消息記入到計算設(shè)備日志表322中,表示發(fā)送證書請求的計算設(shè)備的程序 引導(dǎo)處理已完成。
最后,在框540處,核心供應(yīng)服務(wù)206可將"移除程序引導(dǎo)"消息發(fā)送給分 發(fā)數(shù)據(jù)庫寫入器220的消息隊列中,以便從分發(fā)數(shù)據(jù)庫214的程序引導(dǎo)表342中移 除該程序引導(dǎo)記錄。
包分發(fā)
圖12示出可用于將來自核心供應(yīng)服務(wù)206的供應(yīng)包分發(fā)給諸如計算設(shè)備202 等各種計算設(shè)備的包分發(fā)程序550的流程圖。包分發(fā)程序550可由包/證書請求管 理器3S6、協(xié)助計算設(shè)備的用戶的顧客服務(wù)代表或以其它類似方式啟動。
在框522處,核心供應(yīng)服務(wù)206可接收分發(fā)服務(wù)模塊208的消息隊列中的包 下載消息。這樣的消息可例如由計算設(shè)備202的包/證書請求管理器386發(fā)送。在 接收包下載消息之后,在框554處,核心供應(yīng)服務(wù)206可啟動包請求事務(wù)。
在包請求事務(wù)開始處,在框556處,確認(rèn)服務(wù)209可確定包表318中的狀態(tài) 是否是"包超限",指示發(fā)送包下載消息的計算設(shè)備未確認(rèn)之前由核心供應(yīng)服務(wù) 206進行的包傳輸,控制被轉(zhuǎn)移給框564。如果確定包表318中的狀態(tài)不是"包超限",則在框558處,核心供應(yīng)服務(wù) 206可將包表318中的狀態(tài)更新為"傳遞進行中"。
隨后,在框560處,核心供應(yīng)服務(wù)206可將包表318中的傳遞計數(shù)更新為包 下載消息中所指定的值。例如,如果包下載消息向核心供應(yīng)服務(wù)206請求兩個包, 則包表318中的傳遞計數(shù)增2。在框562處,核心供應(yīng)服務(wù)206可將"包傳遞進行 中"消息記入到作業(yè)日志表326中。
由于未從計算設(shè)備得到確認(rèn),因此框564可接收控制,從而在框564處,核 心供應(yīng)服務(wù)206可將包表318中的狀態(tài)更新為"超限"。
在框566處,確認(rèn)服務(wù)209可將包表中的傳遞計數(shù)更新為包下載消息中所指 定的值,且在框568處,CPS將作業(yè)表316的狀態(tài)更新為"出錯"。最后,在框 570處,確認(rèn)服務(wù)209可將"包超限"消息記入到作業(yè)日志表326中。
在框572處,分發(fā)服務(wù)208可結(jié)束對包請求事務(wù)的處理,確認(rèn)服務(wù)209等待 來自請求包的計算設(shè)備的確認(rèn)。在框574處,確認(rèn)服務(wù)209可接收分發(fā)服務(wù)模塊 208的消息隊列中的包下載完成消息。包下載完成消息可在成功下載所請求的包之 后由包/證書請求管理器386發(fā)送。
當(dāng)接收到包下載完成消息之后,在框576處,確認(rèn)服務(wù)209可啟動包下載完 成事務(wù)。作為包下載完成事務(wù)的一部分,在框578處,確認(rèn)服務(wù)可將包表318中的 狀態(tài)更新為"已完成",并在框580處,將作業(yè)表中的狀態(tài)也更新為"已完成"。
此外,在框580處,核心供應(yīng)服務(wù)206可將"作業(yè)已完成"消息記入到作業(yè) 日志表326中,并在框582處結(jié)束包下載完成事務(wù)。
示出了軟件供應(yīng)系統(tǒng)200的各個組件的操作之后,以下圖13-16示出描述各個 條件下用戶經(jīng)歷的示例情形。
情形1——登錄期間的余額驗證
圖13示出描述LPM224操作期間的第一情形的流程圖600。具體地,流程圖 600示出用戶登錄至計算機的情形。如圖13中所示,在框602處,當(dāng)用戶試圖登 錄到計算設(shè)備202時,強制插件模塊352可向余額管理器366發(fā)送登錄事件。響應(yīng) 于該登錄事件,在框604處,余額管理器366可驗證可供在計算設(shè)備202上使用操 作系統(tǒng)而使用的余額。如果余額足夠,則在框606處,余額管理器366可通知登錄 邏輯364來以正常方式激活操作系統(tǒng)。
然而,如果余額管理器366確定余額不夠,則在框608處,余額管理器366可激活激活UI 396。激活該激活UI的目的在于允許用戶購買更多的使用時間。
在框610處,激活UI 396可激活購買管理器388,且用戶可進行購買。用戶 可通過連接至記帳系統(tǒng)216、通過呼叫顧客服務(wù)代表、或以任何其它所需方式進行 購買。隨后,在框612處,證書/包請求管理器368可下載供應(yīng)包。
證書/包請求管理器386可將所下載的供應(yīng)包提供給安全存儲管理器358用于 安全存儲。在框614處,余額管理器366可分析所下載的供應(yīng)包,并在框616處, 可據(jù)此增加計算設(shè)備202可用的供應(yīng)余額。
情形2——登錄后的使用購買
圖14示出描述LPM224操作期間的第二情形的流程圖620。具體地,流程圖 620描述了其中用戶己經(jīng)登錄到計算設(shè)備202上且用戶選擇控制面板小程序或任務(wù) 欄圖標(biāo)來激活余額管理器366的情形。
在框622處,用戶可激活控制面板小程序,這向余額管理器366發(fā)送一事件。 余額管理器366可向用戶顯示當(dāng)前余額信息,并調(diào)用激活UI 396,從而激活購買 管理器388。 一旦用戶購買了額外的時間之后,證書/包請求管理器386可下載供應(yīng) 包。
證書/包請求管理器386可將所下載的供應(yīng)包提供給安全存儲管理器358以便 安全存儲。在框628處,余額管理器366可分析所下載的供應(yīng)包,且在框630處, 可據(jù)此增加計算設(shè)備202可用的供應(yīng)余額。
情形3——登錄后的余額更新和通知
圖15示出描述LPM224的操作期間的第三情形的流程圖640。具體地,流程 圖640描述其中用戶已經(jīng)登錄到計算設(shè)備202上且登錄邏輯364作為來自可靠時鐘 管理器370的報時的結(jié)果接收到一事件的情形。
在框642處,登錄邏輯364可從可靠時鐘管理器370接收報時事件。作為結(jié) 果,登錄邏輯364可向余額管理器366發(fā)送報時事件。
響應(yīng)于報時事件,在框644處,余額管理器366可更新用于在計算設(shè)備202 上使用操作系統(tǒng)的可用余額。隨后,在框646處,余額管理器366檢查可用余額。 基于估算結(jié)果,在框648處,余額管理器366可采取適當(dāng)?shù)膭幼鳎@可以是例如激 活激活UI 396、注銷該用戶、繼續(xù)其它適當(dāng)?shù)膭幼鞯?。情?——計算設(shè)備停用
圖16示出描述LPM224操作期間的第四情形的流程圖600。具體地,流程圖 600描述了其中用戶已經(jīng)登錄到計算設(shè)備202上且登錄邏輯364作為來自可靠時鐘 管理器30的報時的結(jié)果接收一事件的情形。
在框622處,登錄邏輯364可從可靠時鐘管理器370接收報時事件。作為結(jié) 果,登錄邏輯364可向余額管理器366發(fā)送報時事件。
響應(yīng)于該報時事件,在框644處,余額管理器366可更新用于在計算設(shè)備202 上使用操作系統(tǒng)的可用余額。隨后,在框666處,余額管理器366可檢查可用余額。 基于估算結(jié)果,在框648處,余額管理器366可采取適當(dāng)?shù)膭幼?,這可以是例如激 活激活UI396、注銷該用戶、繼續(xù)其它適當(dāng)?shù)膭幼鞯取?br> 在該情況中,例如,余額管理器366發(fā)現(xiàn)計算設(shè)備202可用的余額等于或低 于閾值,諸如O。作為結(jié)果,在框668處,余額管理器366可使通知UI 398顯示 注銷消息,并最終注銷用戶使之不能在計算設(shè)備202上使用該操作系統(tǒng)。在替換情 況中,通知UI 398也可激活購買管理器388來允許用戶購買額外的使用時間。
情形5——登錄后的預(yù)付輸入
圖17示出描述LPM224操作期間的第五情形的流程圖680。具體地,流程圖 680描述了其中用戶己經(jīng)登錄到計算設(shè)備202上且用戶選擇控制面板小程序或任務(wù) 欄圖標(biāo)來激活激活向?qū)б员爿斎雭碜灶A(yù)付卡的信息的情形。這可能是當(dāng)用戶之前已 經(jīng)購買了預(yù)付卡并決定將可由預(yù)付卡獲得的使用時間加到他或她的帳戶時的情況。
在框682處,用戶可激活控制面板小程序,這向激活UI 396發(fā)送一事件以便 顯示激活向?qū)???上蛴脩麸@示的GUI窗口的一示例由圖18中的增加時間窗口 684 示出。用戶可選擇來自增加時間窗口 684的增加時間(Add Time)按鈕以便輸入 來自預(yù)付卡的信息。
隨后,在框686處,激活UI396可向用戶告知用戶能夠使用圖19中GUI688 所示的激活向?qū)璧母鞣N信息。
在框690處,激活UI 396可呈現(xiàn)如圖20中所示的網(wǎng)絡(luò)連接GUI692,該GUI 向用戶通知web服務(wù)通信管理器390正連接至因特網(wǎng)以便訪問核心供應(yīng)服務(wù)206。
隨后,在框694處,激活UI396可要求用戶輸入從預(yù)付使用卡接收到的密鑰。 預(yù)付卡上的密鑰可包括一串字母數(shù)字或其它字符。在該情況中,密鑰是25個字符 長的字母數(shù)字密鑰,如圖所示將被輸入到圖21的GUI 696中。當(dāng)接收到來自預(yù)付卡的密鑰之后,在框698處,激活UI 396可要求用戶登錄 至如由圖22的GUI 700所示的.順丁@系統(tǒng)中。注意到,并不總是需要用戶登錄 至.NET⑧系統(tǒng)。
隨后,在框702處,激活UI 396可從核心供應(yīng)服務(wù)206接收用戶的來自預(yù)付 卡的密鑰被接受且用戶帳戶應(yīng)增加相應(yīng)的時間量的確認(rèn)。通知時間增加成功的消息 由圖23的GUI704示出。
最后,在框706處,激活UI 396可向用戶通知用戶剛通過使用預(yù)付卡增加的 時間將在幾分鐘內(nèi)記入計算設(shè)備202中,如圖24的GUI 708所示。
盡管前述文本描述本發(fā)明的各種不同實施例的詳細(xì)描述,但應(yīng)理解,本發(fā)明 的范圍由本專利所附的權(quán)利要求書的文字定義。詳細(xì)描述應(yīng)被解釋為僅是示例性 的,而未描述本發(fā)明的每個可能的實施例,因為描述每個可能實施例即使不是不可 能也是不實際的。可使用當(dāng)前的技術(shù)或在本專利的提交日期之后開發(fā)的技術(shù)來實現(xiàn) 各種替換實施例,它們?nèi)耘f落入定義本發(fā)明的權(quán)利要求書的范圍之內(nèi)。
因此,可對此處所述和所示的技術(shù)和結(jié)構(gòu)作出多種修改和變更,而不背離本 發(fā)明的精神和范圍。從而,應(yīng)理解,此處所述的方法和裝置僅是說明性而不是對本 發(fā)明范圍的限制。
權(quán)利要求
1. 一種用于向計算機分發(fā)供應(yīng)包的方法,包括接收第一供應(yīng)包,所述供應(yīng)包具有與所述計算機相關(guān)聯(lián)的第一標(biāo)識符;將所述第一供應(yīng)包排隊;接收包括第二標(biāo)識符的包請求;以及當(dāng)所述第一標(biāo)識符與所述第二標(biāo)識符匹配時將所述供應(yīng)包發(fā)送給所述計算機。
2. 如權(quán)利要求l所述的方法,其特征在于,還包括 將所述供應(yīng)包對計算機的發(fā)送記入曰志。
3. 如權(quán)利要求l所述的方法,其特征在于,還包括接收對從所述計算機接收所述供應(yīng)包的確認(rèn)。
4. 如權(quán)利要求l所述的方法,其特征在于,還包括當(dāng)在接收到接收確認(rèn)之前包括所述第二標(biāo)識符的包請求的個數(shù)超出限制時將 所述供應(yīng)包出隊。
5. 如權(quán)利要求l所述的方法,其特征在于,還包括接收具有所述第一標(biāo)識符的第二供應(yīng)包;以及將所述第二供應(yīng)包排隊。
6. 如權(quán)利要求5所述的方法,其特征在于,還包括當(dāng)所述第一標(biāo)識符與所述第二標(biāo)識符匹配時,響應(yīng)于所述包請求將所述第二 供應(yīng)包與所述供應(yīng)包一起發(fā)送。
7. 如權(quán)利要求l所述的方法,其特征在于,還包括簽署所述供應(yīng)包。
8. 如權(quán)利要求1所述的方法,其特征在于,還包括對所述供應(yīng)包加密。
9. 一種其上存儲用于將供應(yīng)包分發(fā)給計算機的數(shù)據(jù)結(jié)構(gòu)的計算機可讀介質(zhì),所述數(shù)據(jù)結(jié)構(gòu)包括第一數(shù)據(jù)記錄,它包含表示所述計算機的硬件標(biāo)識符的數(shù)據(jù);第二數(shù)據(jù)記錄,它包含表示與所述供應(yīng)包的分發(fā)相關(guān)聯(lián)的事務(wù)的序列號的數(shù)據(jù);第三數(shù)據(jù)記錄,它包含表示所述供應(yīng)包的數(shù)據(jù);以及第四數(shù)據(jù)記錄,它包含表示將所述供應(yīng)包傳遞給所述計算機的未被確認(rèn)的嘗 試的次數(shù)的數(shù)據(jù)。
10. 如權(quán)利要求7所述的計算機可讀介質(zhì),其特征在于,所述第三數(shù)據(jù)記錄 包含經(jīng)簽署的數(shù)據(jù)。
11. 如權(quán)利要求7所述的計算機可讀介質(zhì),其特征在于,所述第三數(shù)據(jù)記錄 包含經(jīng)加密的數(shù)據(jù)。
12. 如權(quán)利要求7所述的計算機可讀介質(zhì),其特征在于,還包括第五數(shù)據(jù)記 錄,它包含表示所允許的未被確認(rèn)的傳遞嘗試的最大次數(shù)。
13. —種含有用于將供應(yīng)包傳遞給計算機的計算機可執(zhí)行模塊的計算機可讀 介質(zhì),所述計算機可執(zhí)行模塊包括-邏輯耦合至供應(yīng)包來源的數(shù)據(jù)庫寫入器,所述數(shù)據(jù)庫寫入器用于接收供應(yīng)包 并査明與所述供應(yīng)包相關(guān)聯(lián)的計算機標(biāo)識符;邏輯耦合至所述數(shù)據(jù)庫寫入器的分發(fā)數(shù)據(jù)庫,用于存儲所述供應(yīng)包直到傳遞;以及邏輯耦合至所述分發(fā)數(shù)據(jù)庫的分發(fā)服務(wù)模塊,用于處理對包傳遞的請求,其 中所述分發(fā)服務(wù)模塊接收對所述供應(yīng)包的請求、將來自所述請求的計算機標(biāo)識符與 所述供應(yīng)包的計算機標(biāo)識符進行匹配、從所述分發(fā)數(shù)據(jù)庫中檢索所述供應(yīng)包以及將 所述供應(yīng)包發(fā)送給所述計算機。
14. 如權(quán)利要求13所述的計算機可讀介質(zhì),其特征在于,還包括 用于從所述計算機接收確認(rèn)消息的確認(rèn)模塊。
15. 如權(quán)利要求14所述的計算機可讀介質(zhì),其特征在于,如果所述供應(yīng)包的未確認(rèn)的請求的個數(shù)超出限制,則所述確認(rèn)模塊刪除所述供應(yīng)包。
16. 如權(quán)利要求13所述的計算機可讀介質(zhì),其特征在于,所述分發(fā)數(shù)據(jù)庫存 儲具有相同計算機標(biāo)識符的多個供應(yīng)包。
17. 如權(quán)利要求13所述的計算機可讀介質(zhì),其特征在于,所述分發(fā)服務(wù)模塊 響應(yīng)于所述請求從所述隊列中檢索具有匹配計算機標(biāo)識符的所有供應(yīng)包并發(fā)送這 些供應(yīng)包。
18. 如權(quán)利要求13所述的計算機可讀介質(zhì),其特征在于,還包括負(fù)載管理模 塊,用于在繁忙使用情況下將對供應(yīng)包的請求路由給另一分發(fā)服務(wù)模塊。
19. 如權(quán)利要求13所述的計算機可讀介質(zhì),其特征在于,還包括用于加密所述供應(yīng)包的加密模塊。
20.如權(quán)利要求13所述的計算機可讀介質(zhì),其特征在于,還包括用于數(shù)字簽 署所述供應(yīng)包版本的簽名模塊。
全文摘要
一種軟件供應(yīng)方法和裝置使用供應(yīng)包傳遞機制,它含有數(shù)據(jù)庫、分發(fā)服務(wù)以及用于接收、排隊供應(yīng)包并確認(rèn)其對計算機的傳遞的確認(rèn)服務(wù)。當(dāng)未被確認(rèn)的傳遞請求的個數(shù)超出限制時,分發(fā)服務(wù)可從數(shù)據(jù)庫中移除供應(yīng)包以便例如限制服務(wù)拒絕攻擊。
文檔編號H04L9/32GK101416440SQ200580038745
公開日2009年4月22日 申請日期2005年11月12日 優(yōu)先權(quán)日2004年11月15日
發(fā)明者C·A·斯蒂伯, J·A·赫羅爾德, P·C·薩頓, 徐澤勇, 徐章煒 申請人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
西平县| 麦盖提县| 博白县| 海城市| 定州市| 永德县| 芜湖县| 禹州市| 阳谷县| 河北省| 敦煌市| 青州市| 宣武区| 潜江市| 合川市| 偏关县| 都昌县| 中方县| 道真| 图片| 金堂县| 莱阳市| 神池县| 旬阳县| 红安县| 抚远县| 宁乡县| 吉林省| 双柏县| 犍为县| 镇江市| 霍邱县| 黔东| 太仓市| 平邑县| 台前县| 南投县| 亚东县| 曲麻莱县| 册亨县| 睢宁县|