麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

一種保護硬盤末尾分區(qū)的方法

文檔序號:6556302閱讀:256來源:國知局
專利名稱:一種保護硬盤末尾分區(qū)的方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種保護硬盤末尾分區(qū)的方法,實現(xiàn)對硬盤末尾特定空間內(nèi)的數(shù)據(jù)的保護。
背景技術(shù)
現(xiàn)有的品牌電腦通常都給用戶提供了很多驅(qū)動和應用程序,為了節(jié)省成本,這些程序在出廠的時候都保存在硬盤的最后一個分區(qū);其次,通常品牌電腦還給用戶提供出廠狀態(tài)的恢復功能,讓用戶可以在電腦被破壞之后,恢復到出廠狀態(tài),以減少售后服務成本。出廠狀態(tài)恢復功能的通常做法是將操作系統(tǒng)備份在硬盤的末尾,然后利用恢復程序?qū)崿F(xiàn)對操作系統(tǒng)的重新安裝。由于硬盤的末尾分區(qū)保存了太多重要的資料和數(shù)據(jù),而且不能允許普通用戶破壞,那么保護這個最后分區(qū)就顯得非常重要。目前的解決方法有兩種,一種是將最后分區(qū)做成一個隱藏分區(qū),這個方法的缺陷在于,如果單純將末尾分區(qū)作為隱藏分區(qū),那么很容易被用戶誤操作破壞;另一種是采用SETMAX技術(shù),即有的電腦廠商號稱的HPA技術(shù),主要是使用ATA4標準中規(guī)定的SETMAX指令,這個方法的缺陷在于,此技術(shù)有可能導致與國外專利發(fā)生沖突。如何既要繞開SETMAX技術(shù),又要實現(xiàn)對末尾分區(qū)的保護呢,本發(fā)明就是闡述這個問題的。

