新四季網

用於生成健壯的軟體籤名的方法

2023-10-22 21:13:12 1

專利名稱:用於生成健壯的軟體籤名的方法
技術領域:
本發明涉及數據處理領域。更具體地,本發明涉及一種用於在分布式 數據處理系統上檢測軟體產品的存在的方法。具體而言,由本發明解決了籤名生成的行為。本發明進一步涉及一種用於執行所述方法的電腦程式, 以及一種包含所述程序的產品。而且,本發明還涉及一種對應的裝置。
背景技術:
一些系統管理軟體應用需要包含關於軟體產品的信息的全面知識庫的 可用性,所述軟體產品可以當前安裝並運行在多個數據處理系統上。例如,像IBM Tivoli License Manager( ITLM )的許可管理器產品需要知識庫(即 目錄)來標識在所管理系統上發現的產品,以及正確地計量這些產品的使 用並為其開帳單。通常,該知識庫採用包含軟體產品的定義(例如產品名 稱和版本)以及相關籤名的目錄的形式。軟體目錄列出了可在所管理系統 上找到的所有已知產品;每個產品可以由指示其正在運行的一個或多個可 執行模塊來標識。作為示例,在許可管理器產品的情形中,在後臺工作的 許可代理檢測已啟動的可執行模塊;許可代理接著通過軟體目錄來標識對 應產品。現今大量使用的一種用於獲得安裝在計算機系統上的軟體的清單 (inventory)的方法是運行一種清點應用,其嘗試用預定義的籤名與掃描 某些已知註冊表、文件系統或二者的結合的結果進行匹配。創建將在上述 過程中使用的籤名通常需要對將發現的產品的深入知識。實際上,依賴於 註冊表籤名可能導致假陽性,例如,當軟體產品的卸栽在註冊表中留下孤 立信息的時候。指定關鍵可執行產品的名稱和大小的文件籤名將極少產生假陽性。然而,因為下述因素,可以容易地生成假陰性,所述因素為可 以改變文件大小(更新)或使其不可預測(文件由靜態連結的首要庫所建 立,所述靜態連結的首要庫取決於其版本具有不同大小)。指定關鍵文件的大小(或校驗和)和名稱的產品籤名不會產生假陽性, 但是存在用於根據由每次新產品升級和補丁所引入的、對於該文件的大小 或校驗和的改變而保持產品籤名目錄(或知識庫)為最新的很高成本。在 實踐中,針對已經在領域中部署的籤名文件的每個變體,在目錄中必須存 在一個籤名。本發明的目的是提供一種減輕上述缺陷的方法和系統。 發明內容根據本發明,我們提供了一種用於生成產品籤名的方法,所述產品籤 名指示出相關聯軟體產品在多個數據處理系統上的存在,所述方法包括以 下步驟掃描所述多個數據處理系統的文件系統,以檢測文件集合的出現, 所述集合的每個指示出被安裝在數據處理系統上的產品;對於所述集合的 每個,收集註冊表信息的至少一個單元;確定關聯於軟體產品的對應產品 籤名,所述籤名包括指示出所述文件集合的基於文件部分和指示出註冊 表信息的至少一個單元的基於註冊表部分。本發明的另 一方面提供了 一種用於跨多個數據處理系統發現軟體產品 的方法。本發明的再一方面提供了 一種用於執行上述方法的計算積應序。 本發明的又一方面提供了 一種包含該程序的程序產品。 此外,本發明的另一方面提供了一種用於實現上述方法的對應裝置。 根據本發明的優選實施例,提供了一種用於針對軟體產品指定籤名的 方法,所述籤名不需要被更新以反映由針對該產品而發布的軟體更新和修 復所導致的改變。關鍵在於利用某些相關文件的存在(僅由其名稱和其相 對於公共安裝文件夾的相對路徑所標識)作為產品實例被安裝在所掃描系 統上的指示符。此信息當獨立使用時不足以確定所檢測實例的版本,因為具有相同名稱的文件可能在產品的不同發布(release)中為公共的。因此, 實例的版本從關聯於該實例的註冊表數據的值得出。在本發明的優選實施 例中,籤名的生成需要總是產品實例的一部分的核心文件集合的標識,而 不管在安裝期間指定的選項。此標識基於對從其中安裝了軟體產品的計算 機的典型樣本收穫(harvest)的信息的自動化分析。根據本發明,單一籤 名可以檢測對應於不同版本或發布的相同產品。因此,所提出的類型的一 個籤名在軟體知識庫中通常關聯於若干產品-版本定義。在本發明的優選實 施例中,對應於所檢測的特定實例的產品版本從所指定的註冊表鍵獲得, 所述註冊表鍵的值需要在所掃描的計算機上獲得。公共安裝文件夾的絕對 路徑名(位置)通常也從關聯於同一產品實例的註冊表數據獲得,相對於 所述公共安裝文件夾,籤名文件的所有相對路徑被指定。在此情形中,搜 索匹配實例的過程將是"即時的",因為將不需要對文件系統的完全掃描, 而是僅需要對於具有指定名稱和相對路徑的文件集合實際上在該位置下確 實存在的發江。某些產品可能不需要將其版本和安裝路徑信息註冊到平臺 軟體註冊表上,以便成為可運行的。當通過已提出的籤名搜索非已註冊軟 件實例時,基於來自對文件系統的完全掃描的數據,籤名規範的基於文件 部分仍可以匹配,即,僅僅籤名的"即時性"特徵丟失。在此情形中,籤 名將不會返回所檢測實例的版本的值,於是僅可以基於軟體知識庫中的相 關聯產品-版本定義來確定針對此屬性的可能值的範圍。在所附權利要求中闡述了被確認是新穎特徵的本發明的特性。然而, 通過參考將結合附圖閱讀的以下詳細描述,將最佳地理解本發明本身及其 這些和其它相關目的和優點。


