專利名稱:一種計算機二次啟動方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種兼顧保護計算機內(nèi)數(shù)據(jù)安全及系統(tǒng)兼容性的方法,更具體地說,涉及一種計算機二次啟動方法。
在計算機應用日益普及的當今世界,計算機用戶大眾化。誤操作,不理解系統(tǒng)及計算機病毒都是影響計算機正常使用的因素。計算機使用最普及的是基于DOS,WI NDOWS及WI NDOWS_95操作系統(tǒng)的IBM系列微型計算機及其兼容機。這類操作系統(tǒng)使用簡便、信息共享性強,全面開放,沒有提供對它所使用的數(shù)據(jù)(包括程序)提供保護,造成對它的數(shù)據(jù)破壞輕而易舉。為了增強其安全性,人們做了大量的工作,并從軟件和硬件角度研制了很多的產(chǎn)品(寫保護軟件,寫保護卡以及防病毒產(chǎn)品)。但是,現(xiàn)有的這些產(chǎn)品和技術(shù)或多或少都造成與系統(tǒng)或應用軟件不兼容的現(xiàn)象。因為這些應用軟件開發(fā)時并沒有考慮到這些保護產(chǎn)品的存在。所以既要安全性,又要兼容性是開發(fā)計算機安全產(chǎn)品者必須解決的問題,目前的解決方法一般是利用軟件提供的安裝到其他邏輯盤(非C盤)或假寫的方法來解決。而有些軟件不提供安裝到其他邏輯盤(非C盤)的功能,或安裝其他邏輯盤在使用時有一些不同的使用設置。這樣造成軟不兼容,即由于使用者知識的缺乏而產(chǎn)生的不兼容。從市場的角度說就是售后服務困難,并造成推廣困難。
另外,用戶在學習使用計算機時,經(jīng)常要對操作系統(tǒng)或其它系統(tǒng)軟件進行刪除、安裝或設置等,但一旦出現(xiàn)了誤操作,就導致機器無法啟動而策手無措。
本發(fā)明的目的即在于解決上述問題,提供一種計算機二次啟動的方法,利用該方法在計算機啟動時首先啟動一安全系統(tǒng),由人或該安全系統(tǒng)對計算機系統(tǒng)進行安全性認證。當確認計算機處于不安全狀態(tài)(如操作系統(tǒng)損壞)時,以簡單的操作進行系統(tǒng)恢復和其它相應的工作,如計算機處于安全狀態(tài)則完全費棄該安全系統(tǒng)的軟件,啟動計算機的操作系統(tǒng)。
為了實現(xiàn)上述目的,本發(fā)明提供了一種計算機的二次啟動方法,包括(1)將硬盤分為保護區(qū)及用戶區(qū);(2)在每次啟動計算機時,使其在完成自檢后首先讀取保護區(qū)或硬件存儲器內(nèi)指定地址開始的系統(tǒng)程序,并將計算機的控制權(quán)交給該系統(tǒng)程序;(3)進行所述系統(tǒng)程序的處理;(4)啟動用戶區(qū)操作系統(tǒng)。
本發(fā)明的優(yōu)點在于1.將硬盤分為保護區(qū)和用戶區(qū),可以利用硬件方法保證保護區(qū)內(nèi)信息的絕對安全,通過二次啟動的方法,可以防止所有操作系統(tǒng)型計算機病毒的攻擊的同時,保證系統(tǒng)的完全兼容性。
2.可將用戶區(qū)內(nèi)的操作系統(tǒng)等程序或數(shù)據(jù)備份到保護區(qū)內(nèi),一旦當用戶區(qū)的操作系統(tǒng)或其它軟件或數(shù)據(jù)因病毒或誤操作等受到破壞時,或在用戶出于其它目的要將復制到保護區(qū)中的某些信息恢復到用戶區(qū)時,可以通過簡單的操作將用戶區(qū)的信息恢復,而使用戶得到極大的便利,也有利于銷售方的售后服務。
下面結(jié)合附圖詳細說明本發(fā)明的特征及優(yōu)點。
附圖中
圖1是一般安裝DOS的計算機的啟動流程圖。
圖2示出了按照本發(fā)明的一個實施例的二次啟動的流程圖。
按照本發(fā)明的方法,將硬盤分為保護區(qū)和用戶區(qū)。所謂保護區(qū)是指在用戶一般使用計算機時不能對其進行寫操作的一部分硬盤空間。這部分硬盤空間可以用各種軟硬件的方式被“寫保護”起來,最好是以硬件的方式將其保護起來,如以中國專利94111461.9號及PCT/CN95/00010號公開的方式將其保護起來,使其中的數(shù)據(jù)絕對地安全。保護區(qū)內(nèi)的數(shù)據(jù)不易受到病毒的攻擊,(對于以上述專利公開的硬件方式保護起來的情況,則根本不會受到病毒的攻擊),并且不會被用戶的誤操作破壞。
保護區(qū)內(nèi)裝有本發(fā)明的系統(tǒng)程序,該程序可以是構(gòu)造在已有的操作系統(tǒng)如DOS上的,也可以是與現(xiàn)有操作系統(tǒng)無關(guān)的。該系統(tǒng)程序可以進行各種處理,比如對用戶區(qū)的安全進行認證的處理、將用戶區(qū)內(nèi)的選擇信息復制到保護區(qū)內(nèi)的處理、將復制到保護區(qū)內(nèi)的信息恢復到用戶區(qū)的處理等。應該指出的是,為了確保與其它軟件的完全兼容,如果該系統(tǒng)軟件在其啟動或運作時要修改內(nèi)存的BIOS數(shù)據(jù)區(qū),則其必須包括在進行其它處理前將內(nèi)存的BIOS數(shù)據(jù)區(qū)中的BIOS數(shù)據(jù)移到內(nèi)存的一安全區(qū)域(即該系統(tǒng)程序運行時不會用到的內(nèi)存區(qū)域)內(nèi)的步驟,及在完成各種處理后將移走的BIOS數(shù)據(jù)移回到BIOS數(shù)據(jù)區(qū)的步驟。
所謂安全認證處理即通過對用戶區(qū)查病毒等方法自動檢查用戶區(qū)的程序或數(shù)據(jù)是否受到破壞。如確認用戶區(qū)未受到破壞則可繼續(xù)啟動用戶區(qū)內(nèi)的操作系統(tǒng),如發(fā)現(xiàn)用戶區(qū)已受到破壞,則提示用戶是否對用戶區(qū)進行殺毒或以復制到保護區(qū)內(nèi)的程序及數(shù)據(jù)對用戶區(qū)進行恢復。
將用戶區(qū)內(nèi)的信息復制到保護區(qū)可以有多種方式,這對本領(lǐng)域的人員是公知的。這里認為較好的一種方式是按磁道將用戶區(qū)信息拷貝到保護區(qū)內(nèi)作為一個文件,這樣可以通過簡單的操作將復制的信息快速地按磁道恢復到用戶區(qū)中。
可以考慮將保護區(qū)做成為對用戶是“隱蔽的”,即不允許用戶對保護區(qū)進行任何寫操作,而在計算機售出前由銷售方將其連機配售給用戶的軟件復制到保護區(qū)內(nèi)。當因用戶的誤操作或病毒等使用戶區(qū)受到破壞時,使用戶可以用規(guī)定的操作恢復用戶區(qū)為購買時的可用狀態(tài),這對于一些初級用戶無疑是很有利的,也使銷售方的售后服務變得很容易,畢竟因硬件故障的情況是較少的。
當然,也可以讓用戶自己掌握對保護區(qū)的寫操作,以使其可以將自己認為重要的軟件或數(shù)據(jù)復制到保護區(qū)內(nèi)以防止用戶區(qū)被破壞時的損失。這種情況下,應以口令盤等方式首先對用戶的身份進行認證。
所謂用戶區(qū),即硬盤的可由用戶任意使用的區(qū)域,其內(nèi)應含有通常的操作系統(tǒng),如DOS,WINDOWS等。
按照本發(fā)明的方法,在每次計算機啟動時,在計算機運行完BIOS后,即去調(diào)用存儲在硬盤保護區(qū)指定地址的本發(fā)明的系統(tǒng)程序,將控制權(quán)交給該系統(tǒng)程序。該系統(tǒng)程序的運行,我們稱之為一次啟動。該系統(tǒng)程序檢驗用戶區(qū)是否受到破壞,如果沒有,則完全退出該系統(tǒng)程序,恢復內(nèi)存BIOS數(shù)據(jù)區(qū)并將控制權(quán)交給用戶區(qū)的操作系統(tǒng)進行二次啟動,以后的工作即與普通啟動完全相同。如果該系統(tǒng)程序發(fā)現(xiàn)用戶區(qū)已被破壞,則提示用戶,讓其選擇是否對用戶區(qū)進行恢復,即用復制到保護區(qū)內(nèi)的信息對用戶區(qū)進行恢復。
該系統(tǒng)程序也可以不含有安全認證程序,即在其啟動(即一次啟動)時只顯示一個包含啟動或恢復等的選擇屏面,由用戶選擇啟動,即將控制權(quán)交給用戶區(qū)的操作系統(tǒng)進行二次啟動。二次啟動后當用戶在使用中發(fā)現(xiàn)用戶區(qū)受到破壞時重新啟動或開機,當再次運行本發(fā)明的系統(tǒng)程序時在上述的選擇屏面上選擇恢復,對用戶區(qū)進行恢復,然后進行用戶區(qū)啟動。
下面以本發(fā)明的系統(tǒng)程序構(gòu)造在DOS上,且用戶區(qū)操作系統(tǒng)為DOS為例來說明本發(fā)明的一個具體例子。在該例子中所稱的系統(tǒng)程序的指定地址即為0面0道1扇區(qū)。
為實現(xiàn)上述的二次啟動過程,在裝入該系統(tǒng)程序時,其對硬盤的0道0面1扇區(qū)的分區(qū)表程序及分區(qū)信息進行了適當?shù)男薷?,即在分區(qū)表程序中加入將內(nèi)存0:0-0:600的區(qū)域內(nèi)的數(shù)據(jù)移至4A00:0000開始的區(qū)域中的程序和虛擬中斷13(后面將詳細說明虛擬中斷13的內(nèi)容),同時把用戶區(qū)D設為活動分區(qū),把保護區(qū)C設為非活動分區(qū)。另外,把修改前的0道0面1扇區(qū)的分區(qū)信息移到0道0面2扇區(qū)中,該修改前的分區(qū)信息表明保護區(qū)C區(qū)為活動分區(qū),再有,在保護區(qū)的CONFIG,SYSY的第一行加入device=p:\dosint13,sys(虛擬中斷13的驅(qū)動程序),在AUTOEXEC,BAT的第一行加入C:\encode,exe(安全系統(tǒng)主程序)。再格式化用戶區(qū)D,并裝入相應的操作系統(tǒng)(如DOS,WINDOWS)及銷售商希望給用戶裝配的軟件。然后,將用戶區(qū)D內(nèi)的操作系統(tǒng)及重要軟件的備份裝入保護區(qū)C中,這種備份工作一般由銷售商或廠家進行,以確保備份軟件的安全,但對于某些高級用戶也可以通過給用戶口令盤等方式由用戶自己來做。
所謂虛擬中斷13,就是用修改中斷13向量的方法,接管BIOS的中斷13。當程序要通過中斷13讀硬盤時,虛擬中斷13先檢測是否是要讀0道0面1扇區(qū)。如果檢測結(jié)果為“是”,則讓其去讀0道0面2扇區(qū)的內(nèi)容作為數(shù)據(jù)返回給調(diào)用程序;否則正常地執(zhí)行原來BIOS的中斷13程序以進行相應的工作。
下面參照圖1簡要說明一般的IBM兼容機的啟動過程。當給一臺機器加電或RESET時,從FFFF:0000位置執(zhí)行第一條指令。一般這是固化的BIOS程序。從此開始進行BIOS中的程序,進行計算機的自檢。自檢完成后,讀硬盤分區(qū)表,即0道0面1扇區(qū)中的內(nèi)容到內(nèi)存0000:7C00的位置,并把控制權(quán)交給0000:7C00。于是進行后續(xù)的尋找活動分區(qū)、讀入活動分區(qū)的第一扇區(qū)即dos-boot區(qū)到0000:7C00H,然后將控制交到該處,執(zhí)行boot程序,boot程序讀入IO,SYS、讀入MOSDOS,SYS、啟動DOS、讀入CONFIG,SYS、執(zhí)行AUTOEXEC,BAT、執(zhí)行COMMAND,COM等一系列的過程,于是啟動過程就結(jié)束了。
下面參照圖2說明裝有本發(fā)明的系統(tǒng)程序的計算機的啟動過程。
當給計算機加電或RESET時,首先進行機器的自檢,然后讀入0道0面1扇區(qū)的分區(qū)表,其中的經(jīng)修改的分區(qū)表程序中含有上述移動BIOS數(shù)據(jù)區(qū)數(shù)據(jù)的程序及虛擬中斷13,分區(qū)信息表示用戶區(qū)D為活動的,而保護區(qū)C為不活動的。
接下來,把0000:7C00開始的200H個字節(jié)移動到4000:0000H處,其目的在于將虛擬中斷13保存起來。然后程序轉(zhuǎn)到4000段繼續(xù)執(zhí)行分區(qū)表程序。
下一步,將0:0-0:600區(qū)域中的內(nèi)容移動到4A00:0000開始的區(qū)域,其目的在于保護BIOS數(shù)據(jù)。另外還要修改中斷13的入口地址,使它指向虛擬中斷13的入口地址。由于虛擬中斷13的作用,當讀0面0道1扇區(qū)的分區(qū)信息時使實際讀出的為0面0道2扇區(qū)的分區(qū)信息,使系統(tǒng)認為活動分區(qū)為C區(qū),因此將其BOOT區(qū)讀到0000:7C00,并把控制權(quán)交給0000:7C00。
接下來的兩個步驟與圖1中啟動DOS的相對應的步驟是相同的,這里不再贅述。
接著在下一步驟中,dosint13,sys根據(jù)中斷13的入口地址,把虛擬中斷13移動到DOS為dosint13,sys分配的空間中,并相應地改變DOS使用中斷13的地址。同時把4A00:0000開始保存的BIOS數(shù)據(jù)也移到該區(qū)域中。
在下一步中,執(zhí)行AUTOEXEC,BAT批處理,首先將執(zhí)行本發(fā)明的系統(tǒng)主程序encode,exe。該主程序有三個功能1)管理啟動,其功能是直接退出安全程序而進入DOS;2)恢復,其功能是利用以前在保護區(qū)C中做的備份對用戶區(qū)中有問題的軟件進行恢復;3)正常啟動,其功能是把保存的0:0-0:600的BIOS數(shù)據(jù)恢復到原來的區(qū)域,然后讀入用戶區(qū)的BOOT區(qū)到0000:7C00,于是繼續(xù)如圖1中的第3步開始的過程。
當用戶選擇正常啟動時,便實現(xiàn)了本發(fā)明的二次啟動。
從上述的二次啟動過程可以看出,當確認用戶區(qū)D中的操作系統(tǒng)或有關(guān)軟件安全之后,將先前保存起來的0:0-0:600的BIOS數(shù)據(jù)重新放回到0:0-0:600,于是系統(tǒng)以后調(diào)用中斷13時,不再去調(diào)用虛擬中斷13,而是直接調(diào)用原來的中斷13,因此不存在任何的兼容性問題。
對于用戶來說,每次給計算機加電或RESET時,首先在屏幕上出現(xiàn)了一個主菜單,即包括1)退出安全系統(tǒng),進入DOS;2)恢復;3)正常啟動這三個選項的主菜單。若用戶選擇正常啟動而發(fā)現(xiàn)操作系統(tǒng)或有關(guān)軟件有問題,就重新開機或RESET,然后選擇2)項,那么將把保護區(qū)內(nèi)的備份軟件重新裝入用戶區(qū)中,以恢復出現(xiàn)問題的軟件。
本說明書中所稱的系統(tǒng)程序,可以具有許多功能和形式,上述在0面0道1扇區(qū)中的分區(qū)表程序中加入虛擬中斷13等的方法,即是該系統(tǒng)程序構(gòu)造于DOS上的一種具體形式。該系統(tǒng)不僅可以存放于硬盤保護區(qū)內(nèi),也可以存放在計算機其它硬件部分中,如BIOS存儲器、其它附加卡的存儲器中。本發(fā)明的范圍,應由所附權(quán)利要求所限定。
權(quán)利要求
1.一種計算機二次啟動方法,包括(1)將硬盤分為保護區(qū)及用戶區(qū);(2)在每次啟動計算機時,使其在完成自檢后首先讀取保護區(qū)或硬件存儲器內(nèi)指定地址開始的系統(tǒng)程序,并將計算機的控制權(quán)交給該系統(tǒng)程序;(3)進行所述系統(tǒng)程序的處理;(4)啟動用戶區(qū)操作系統(tǒng)。
2.如權(quán)利要求1的計算機二次啟動方法,其特征是,所述的步驟(3)包括(3a)將BIOS交控制時的內(nèi)存BIOS數(shù)據(jù)區(qū)中的BIOS數(shù)據(jù)移到內(nèi)存中的一安全區(qū)域;(3b)進行所述系統(tǒng)程序的其它處理;(3c)將移到內(nèi)存安全區(qū)域內(nèi)的BIOS數(shù)據(jù)移回到內(nèi)存的BIOS數(shù)據(jù)區(qū)。
3.如權(quán)利要求1或2的計算機二次啟動方法,其特征是,所述的系統(tǒng)程序包括安全認證程序,其用于認證用戶區(qū)信息是否受到破壞。
4.如權(quán)利要求1或2的計算機二次啟動方法,其特征是,所述系統(tǒng)程序的處理包括將用戶區(qū)內(nèi)的操作系統(tǒng)及其它選擇的信息復制到保護區(qū)的處理。
5.如權(quán)利要求4的計算機二次啟動方法,其特征是,所述系統(tǒng)程序的處理包括將復制到保護區(qū)內(nèi)的用戶區(qū)操作系統(tǒng)及其它信息的副本恢復到用戶區(qū)中的處理。
6.如權(quán)利要求1或2的計算機二次啟動方法,其特征是,所述的步驟(2)是通過修改BIOS程序?qū)崿F(xiàn)的。
7.如權(quán)利要求1或2的計算機二次啟動方法,其特征是,所述的指定地址為0面0道1扇區(qū)。
8.如權(quán)利要求7的計算機二次啟動方法,其特征是,所述的步驟(2)是通過修改分區(qū)表程序及分區(qū)表信息實現(xiàn)的。
9.如權(quán)利要求8的計算機二次啟動方法,其特征是,在分區(qū)表中將用戶區(qū)設置為活動分區(qū)并在分區(qū)表程序中加入將內(nèi)存內(nèi)BIOS數(shù)據(jù)移至內(nèi)存安全區(qū)域的程序及虛擬中斷13,該虛擬中斷13用于當系統(tǒng)讀硬盤0面0道1扇區(qū)時,使系統(tǒng)去讀保護區(qū)內(nèi)另一指定地址的分區(qū)信息,該分區(qū)信息表明保護區(qū)為活動分區(qū)而用戶區(qū)為非活動分區(qū)。
10.如權(quán)利要求8的計算機二次啟動方法,其特征是,保護區(qū)內(nèi)的該系統(tǒng)程序構(gòu)造在DOS上。
11.如權(quán)利要求4或5的計算機二次啟動方法,其特征是,該保護區(qū)內(nèi)的系統(tǒng)程序的處理包括按磁道將用戶區(qū)的信息拷貝到保護區(qū)內(nèi)作為一個文件的處理和將保護區(qū)內(nèi)的備份文件按磁道恢復到用戶區(qū)的處理。
12.如權(quán)利要求4的計算機二次啟動方法,其特征是,在向保護區(qū)復制信息前先進行用戶身份認證。
13.如權(quán)利要求1或2的計算機二次啟動方法,其特征是,保護區(qū)是以軟件或硬件方法對其寫操作加以限制的磁盤區(qū)域。
全文摘要
一種計算機二次啟動方法,包括:(1)將硬盤分為保護區(qū)及用戶區(qū);(2)在每次啟動計算機時,使其在完成自檢后首先讀取保護區(qū)或硬件存儲器內(nèi)指定地址開始的系統(tǒng)程序,并將計算機的控制權(quán)交給該系統(tǒng)程序;(3)進行所述系統(tǒng)程序的處理;(4)啟動用戶區(qū)操作系統(tǒng)。其目的是在保證計算機硬盤安全的同時兼顧兼容性。
文檔編號G06F9/445GK1210307SQ9711685
公開日1999年3月10日 申請日期1997年9月2日 優(yōu)先權(quán)日1997年9月2日
發(fā)明者邵通 申請人:邵通