發(fā)明內(nèi)容
本發(fā)明的目的是為了防止硬盤末尾分區(qū)中的重要數(shù)據(jù)被誤操作,而提供一種保護硬盤末尾分區(qū)的方法。
本發(fā)明的技術(shù)方案是一種保護硬盤末尾分區(qū)的方法,其特征在于它包括以下步驟1)、在電腦啟動的過程中,利用BIOS模塊獲得控制權(quán),之后首先調(diào)用位于硬盤尾部的主程序;2)通過該主程序載入INT13H過濾模塊,INT13H過濾模塊用于當操作系統(tǒng)詢問硬盤大小的時候,返回一個較小值,這個值等于硬盤實際大小減去末尾分區(qū)的大小,從而使操作系統(tǒng)不去訪問末尾分區(qū);3)啟動WINDOWS操作系統(tǒng),在WINDOWS操作系統(tǒng)中加載硬盤過濾驅(qū)動,該硬盤過濾驅(qū)動模塊用于當操作系統(tǒng)詢問硬盤大小的時候,返回一個較小值,這個值等于硬盤實際大小減去末尾分區(qū)的大小,從而使操作系統(tǒng)不去訪問末尾分區(qū)。
出廠電腦的BIOS里面增加一個BIOS模塊,這個模塊在電腦啟動的過程中,獲得控制權(quán),然后調(diào)用位于硬盤尾部的主程序,該主程序載入INT13H過濾模塊,最后才調(diào)用INT19H,完成系統(tǒng)引導的工作,并且最終啟動WINDOWS操作系統(tǒng)。同時,啟動的操作系統(tǒng)里面安裝有一個硬盤過濾驅(qū)動模塊。INT13H過濾模塊和硬盤過濾驅(qū)動模塊這兩個部分攔截操作系統(tǒng)對硬盤的訪問。當操作系統(tǒng)詢問硬盤大小的時候,返回一個較小值,這個值等于硬盤實際大小減去末尾分區(qū)的大小,讓操作系統(tǒng)誤以為硬盤比較小,從而不去訪問受保護的部分。
此外,當操作系統(tǒng)或者應用程序試圖讀取硬盤末尾分區(qū)的數(shù)據(jù),INT13H過濾模塊和硬盤過濾驅(qū)動模塊使其返回值為0,這樣操作系統(tǒng)就看不到末尾分區(qū)的真實數(shù)據(jù)。而當操作系統(tǒng)視圖寫入硬盤末尾數(shù)據(jù)時,返回為成功,但是實際上并不真正去做硬盤的寫操作,這樣,硬盤末尾的數(shù)據(jù)就不會被破壞。電腦啟動的時候,BIOS模塊自動判斷,如果硬盤分區(qū)覆蓋了受保護區(qū)域,自動調(diào)整分區(qū)表,使得最后分區(qū)為一個不能被操作系統(tǒng)識別的分區(qū)數(shù)據(jù)。
INT13H過濾模塊用于攔截INT13H這個中斷向量,在DOS操作系統(tǒng)下,如果需要訪問硬盤,常規(guī)軟件都是通過調(diào)用INT13H這個中斷。本發(fā)明的INT13H過濾模塊監(jiān)控08功能、02功能、03功能、42H功能、43H功能和48H功能,當截獲08或48H功能的時候,返回大小為總大小減去保護區(qū)大小,即返回一個比較小的硬盤大小。這樣可以使常規(guī)軟件或者DOS操作系統(tǒng)誤以為硬盤比較小。當截獲02或42H功能的時候,檢查讀的扇區(qū)位置,如果扇區(qū)位置位于所要保護的硬盤末尾分區(qū)內(nèi),則直接返回數(shù)據(jù)0,使得讀出的數(shù)據(jù)為0。當截獲03或43H功能的時候,檢查寫的扇區(qū)位置,如果扇區(qū)位置位于所要保護的硬盤末尾分區(qū)內(nèi),則直接返回成功,但實際上卻并不真正去做硬盤的寫操作,使得常規(guī)軟件或者DOS操作系統(tǒng)以為順利將數(shù)據(jù)寫入硬盤。
硬盤過濾驅(qū)動模塊用于攔截了IRP這個中斷向量,在WINDOWS操作系統(tǒng)下,如果需要訪問硬盤,常規(guī)情況下,都是通過IRP調(diào)用。本發(fā)明的硬盤過濾驅(qū)動模塊監(jiān)控READ,WRITE,GEOMETRY這三項功能,當截獲GEOMETRY功能的時候,返回大小為硬盤總大小減去末尾分區(qū)的大小,即返回一個比較小的硬盤大小。這樣可以使WINDOWS誤以為硬盤比較小,從而不去訪問受保護的部分。當截獲READ功能的時候,檢查讀的扇區(qū)位置,如果扇區(qū)位置位于保護區(qū)內(nèi),直接返回數(shù)據(jù)0,使得讀出的數(shù)據(jù)為0。當截獲WRITE功能的時候,檢查寫的扇區(qū)位置,如果扇區(qū)位置位于硬盤末尾分區(qū)內(nèi),直接返回成功,但實際上卻并不真正去做硬盤的寫操作,使得WINDOWS以為順利將數(shù)據(jù)寫入硬盤,從而達到保護末尾分區(qū)的目的。
每次開機的時候,BIOS模塊總是先被執(zhí)行,BIOS模塊執(zhí)行的時候,判斷分區(qū)表,如果發(fā)現(xiàn)分區(qū)表覆蓋了最后的保護區(qū),就調(diào)整分區(qū)表的大小,并且將保護區(qū)設(shè)置為一個FAT12分區(qū)。
在出廠電腦的驅(qū)動安裝包里,增加過濾驅(qū)動的自動安裝程序,并且當用戶點擊安裝驅(qū)動的時候,檢查是否已經(jīng)安裝硬盤過濾驅(qū)動模塊,如果沒有的話,強行自動安裝過濾驅(qū)動,并且重新啟動電腦,讓過濾驅(qū)動生效。
對于廠商來說,增加了一個后門接口,廠商可以停止對末尾分區(qū)的保護,方便廠商修改末尾分區(qū)的內(nèi)容。
本發(fā)明的優(yōu)點和效果非常明顯并且具有實際應用效果,與常規(guī)的隱藏分區(qū)技術(shù)相比,由于增加了INT13H過濾模塊和過濾驅(qū)動模塊,更加有效保護了最后分區(qū),而原方法很容易被一些工具軟件如PQMAGIC刪除掉隱藏分區(qū);而且本發(fā)明由于沒有使用硬盤內(nèi)帶的SETMAX指令,卻另辟蹊徑實現(xiàn)了與SETMAX指令相同的目的,相應減輕了廠家使用國外專利必須支付昂貴許可費的負擔。


