存儲和訪問在操作系統無關的存儲裝置中的許可信息的制作方法
【技術領域】
[0001] 本公開通常涉及引導軟件應用的操作的許可信息的存儲和利用。更具體地但不是 作為限制,本公開涉及用于將許可信息存儲在設備的安全位置中的技術,其中在所述設備 上安裝了所述軟件應用。
【背景技術】
[0002] 如本領域中的技術人員所公知的,軟件許可和激活操作依賴于用于管理軟件應用 的操作的許可信息的安全存儲裝置。現有的許可方案將許可信息存儲在由計算機的操作系 統管理的可尋址硬盤空間中。這樣的許可信息可以包括用戶購買的軟件應用的級別(例 如,專業人員、初學者等)、軟件應用的有效期限、軟件向應用的提供者激活/注冊的指示、 或引導應用的操作的其它數據。這些現有的技術允許軟件開發者基于由用戶所獲取的許可 來實現不同的功能(即,公共程序代碼的功能是由許可信息所引導的)。然而,在可尋址硬 盤空間內的許可信息的存儲使許可信息易受可以明顯影響授權軟件的操作的其它應用和/ 或用戶的危害和操縱。將許可信息存儲在更安全的免受危害或操縱的本地存儲位置中將是 有益的。
【附圖說明】
[0003] 圖1是示出了根據一個實施例的設備和管理服務器的框圖。
[0004] 圖2是示出了根據一個實施例的許可信息供應過程的流程圖。
[0005] 圖3是示出了根據一個實施例的許可信息利用過程的流程圖。
[0006] 圖4是示出了根據一個實施例的在用戶設備、管理服務器和軟件提供者之間的信 息的交換的通信流程圖。
[0007] 圖5是根據一個實施例的舉例示出性的電子設備的框圖。
【具體實施方式】
[0008] 本公開涉及在操作系統無關的存儲裝置中的許可信息的存儲和使用。通常,公開 了用于將許可信息寫到操作系統無關的存儲裝置并且稍后訪問該存儲裝置以確定所請求 的任務是否是由有效的許可支持的技術。
[0009] 在下面的描述中,出于解釋的目的,闡述了很多具體的細節,以便提供對創造性概 念的徹底理解。作為這個描述的部分,本公開的附圖中的一些以框圖的形式表示結構和設 備,以便避免使本發明的實施例難以理解。為了清楚起見,不是實際實現的所有特征都在本 說明書中進行了描述。而且,在本公開中使用的語言主要是被選擇用于可讀性和教學目的, 并且可以不被選擇來描繪或限制創造性主題、必需借助于權利要求來確定這樣的創造性主 題。在本公開中對"一個實施例"或對"實施例"的提及意味著關于該實施例描述的特定的 特征、結構或特性包括在本發明的至少一個實施例中,并且對"一個實施例"或"實施例"的 多次提及不應被理解為必須都指同一實施例。
[0010] 將認識到,在任何實際實現的開發中(正如在任何開發項目中),必須做出很多決 定以達到開發者的特定目標(例如,與系統相關和商業相關的約束相兼容),并且這些目標 將從一個實現改變到另一實現。也將認識到,這樣的開發努力可能是復雜的和耗時的,但依 然是受益于本公開的在本領域中的普通技術人員的例行任務。
[0011] 參考圖1,設備100包括應用層100A、操作系統層100B、和硬件層100C。應用層 100A可以包括用戶級應用軟件,例如,應用130。應用130可以是具有需要許可證以便運 行的某些特征任何類型的軟件應用,例如,字處理、財務計劃、電子數據表、防病毒程序等。 用于應用130的每一次安裝的程序代碼可以是相同的(例如,可以包括應用130的全部功 能),但應用130的某些特征可能需要通過獲得許可證來"解鎖"以利用特征。如本領域中 的技術人員已知的,設備100的操作系統可以存在于操作系統層100B中,并且可以管理硬 件層100C的部分,并且向應用層100A中的應用提供公共功能。硬件層100C可以包括形成 設備100的物理部件。例如,硬件層100C可以包括一個或多個中央處理單元(CPU),每一個 CPU具有一個或多個核心、一個或多個存儲器設備、外圍設備等。特別與本公開相關的是,硬 件層100C可以包括管理固件140。管理固件140可以位于與設備100的處理設備相關聯的 芯片組中的微控制器內,并且可以提供用于管理設備100的基于硬件的功能。這樣的功能 可以例如由包括Inters動管理技術的芯片組提供。(INTEL是英特爾公司的注冊商標。)
[0012] 在所示的實施例中,管理固件140包括操作系統無關的存儲裝置145。如在本文中 所使用的,操作系統無關的存儲裝置指未通過設備的操作系統安裝的存儲裝置。因此,操作 系統無關的存儲裝置145不是設備100的文件系統的部分。在一個實施例中,操作系統無 關的存儲裝置145可以包括非易失性存儲裝置。例如,操作系統無關的存儲裝置可以包括 閃存。在一個實施例中,操作系統無關的存儲裝置145可以集成在用于控制設備100的處 理設備內。
[0013] 在一個實施例中,可以分配操作系統無關的存儲裝置145,使得針對某些應用保留 各個部分。例如,部分145A可以被分配給應用130。相應地,部分145A可以只由應用130 或應用130所授權的其它應用利用(例如,寫到其中或從中讀取)。在所分配的部分145A 內,應用130可以存儲與各種應用特征(例如,特征A、B、C和D)有關的許可數據。在一個 實施例中,許可數據可以包括特定的特征是否被啟用的簡單指示(例如,單個位)、特征的 到期日、席位許可證的席位的數量等。因此,專用于特定的特征的存儲空間的量在尺寸上可 以不同。雖然從與單個應用的特定特征相關聯的許可數據方面描述了部分145A,但是在另 一實施例中,操作系統無關的存儲裝置145的一部分可以被分配給管理代表了多個附加的 應用的許可數據的應用。
[0014] 如將在下面更詳細描述的,操作系統無關的存儲裝置145可以經由管理固件接口 155可訪問在設備100上運行的某些應用。管理固件接口 155可以用作允許應用訪問操作 系統無關的存儲裝置145的設備驅動器。因此,應用軟件可以包括程序代碼,所述程序代碼 用于使應用訪問操作系統無關的存儲裝置145,以確定某個應用功能是否是由當前的許可 支持的。操作系統無關的存儲裝置145也可以經由通信驅動器150可訪問某些遠程設備。 通信驅動器150可以與網絡接口控制器135進行交互,以便于經由網絡180例如與管理服 務器185進行通信。如將在下面更詳細描述的,當設備100 (并且因此通信驅動器105)不 在活動狀態時,通信驅動器150在管理固件140內的位置能夠進行通信。
[0015] 管理服務器185可以具有存在于其上的數據存儲庫195,數據存儲庫195使各種 特征和/或應用的許可信息與屬于與許可證相關聯的用戶信息相關聯。在示出的實施例 中,數據存儲庫195包括用于多個用戶(例如,用戶E、F、G、H和I)的應用130的特征的到 期日許可信息。在數據存儲庫195中輸入的數據可以指示當前許可證對于所指定的特征到 期的日期,而"一"的條目可以指示對于所指定的特征不存在許可證。到期日許可信息可以 由應用軟件(例如,通過訪問在操作系統無關的存儲裝置145中的信息)利用來確定某個 功能是否應被啟用。例如,用戶可以購買在某個時間段(例如,一年)期間有效的應用或應 用特征的許可證。當用戶試圖利用被許可的應用或特征時,應用軟件可以比較當前日期與 所存儲的到期日,以確定功能在當前許可證下是否是可用的。以這種方式,應用功能可以在 許可證的期限期間被啟用,并且在許可證到期之后被阻止。雖然圖1描繪了在數據存儲庫 195中的到期日許可信息,但是應當理解,很多附加類型的許可信息可以被用來控制對軟件 應用的操作。例如,許可信息可以指示被啟用的特征、限定特定應用的最大數據傳輸速率、 限定共享資源的用戶的最大數量等。
[0016] 如下面更詳細描述的,當用戶購買或升級軟件許可證時,包含在數據存儲庫195 中的許可信息可以由軟件提供者(或銷售方)傳遞到管理服務器185。繼而,可以經由網絡 接口控制器19