圖l是其中可應用本發明的方法的數據處理系統的示意性框圖;圖2示出了系統的通用計算機的功能塊;圖3描述了可以用於實踐方法的主要組件;以及圖4示出了描述與方法的示意性實現相關的動作流的圖。
具體實施方式
具體參考圖1,描述了實現軟體清單應用的、具有分布式體系結構的數據處理系統100。系統100包括多個端點105,其被分組為多個集合。端 點105可以是工作站、伺服器、膝上型計算機、以及更廣泛地是其中安裝 了多個軟體產品的任意類型的教:據處理系統。端點105通過網絡110 (例 如LAN)彼此連接。端點105的不同集合通過網絡120 (例如基於網際網路) 與系統管理伺服器115通信;系統管理伺服器115實現了中央儲存庫,其 中系統100的清單數據被收集和管理。如上所述,本發明可以在許可管理 系統中實現,但更廣泛地可以在需要清點動作的任意系統中實現,所述系 統例如,需要在已清點了每個工作站的當前狀態之後將修復或增強分布到 多個工作站的軟體部署系統;另一種可能的使用是在配置管理系統中。如圖2所示,通過150示出了系統的通用計算機(工作站、本地Ji良務 器、或者系統管理伺服器)。計算機150由並行連接於系統總線153的若 幹單元組成。詳細地, 一個或多個微處理器(uP) 156控制計算機150的 操作;RAM 159被孩吏處理器156直接用作為工作存儲器,以及ROM 162 存儲用於計算機150的自展的基本代碼。外圍單元在本地總線165附近聚 集(通過各個接口 )。具體地,海量存儲器包括硬碟168和用於讀取CD-ROM 174的驅動器171。此外,計算機150包括輸入設備177 (例如鍵盤和滑鼠) 以及輸出設備180 (例如監視器和印表機)。網絡接口卡(NIC) 183用於 將計算機150連接到網絡。橋單元186將系統總線153與本地總線165接 合。每個微處理器156和橋單元186可以作為主代理運行,所述主代理請 求對系統總線153的訪問以傳送信息。判優器189管理對於系統總線153 的互斥訪問的授^又。如果系統具有不同拓樸或者其基於其它網絡,類似的考慮也可以應用。 可替換地,計算^L具有不同結構,包括等價單元,或者包括其它數據處理 實體(諸如PDA、行動電話等)。在任意情形中,本發明的方案同樣適用 於其中對工作站的控制被分歉的系統中,或者甚至適用於單獨計算機中。現在考慮圖3,通過300總體上描述了可用於實施本發明的優選實施 例的方法的主要組件。信息(程序和數據)典型被存儲在不同計算機的硬 盤上,並當程序正在運行時被(至少部分地)加載到相應的工作存儲器中。系統管理伺服器115控制和執行對通信網絡所連接的若干端點105的 管理操作。端點105的集合包括伺服器、工作站、臺式計算機或膝上型計 算機,它們的已安裝軟體根據擴大產品定義和相關籤名的可用庫的目的而 被分析。系統管理伺服器115控制對互連的端點105的可能很大的集合的管理 操作,由此避免了物理上訪問每個計算機的需要。此伺服器和底層的系統 管理基礎設施被用於根據收集由分析應用所需的原始數據的目的而執行對 所管理計算機的掃描操作;以及用於將掃描器在本地生成的數據移動到中 央文件伺服器301,其中這些數據可以被存儲在伺服器的文件系統上。掃 描操作可以在所有已管理端點105上或在特定子集上執行,後者可能由它 們的角色(伺服器、工作站、臺式計算機或膝上型計算機)或者由運行的 作業系統所確定。根據本發明的優選實施例,通過使用IBM的Software Signature Analyzer Tool實現上述數據收集方法;但是,本領域技術人員可以理解, 產生類似結果的其它方法可以作為替代被使用。本發明目的是使用所收集 的信息來產生健壯籤名,其避免了現有技術的缺陷。如上所述,健壯籤名 不需要被更新以反映由針對相關聯產品而發布的軟體更新和修復所導致的 改變,同時它仍舊避免了 "假陽性"和"假陰性,,。從所選擇的計算機收 獲的數據存儲在中央文件伺服器的文件系統中,通過所述中央文件伺服器 的文件系統,數據可以被分析應用303訪問。分析應用303實現了導致新 產品定義和相關籤名的創建的數據轉換和分析。分析應用303支持足跡(多個文件組)的標識,所述足i^示軟體產 品的已安裝實例。每個足跡需要關聯於產品定義,所述產品定義通常可以 從所收穫的數據自動得出,或者可以由應用通過用戶輸入所生成。分析應 用303將如上所述收集的數據與作業系統註冊表305中包含的註冊表信息相結合。該已結合的產品定義和相關籤名接著被生成以及存儲在軟體知識庫307中。軟體知識庫307是保存整理後的產品定義和籤名的集合的數據 庫。資料庫最初可以是空的,或者它可以用由軟體籤名的提供者所創建的 數據來填充。由分析應用產生的新定義在此資料庫中進行整理。 籤名定義基於包括文件信息和註冊表信息的可用信息被生成。 在所述過程的第一階段中,籤名的基於文件部分被構建。 文件名稱以及它們相對於公共父文件夾的路徑從產品的重構足跡的內 容中獲得,每個足跡表示通過其可選文件已經被過濾掉的產品安裝樹的 文件夾。產品安裝樹通常包括在公共根下的多個文件夾,因此它可以由一 組若干足跡所表示。有時,在產品樹中的整個文件夾的存在可以是可選的。 這將由相對於其父文件夾的較少數量的實例所展現,因此對應於可選文件 夾的足跡被清除。此過程產生了針對產品的給定版本-發布 (version-release )級的"核心"文件集合的標識。通過比較對應於相同版 本的足跡的內容以及相同產品的不同發布級,其名稱出現在所有對應足跡 中的文件可以被認為是適合於標識該版本的已安裝實例,而不管發布級。 理想地,將試圖建立覆蓋所有可能的發布級的單一籤名。不過,可能出現 的是對於任意發布為公共的文件僅是所有文件的一小部分,在此情形中, 可能必須創建跨發布子集的兩個或多個同類文件組。進行劃分的另 一原因 在於,萬一在從一個發布到另一發布時,給定足跡在安裝樹中具有不同位 置,從而相對路徑無法被唯一地分配到其針對所有發布的文件。 在所述過程的第二階段中,籤名的基於註冊表部分被構建。 所收穫的信息包括與所安裝產品相關的以及與文件信息相關的註冊表 數據。註冊表數據可以與產品文件信息相關聯的方式取決於在被收穫的計 算機上運行的作業系統的特性。該關聯容易地在大多數UNIX作業系統上 實現,其中平臺註冊表支持關於關聯於已註冊產品的文件的查詢。在其它 平臺上,應用在平臺註冊表中註冊每個實例的重要屬性(比如安裝位置和 版本)是常見的。不幸的是,這些平臺不提供查詢關於關聯於產品的文件 的註冊表的標準形式。不過,所收穫的信息可包括來自其它源的數據,即,由軟體安裝者在安裝者特定註冊表中創建的註冊表條目。如果安裝路徑是 由安裝者註冊的信息的一部分,則註冊表條目可以與對應的已安裝實例相 關。可替換地,如果沒有適當的註冊表源與所收穫的數據中的已安裝實例 相關,則註冊表信息可由用戶輸入。在任一情形中,在此階段中創建的籤 名信息必須足以用於支持對指定軟體註冊表的查詢,所述軟體註冊表由籤 名評估器所實現,其返回已安裝實例的版本。籤名的基於註冊表部分還包 括註冊表查詢的規範,其返回已安裝實例的安裝位置。此信息的存在允許 評估器執行對籤名的基於文件部分的"即時"^i,而無需對文件系統的 完全掃描。現在考慮圖4,通過方法400表示了根據本發明實施例的生成產品籤 名的邏輯流。所述方法開始於黑色開始圏401。繼續到框403,在全部端點 105中收集數據。在步驟405,所獲得的數據接著被分析,並且在步驟407 核心文件集合被標識。該核心集合表示相關的軟體產品。除非產品定義已 經存在(步驟409 ),否則基於註冊表的信息被獲得(步驟411)並與基於 文件的信息(以上獲得的核心集合)相結合用於產品籤名的生成(步驟 413)。所述過^f呈在黑圏415結束。如果程序和數據以不同方式構成,如果其它模塊或功能被提供,或者 如果信息被存儲在等價的存儲器結構中,類似的考慮也可以應用。如果所述方法包括等價或附加步驟,類似的考慮也可以應用。可替換地,例如,同樣取決於其上安裝了系統的作業系統,獲得關於 所檢查的端點的信息的不同方法可以被 使用。儘管以上已經具體參考本發明優選實施例在某種程度上描述了本發 明,應該理解,在形式和細節上的多種改變以及其它實施例是可能的。具 體地,以下是明確地打算的基本上以相同方式執行相同功能從而實現相 同結果的那些單元和/或方法步驟的組合處於本發明的範圍中。在任意情形中,本發明的方法可以用於發現、清點、或計量任意類型 的軟體產品(諸如視頻遊戲、多媒體工作等)。此外,所述程序可以被分布在任意其它計算機可讀々某體(諸如一個或多個DVD)上;可替換地,所述程序^皮預先加載到硬碟上、被傳送到計算 機、被廣播、或者更廣泛地被用可被直接加栽到計算機的工作存儲器中的 任意其它形式提供。此外,對於本領域技術人員將很明顯,提供進一步優勢的附加特徵並 非執行本發明所必需的,並且可以被忽略或用不同特徵來替換。在任意情形中,根據本發明的方法同樣適用於通過硬體結構而執行(例 如,集成到半導體材料的晶片中),或者通過軟體和硬體的結合而執行。無疑,為了滿足本地和特定需求,本領域技術人員可以將許多修改和 變體應用於上述方案,然而,所有這些修改和變體被包括在由以下權利要 求所限定的本發明的保護範圍中。
權利要求
1.一種用於生成產品籤名的方法,所述產品籤名指示出相關聯軟體產品在多個數據處理系統上的存在,所述方法包括以下步驟掃描所述多個數據處理系統的文件系統,以檢測文件集合的出現,所述集合的每個指示出被安裝在數據處理系統上的產品;對於所述集合的每個,收集註冊表信息的至少一個單元;確定關聯於軟體產品的對應產品籤名,所述籤名包括指示出所述文件集合的基於文件部分和指示出註冊表信息的至少一個單元的基於註冊表部分。
2. 根椐權利要求l所述的方法,其中所述註冊表信息的至少一個單元 從對應的文件集合的至少 一個文件中得出。
3. 根據任一前述權利要求所述的方法,其中所述掃描和檢測行為包括 以下步驟在所述多個數據處理系統上標識多個可執行文件; 創建包含所述多個已標識可執行文件的列表; 在所述列表上選擇至少一個文件;對於每個所選擇文件,創建足跡集合,所述足跡集合包括在包含所選 擇文件的所有文件夾中出現的文件。
4. 根據權利要求3所述的方法,進一步包括以下步驟 根據每個文件的出現數量對所述列表排序;從具有最高出現的文件開始,在所述列表上選擇一個文件,直到所述 列表被掃描完,並且對於每個所選擇的文件創建足跡集合,所述足跡集合包括在包含所選擇文件的所有文件 夾中出現的文件;從所迷已排序列表中刪除被包括在所述足跡中的所有文件。
5. 根據任一前述權利要求所述的方法,其中所述產品籤名的基於文件 部分包括所述文件集合的文件名稱和相對於公共父文件夾的路徑。
6. 根據任一權利要求所述的方法,其中收集註冊表信息的至少一個單 元的所述步驟包括根據對應的文件集合的至少一個文件查詢作業系統注 冊表。
7. 根據任一權利要求所述的方法,其中所述籤名與軟體產品標識符的 關聯是基於由在對應的文件集合中包括的文件所提取的信息。
8. —種用於跨多個數據處理系統發現軟體產品的方法,其使用根據任 一前述權利要求所述的方法。
9. 一種計算枳4呈序,用於當所述電腦程式在數據處理系統上執行時, 執行根據任一前述權利要求所述的方法。
10. —種系統,包括用於執行根據權利要求1-8中的任一項所述的方 法步驟的裝置。
全文摘要
提出了一種用於在多個計算機上發現軟體產品的方法和對應的裝置。所述發現系統的目的是在沒有管理員的手動幹預的情況下填充軟體目錄。本發明減少了產生和維護全面知識庫(目錄)的成本,所述知識庫包含軟體產品的定義和相關籤名。籤名定義結合了從數據收集過程獲得的信息以及在註冊表中包含的信息。此結合允許健壯籤名的創建,所述健壯籤名很大程度地降低了「假陽性」和「假陰性」結果的可能性。
文檔編號G06F9/445GK101405696SQ200780010137
公開日2009年4月8日 申請日期2007年2月1日 優先權日2006年4月20日
發明者A·卡波馬西, A·泰倫茲, L·皮克逖, M·維塔萊蒂, R·甘傑米 申請人:國際商業機器公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