圖1是本發(fā)明的工作流程圖。
具體實施例方式
首先,利用主板帶的BIOS修改和刷新工具,將本發(fā)明提供的BIOS模塊,添加到主板BIOS中。
其次,將硬盤末尾的空間,創(chuàng)建為一個主分區(qū)表,將該分區(qū)格式化為FAT32格式,然后將本發(fā)明提供的主程序拷貝到該分區(qū)。修改該分區(qū)表的屬性為TYPE12或者其他不能被WINDOWS識別的值。
再次,在出廠的WINDOWS里面,安裝本發(fā)明所提供的硬盤過濾驅(qū)動程序。
在廠商提供的驅(qū)動安裝盤,增加自動安裝過濾驅(qū)動程序的功能。當用戶安裝新的操作系統(tǒng),只要用戶安裝驅(qū)動程序,就可以自動將硬盤過濾驅(qū)動裝入新的操作系統(tǒng),實現(xiàn)保護末尾分區(qū)的功能。
由于TYPE12分區(qū)本身在WINDOWS下無法被磁盤管理器刪除,破壞TYPE12分區(qū)的潛在途徑主要有以下三種1)在DOS下使用第三方工具刪除分區(qū),如DISKGEN、DM等等。
2)在WINDOWS下使用第三方工具,如PQMAGIC。
3)重新安裝操作系統(tǒng),在安裝過程中重新分區(qū)。
本發(fā)明解決破壞方法1)是依靠INT13H過濾模塊,攔截INT13H對硬盤的讀寫操作,并且修改硬盤大小,使得DOS下的工具,無法訪問末尾的分區(qū)。
本發(fā)明解決破壞方法2)是依靠WINDOWS下的由本發(fā)明提供的硬盤過濾驅(qū)動,當WINDOWS查詢硬盤大小的時候,直接返回一個較小的硬盤大小,讓WINDOWS看不到末尾分區(qū)。而且,即使其他工具要訪問末尾分區(qū)所在的空間,也會被硬盤過濾驅(qū)動攔截,所有試圖改寫末尾分區(qū)的操作,都會被放棄。
本發(fā)明解決破壞方法3)是依靠本發(fā)明所涉及的在廠商提供的驅(qū)動安裝盤里添加的自動安裝硬盤過濾驅(qū)動模塊,當用戶在新安裝操作系統(tǒng)之后,通常需要安裝各種硬件設(shè)備的驅(qū)動程序,在安裝硬件驅(qū)動程序的過程中,自動安裝本發(fā)明的硬盤過濾驅(qū)動。
本發(fā)明的BIOS模塊在啟動電腦的過程中,搶先獲得控制權(quán),并且調(diào)用位于硬盤末尾的主程序,該主程序載入INT13H過濾模塊,最后才啟動操作系統(tǒng)。這樣可以保證即使通過光盤啟動,U盤啟動,都可以保護末尾分區(qū)。
本發(fā)明的BIOS模塊在啟動的時候,首先判斷末尾分區(qū)是否存在,如果發(fā)現(xiàn)被意外刪除,那么就恢復末尾分區(qū)表。
典型的,假定硬盤的實際大小為80G,受保護的末尾分區(qū)的大小為1G,那么INT13H過濾模塊和硬盤過濾驅(qū)動模塊,返回給操作系統(tǒng)的大小為79G,使操作系統(tǒng)以為該硬盤只有79G,從而不去訪問位于受保護分區(qū)內(nèi)的數(shù)據(jù)。
即使采用某個軟件特意去讀末尾分區(qū)的數(shù)據(jù),INT13H過濾模塊和硬盤過濾驅(qū)動模塊讓讀出來的數(shù)據(jù)為0;如果寫末尾分區(qū),無論如何寫,都顯示為成功,但實際數(shù)據(jù)不會被寫到硬盤上。這樣就實現(xiàn)了對末尾分區(qū)的保護。
權(quán)利要求
1.一種保護硬盤末尾分區(qū)的方法,其特征在于它包括以下步驟1)、在電腦啟動的過程中,利用BIOS模塊獲得控制權(quán),之后首先調(diào)用位于硬盤尾部的主程序;2)、通過該主程序載入INT13H過濾模塊,INT13H過濾模塊用于當操作系統(tǒng)詢問硬盤大小的時候,返回一個較小值,這個值等于硬盤實際大小減去末尾分區(qū)的大小,從而使操作系統(tǒng)不去訪問末尾分區(qū);3)、啟動WINDOWS操作系統(tǒng),在WINDOWS操作系統(tǒng)中加載硬盤過濾驅(qū)動模塊,該硬盤過濾驅(qū)動模塊用于當操作系統(tǒng)詢問硬盤大小的時候,返回一個較小值,這個值等于硬盤實際大小減去末尾分區(qū)的大小,從而使操作系統(tǒng)不去訪問末尾分區(qū)。
2.根據(jù)權(quán)利要求1所述的一種保護硬盤末尾分區(qū)的方法,其特征是在DOS環(huán)境下,當操作系統(tǒng)或者應用程序試圖讀取硬盤末尾分區(qū)的數(shù)據(jù)時,INT13H過濾模塊使其得到的返回值為0,使操作系統(tǒng)或應用程序無法讀取末尾分區(qū)的數(shù)據(jù);當操作系統(tǒng)或應用程序試圖寫入硬盤末尾分區(qū)數(shù)據(jù)時,INT13H過濾模塊使其返回值為成功,但是實際并不做硬盤的寫操作,達到無法訪問末尾分區(qū)的目的。
3.根據(jù)權(quán)利要求1所述的一種保護硬盤末尾分區(qū)的方法,其特征是在WINDOWS環(huán)境下,當操作系統(tǒng)或者應用程序在試圖讀取硬盤末尾分區(qū)的數(shù)據(jù)時,硬盤過濾驅(qū)動模塊使其得到的返回值為0,使操作系統(tǒng)或應用程序無法讀取末尾分區(qū)的數(shù)據(jù);當操作系統(tǒng)或應用程序視圖寫入硬盤末尾分區(qū)數(shù)據(jù)時,硬盤過濾驅(qū)動模塊使其返回值為成功,但是實際并不做硬盤的寫操作,達到無法訪問末尾分區(qū)的目的。
4.根據(jù)權(quán)利要求1、2或3所述的一種保護硬盤末尾分區(qū)的方法,其特征是在步驟1)中,利用BIOS啟動模塊,為末尾分區(qū)創(chuàng)建一個分區(qū)表,并將此分區(qū)表的屬性設(shè)置為特殊屬性,使得操作系統(tǒng)不能識別。
5.根據(jù)權(quán)利要求1、2或3所述的一種保護硬盤末尾分區(qū)的方法,其特征是在驅(qū)動程序安裝包里添加過濾驅(qū)動,自動為用戶新安裝的操作系統(tǒng)增加過濾驅(qū)動模塊。
全文摘要
本發(fā)明公開了一種保護硬盤末尾分區(qū)的方法,在電腦啟動的過程中,首先利用BIOS載入INT13H過濾模塊,再啟動WINDOWS操作系統(tǒng),并加載硬盤過濾驅(qū)動模塊。通過INT13H模塊和硬盤過濾驅(qū)動,使返回給操作系統(tǒng)的硬盤大小等于實際的硬盤大小減去末尾分區(qū)的大小,讓操作系統(tǒng)不會主動訪問末尾分區(qū),并主動攔截對末尾分區(qū)的讀寫操作,使操作系統(tǒng)和應用程序均無法訪問和修改末尾分區(qū);硬盤過濾驅(qū)動可添加在出廠的安裝程序內(nèi)并自動安裝;本發(fā)明還在每次電腦啟動的過程中,在操作系統(tǒng)啟動之前,檢查末尾分區(qū)的分區(qū)表,并自動為末尾分區(qū)建一個主分區(qū)表,屬性為TYPE12,以使新安裝的操作系統(tǒng)無法破壞此分區(qū)。
文檔編號G06F12/14GK1845073SQ20061004026
公開日2006年10月11日 申請日期2006年5月12日 優(yōu)先權(quán)日2006年5月12日
發(fā)明者張健 申請人:張健
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 九江县| 沁水县| 名山县| 洪泽县| 大竹县| 响水县| 扎赉特旗| 新兴县| 诏安县| 阿拉善左旗| 库尔勒市| 辰溪县| 岑巩县| 新晃| 崇明县| 湟源县| 松阳县| 宁国市| 云安县| 十堰市| 南漳县| 广水市| 辽中县| 内丘县| 杭锦旗| 阿拉善左旗| 临洮县| 合江县| 巨野县| 芜湖市| 海原县| 平凉市| 金堂县| 栾川县| 蒙城县| 百色市| 宁乡县| 辽阳市| 平昌县| 保定市| 萍乡市|