[發(fā)明專利]一種unix操作系統(tǒng)中逆向查找包被依賴的方法有效
| 申請?zhí)枺?/td> | 201010139190.7 | 申請日: | 2010-04-06 |
| 公開(公告)號: | CN101826103A | 公開(公告)日: | 2010-09-08 |
| 發(fā)明(設(shè)計(jì))人: | 李開君 | 申請(專利權(quán))人: | 山東高效能服務(wù)器和存儲研究院 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 250014 山*** | 國省代碼: | 山東;37 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 unix 操作系統(tǒng) 逆向 查找 包被 依賴 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明是一種在類unix操作系統(tǒng)里面查找包和包相互依賴,查找包被依賴的 技術(shù)。具體描述為:在系統(tǒng)的包庫環(huán)境下,根據(jù)包的特殊描述文件,分析包的組 織結(jié)構(gòu),在包庫組成的有限圖集里按照一定的算法查找包被依賴的方法。
技術(shù)背景
隨著solaris系統(tǒng)的普及程度不斷加深,使用和開發(fā)solaris的群體越來越大, 應(yīng)用范圍和研究也多元化。系統(tǒng)開發(fā)和使用過程中經(jīng)常會遇到一些情況:1)用戶 刪除了某包之后,導(dǎo)致其他的功能不能運(yùn)行,提示系統(tǒng)缺少某個庫文件或者連接 文件,但是刪除它之前,又不能清晰的找出哪些功能包依賴它;2)系統(tǒng)過于龐大, 系統(tǒng)運(yùn)行相當(dāng)耗費(fèi)軟硬件資源,某方面的應(yīng)用,系統(tǒng)性能不佳;3)對于一個開發(fā) 者或者普通使用者,過于復(fù)雜的開發(fā)環(huán)境或者很多娛樂等功能都是不需要的;4) 從事系統(tǒng)裁減方面的開發(fā)者對包的多少和大小會非常在意,他們非常關(guān)心的是, 一個不需要的包能否最終從操作系統(tǒng)中刪除;5)開發(fā)過程中,新安裝的某個關(guān)鍵 的腳本程序不能運(yùn)行。這種情況不管是linux的系統(tǒng)還是unix系統(tǒng)都存在。
Linux下的rpm工具,只能知道某個文件包依賴其他哪些包;在刪除包的時候 會不斷提示它被其他包依賴。也就是A包被B、C包文件依賴,如果需要刪除應(yīng)用 包A,需要首先刪除B、C之后再刪除A包。Unix下的pkg工具也是如此。兩種包 管理工具都面臨同一個問題:刪除這個包的時候,可能會提示還有其他的包依賴 這個包。不斷手動刪除依賴它的包。非常耗費(fèi)精力,效率非常低,而且不能保證 系統(tǒng)刪除之后,功能的完整性。
本專利通過系統(tǒng)的包庫和包本身的基本特性,可以理順系統(tǒng)中包的相互關(guān)系, 可以查看包在系統(tǒng)中被其他哪些包所依賴。方便用戶和開發(fā)者對包有一個整理把 握,輕松的定制化系統(tǒng)。
發(fā)明內(nèi)容
本發(fā)明是利用系統(tǒng)上現(xiàn)有的包庫基礎(chǔ),通過對系統(tǒng)中包的組織結(jié)構(gòu)分析,在 有限圖集的基礎(chǔ)上循環(huán)遍歷所有包。理順包和包之間的關(guān)系,查找到包之間的系 統(tǒng)依賴和被依賴的關(guān)系。在包倉庫IPS的基礎(chǔ)上,查找同一個版本中所有包的相 互依賴關(guān)系,根據(jù)包的依賴關(guān)系,有效的對系統(tǒng)進(jìn)行輕松的定制化工作,整個包 的逆向查找包括:1)包倉庫技術(shù)IPS,2)包組織技術(shù),3)逆向查找包的方法,其中:
1)包倉庫技術(shù)IPS,是包管理技術(shù)中的重要部分,它將所有的功能包按照一定 的規(guī)則組織起來,按照發(fā)布版本,組成一個集合;發(fā)布到網(wǎng)上服務(wù)器,供所有的 開發(fā)者和應(yīng)用者使用,客戶端裝有相應(yīng)的客戶端工具,用戶通過網(wǎng)絡(luò)訪問IPS,進(jìn) 行一些操作,包括包的安裝,卸載,升級,查看包的描述特性,特性包含:包安 裝到哪個目錄,安裝后的名稱,需要系統(tǒng)的哪些依賴文件;
2)包組織技術(shù),opensolaris下包是以文件夾的方式組織起來的:所有的功能 文件和描述文件都在同一個文件目錄下,文件目錄名稱也就是包的名稱,這是包 組織結(jié)構(gòu)的特點(diǎn),文件夾下面包含包功能的二進(jìn)制文件,源碼文件,描述文件信息;
3)逆向查找方法,利用包的組織結(jié)構(gòu)特殊性,并且利用包在一個版本的IPS 系統(tǒng)中的集合性,找到系統(tǒng)中的功能包被其他哪些包依賴,包的描述文件中的關(guān) 鍵描述詞記錄著包的依賴特性,通過逆向遍歷描述集,記錄包的依賴關(guān)系。
具體步驟內(nèi)容如下:
1)包在系統(tǒng)框架下組成一個有限集合,集合中的元素有的是單個個體,有的 是一個有限的單向連通圖集,通過這些圖集可達(dá)性,找到集合里面所有的包相互 關(guān)系;
2)包是以文件夾的方式組織的,文件夾名稱就是包名,文件夾下面有包的功 能文件,這些文件是以它本身的哈希值作為文件名,鑒于哈希值的唯一性特點(diǎn), 以哈希值命名的文件在整個系統(tǒng)中唯一性,最重要的一個文件就是manifest文件, 它的功能類似于linux系統(tǒng)下rpm包組織方式的.SPEC文件,Manifest除了負(fù)責(zé) 包下各個文件的安裝路徑,權(quán)限,安裝后名稱,包功能描述外,還有一個重要的 作用就是,它記錄安裝這個包所需要的依賴包,一兩個或十幾個,也就是說,安 裝這個包,包管理工具自動會檢測系統(tǒng)是否已經(jīng)安裝了這些包文件,有,則系統(tǒng) 會正常的安裝這個包,沒有,則首先安裝這些包;
3)根據(jù)包描述文件manifest中的記錄,逆向查找包的過程主要為:
a)先將所有包的manifest存放在一個以包名為目錄的文件夾下面;
b)所有這些包又放在同一個父目錄下,這樣方便后期查找;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于山東高效能服務(wù)器和存儲研究院,未經(jīng)山東高效能服務(wù)器和存儲研究院許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010139190.7/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F17-00 特別適用于特定功能的數(shù)字計(jì)算設(shè)備或數(shù)據(jù)處理設(shè)備或數(shù)據(jù)處理方法
G06F17-10 .復(fù)雜數(shù)學(xué)運(yùn)算的
G06F17-20 .處理自然語言數(shù)據(jù)的
G06F17-30 .信息檢索;及其數(shù)據(jù)庫結(jié)構(gòu)
G06F17-40 .數(shù)據(jù)的獲取和記錄
G06F17-50 .計(jì)算機(jī)輔助設(shè)計(jì)
- UNIX終端用戶輸入邏輯命令動態(tài)實(shí)時捕獲方法
- 一種基于可配置知識庫的UNIX主機(jī)安全配置審計(jì)方法
- 一種登錄類Unix虛擬容器的方法、裝置和系統(tǒng)
- 一種類UNIX操作系統(tǒng)獲取交換空間的方法及裝置
- 一種類Unix操作系統(tǒng)保存修改的方法及裝置
- Windows環(huán)境安裝和運(yùn)行類Unix的方法和裝置
- 一種虛擬化資源池的控制方法和裝置
- UNIX服務(wù)器仿真方法、系統(tǒng)及虛擬現(xiàn)實(shí)服務(wù)器
- 一種基于圖形界面的系統(tǒng)操作方法及裝置
- 面向docker容器調(diào)用宿主機(jī)命令的通訊方法及系統(tǒng)





