專利名稱:一種建立硬盤物理分區(qū)的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種建立硬盤物理分區(qū)的方法,尤其是在單硬盤上建立多個(gè)硬盤物理分區(qū)的方法。
背景技術(shù):
計(jì)算機(jī)的應(yīng)用已深入各個(gè)領(lǐng)域。多數(shù)計(jì)算機(jī)將其數(shù)據(jù)存儲(chǔ)在硬盤上,每臺(tái)計(jì)算機(jī)往往只有一個(gè)硬盤。但是,同一臺(tái)計(jì)算機(jī)可能服務(wù)多個(gè)用戶或者不同的應(yīng)用需求。
在使用單一硬盤的情況下,各個(gè)用戶通常希望能夠擁有各自獨(dú)立的運(yùn)行環(huán)境,不僅數(shù)據(jù)信息能夠相互隔離,如無法互相訪問,具有安全性和私密性等,而且可以進(jìn)而建立各自獨(dú)立的軟件環(huán)境。有時(shí)同一用戶也可能因?yàn)橛胁煌膽?yīng)用需求,需要在同一硬盤上建立不同的軟件運(yùn)行環(huán)境。
現(xiàn)有技術(shù)下,可以在計(jì)算機(jī)的單一操作系統(tǒng)下設(shè)定多個(gè)用戶帳戶,每個(gè)賬戶分別記錄各自用戶在計(jì)算機(jī)硬盤上的數(shù)據(jù)信息,以實(shí)現(xiàn)不同用戶數(shù)據(jù)的隔離。例如在視窗Windows 2000和視窗Windows XP中,操作系統(tǒng)可以服務(wù)多個(gè)用戶,每個(gè)用戶都有單獨(dú)的帳戶和密碼,并有相應(yīng)的權(quán)限。通過多用戶支持的加密文件系統(tǒng)(EFS,Encrypting File System),用戶可以使用任意產(chǎn)生的密鑰加密文件或文件夾。加密后,別的用戶即使是系統(tǒng)管理員也無法打開。
現(xiàn)有技術(shù)下,也可以在同一臺(tái)計(jì)算機(jī)上安裝多個(gè)操作系統(tǒng),以服務(wù)用戶的不同應(yīng)用需求。此時(shí),各個(gè)操作系統(tǒng)可以安裝在不同邏輯分區(qū),也可以安裝在同一邏輯分區(qū)。硬盤上的操作系統(tǒng)的啟動(dòng)主要是由主引導(dǎo)扇區(qū)和系統(tǒng)引導(dǎo)扇區(qū)來實(shí)現(xiàn)的。主引導(dǎo)扇區(qū)位于硬盤的首部,即LBA0扇區(qū),負(fù)責(zé)搜索硬盤可以啟動(dòng)的分區(qū)。主引導(dǎo)扇區(qū)是由基本輸入輸出系統(tǒng)BIOS引導(dǎo)并調(diào)入內(nèi)存執(zhí)行,系統(tǒng)引導(dǎo)扇區(qū)則位于每個(gè)分區(qū)的首部,由SYS命令負(fù)責(zé)引導(dǎo)本分區(qū)相應(yīng)的操作系統(tǒng)。
上述現(xiàn)有技術(shù)中,不同的用戶數(shù)據(jù)和操作系統(tǒng)在物理上沒有分隔,因此存在局限性。
就上述視窗Windows 2000和視窗Windows XP中為用戶提供單獨(dú)的帳戶和密碼的方式而言,首先,需要在特定的操作系統(tǒng)下才能實(shí)現(xiàn);此外,還需要特定的分區(qū)格式NTFS;而且,高權(quán)限的管理員雖然無法打開,但是可以刪除;當(dāng)文件復(fù)制到FAT或FAT32分區(qū)下,加密消失;并且,加密進(jìn)程會(huì)增加處理量和降低運(yùn)行性能。
現(xiàn)有技術(shù)下在同一臺(tái)計(jì)算機(jī)上安裝多個(gè)操作系統(tǒng)的方式,由于各個(gè)操作系統(tǒng)最初都是由硬盤LBA0扇區(qū)開始的主引導(dǎo)扇區(qū)程序引導(dǎo)進(jìn)行初始化的,如果LBA0扇區(qū)損壞,會(huì)同時(shí)影響多個(gè)操作系統(tǒng),安全性差。而且,多個(gè)操作系統(tǒng)在系統(tǒng)下都是同時(shí)可見的,可能被其它應(yīng)用程序或病毒或人為誤操作而破壞,安全性差。
現(xiàn)有技術(shù)的上述缺陷,是由于不同用戶和操作系統(tǒng)的數(shù)據(jù)在物理層次上并無區(qū)分,因此,無法為用戶提供完全獨(dú)立的軟件運(yùn)行環(huán)境。
發(fā)明內(nèi)容
針對(duì)現(xiàn)有技術(shù)的上述缺陷,本發(fā)明解決的技術(shù)問題是提供一種建立硬盤物理分區(qū)的方法,能夠在同一個(gè)硬盤上為用戶提供物理上相互隔離的多個(gè)區(qū)域,使不同區(qū)域存放的數(shù)據(jù)在物理層次上相互獨(dú)立。
為解決該技術(shù)問題,本發(fā)明提供的建立硬盤物理分區(qū)的方法,包含下述步驟1)計(jì)算機(jī)啟動(dòng),接收物理分區(qū)的劃分信息,所述信息包括硬盤物理分區(qū)的硬盤首部所在的扇區(qū)及該硬盤物理分區(qū)的容量;2)根據(jù)上述接收的硬盤物理分區(qū)的硬盤首部所在的扇區(qū),指定硬盤首部到該扇區(qū);以及3)根據(jù)上述接收的硬盤物理分區(qū)的容量,設(shè)定所述的硬盤首部所在的扇區(qū)開始該容量的硬盤空間為用戶可用區(qū),相應(yīng)的,該硬盤的其它扇區(qū)為該硬盤物理分區(qū)的保護(hù)區(qū);所述該硬盤物理分區(qū)的容量小于該硬盤實(shí)際物理容量。
所述步驟2)中硬盤首部所在的扇區(qū)可以是出廠時(shí)已確定的扇區(qū)。
所述步驟2)的扇區(qū)的指定還可以通過執(zhí)行ATA指令Set FEATURESEnable Address Offset Mode命令實(shí)現(xiàn)。
所述步驟3)的用戶可用區(qū)的設(shè)定具體是執(zhí)行ATA指令Set Max Assress。
執(zhí)行Set Max Address命令后,還可以執(zhí)行SET MAX SET PASSWORD命令,設(shè)置密碼保護(hù),對(duì)Set Max Address命令加鎖;以后,執(zhí)行Set Max Address命令前,結(jié)合原來設(shè)置的密碼,執(zhí)行SET MAXUNLOCK命令,對(duì)Set Max Address命令解鎖。
以上所述的ATA指令在啟動(dòng)時(shí)進(jìn)入BIOS環(huán)境執(zhí)行。
所述步驟1)之前,還可以包括選擇是否劃分新的硬盤物理分區(qū);如果是,則進(jìn)入步驟1);如果否,則選擇進(jìn)入某一硬盤物理分區(qū)。
選擇進(jìn)入某一硬盤物理分區(qū)后,可以在用戶可用區(qū)劃分邏輯分區(qū),進(jìn)而安裝操作系統(tǒng)。
所建立的新的硬盤物理分區(qū)的用戶可用區(qū)位于已建立的硬盤物理分區(qū)的保護(hù)分區(qū),以避免破壞已建立的硬盤物理分區(qū)。
新的硬盤物理分區(qū)的硬盤首部可以位于已建立的硬盤物理分區(qū)的保護(hù)區(qū)的起始扇區(qū)以最大限度的利用硬盤容量。
與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是本發(fā)明技術(shù)方案的硬盤分區(qū)方式通過在硬盤上改變硬盤首部,并根據(jù)改變后的硬盤首部設(shè)立用戶可用區(qū)及用戶保護(hù)區(qū),在物理層次上實(shí)現(xiàn)對(duì)硬盤的隔離。不同的硬盤物理分區(qū)的用戶可用區(qū)處于硬盤的不同扇區(qū),也即各個(gè)硬盤物理分區(qū)的用戶可用區(qū)都處于其它硬盤物理分區(qū)的保護(hù)區(qū)上,當(dāng)進(jìn)入某一個(gè)硬盤物理分區(qū)時(shí),對(duì)于用戶而言,只有該硬盤物理分區(qū)的用戶使用區(qū)是可見的,而該物理分區(qū)的保護(hù)區(qū)對(duì)用戶而言相當(dāng)于不存在。這就保證了處于某一個(gè)硬盤物理分區(qū)的用戶不可能訪問其它硬盤物理分區(qū),使不同的分區(qū)在物理上相互獨(dú)立。
由于以上特點(diǎn),使用本發(fā)明提供的方法,可以在共享同一硬盤的前提下,提供物理上獨(dú)立的不同區(qū)域供用戶使用,不僅保證各個(gè)用戶的數(shù)據(jù)相互在物理層次上的獨(dú)立性,更為用戶提供了完全獨(dú)享的軟件環(huán)境。
由于該方法只需在最底層的軟件上執(zhí)行若干指令即可實(shí)現(xiàn),不需要增加任何硬件,因此同時(shí)具有簡(jiǎn)單易行、無需增加成本的優(yōu)點(diǎn)。
圖1是本發(fā)明所述方法的第一實(shí)施例的流程圖;圖2a至圖2e是圖1各步驟對(duì)應(yīng)的硬盤分區(qū)情況;圖3是本發(fā)明所述方法的第二實(shí)施例的流程圖;圖4a至圖4h是圖3各步驟對(duì)應(yīng)的硬盤分區(qū)情況。
具體實(shí)施例方式
下面結(jié)合附圖對(duì)本發(fā)明的實(shí)施例作詳細(xì)的描述。
請(qǐng)參閱圖1,本發(fā)明的第一實(shí)施例實(shí)現(xiàn)在一個(gè)硬盤上劃分兩個(gè)物理分區(qū)。
本實(shí)施例中劃分硬盤物理分區(qū)由計(jì)算機(jī)程序完成,該程序可以是BIOS中的模塊,可以稱之為物理分區(qū)劃分模塊,在BIOS引導(dǎo)硬盤上操作系統(tǒng)前調(diào)用。在硬盤初始未劃分任何空間也未安裝任何操作系統(tǒng)的情況下(見圖2a),進(jìn)行如下操作步驟S1,計(jì)算機(jī)上電,啟動(dòng)BIOS,調(diào)用所述物理分區(qū)劃分模塊,提示用戶劃分用戶可用區(qū)和保護(hù)分區(qū)。并記錄用戶的選擇。
例如用戶可用區(qū)位于LBA0扇區(qū)至用戶指定的M扇區(qū),保護(hù)分區(qū)位于M+1扇區(qū)至硬盤實(shí)際物理最大地址(Native Max Address)所在扇區(qū)。
步驟S2,在BIOS中執(zhí)行Set Max Address命令,保護(hù)M扇區(qū)以上的保護(hù)分區(qū),實(shí)現(xiàn)物理隔離。此時(shí)保護(hù)分區(qū)無法被任何軟件所訪問。劃分后硬盤狀態(tài)如圖2b所示。
步驟S3,BIOS繼續(xù)引導(dǎo)硬盤,按正常方式在用戶可用區(qū)(LBA0-M扇區(qū))劃分分區(qū),包括主分區(qū)及邏輯分區(qū)等,并安裝操作系統(tǒng)。硬盤狀態(tài)如圖2c所示。
步驟S4,再次啟動(dòng)計(jì)算機(jī),BIOS調(diào)用物理分區(qū)劃分模塊,在用戶選擇下,執(zhí)行Set FEATURES Enable Address Offset Mode命令,重新指定硬盤LBA0扇區(qū)位置到保護(hù)分區(qū)起始位置(M+1)扇區(qū)。
需要說明的是第一,重新指定LBA0到M+1扇區(qū)位置,是為了不破壞已安裝的操作系統(tǒng)A和最大利用硬盤資源,Set FEATURES Enable AddressOffset Mode命令可以指定LBA0到硬盤上任何扇區(qū)。第二,執(zhí)行重新指定LBA0扇區(qū)指令不會(huì)破壞硬盤現(xiàn)有的任何數(shù)據(jù)信息。
重新執(zhí)行Set Max Address命令,保護(hù)新地址Max-M+1扇區(qū)以上的扇區(qū),保護(hù)新的保護(hù)分區(qū)即原來的用戶可用區(qū)。執(zhí)行完畢后,硬盤狀態(tài)如圖2d所示。
步驟S5、BIOS繼續(xù)引導(dǎo)硬盤,按正常方式在新的用戶可用區(qū)(新地址LBA0至Max-M扇區(qū))劃分分區(qū)(主分區(qū)及邏輯分區(qū)等),并安裝操作系統(tǒng)B。安裝完畢后,硬盤狀態(tài)如圖2e所示。
步驟S6、每次啟動(dòng)時(shí),可在BIOS中選擇啟動(dòng)系統(tǒng)A或B。
如果選擇啟動(dòng)系統(tǒng)A,則由BIOS中模塊保證LBA0設(shè)置在原硬盤LBA0起始位置,并保護(hù)相應(yīng)的保護(hù)分區(qū),從LBA0啟動(dòng)相應(yīng)操作系統(tǒng)A。
如果選擇啟動(dòng)系統(tǒng)B,則由BIOS中物理分區(qū)劃分模塊執(zhí)行Set FEATURESEnable Address Offset Mode命令,保證LBA0設(shè)置在原硬盤(M+1)處;在BIOS中執(zhí)行Set Max Address命令并保護(hù)相應(yīng)的保護(hù)分區(qū),從新的LBA0位置啟動(dòng)相應(yīng)操作系統(tǒng)B。
上述每次使用Set Max Address命令后,可以緊接著使用SET MAX SETPASSWORD命令,設(shè)置32字節(jié)長(zhǎng)度的密碼保護(hù),對(duì)Set Max Address命令加鎖;這是為了防止其它程序進(jìn)入BIOS,更改物理硬盤用戶使用區(qū)及保護(hù)區(qū)的設(shè)置,確保已建立的物理硬盤不被非法破壞。以后,每次使用Set MaxAddress命令前必須結(jié)合原來設(shè)置的32字節(jié)的密碼執(zhí)行SET MAX UNLOCK命令,對(duì)Set Max Address命令解鎖。
請(qǐng)參考圖3,是本發(fā)明的第二實(shí)施例的流程圖。該實(shí)施例可在同一硬盤上獲得多個(gè)互相獨(dú)立,并有著物理隔離的操作系統(tǒng),可以同時(shí)安裝Windows 98,Windows 2000,Windows XP,Linux,Novell,Unix等等。
實(shí)現(xiàn)物理隔離并可以設(shè)置LBA0扇區(qū)位置的物理分區(qū)劃分模塊位于BIOS中,并在BIOS引導(dǎo)硬盤上操作系統(tǒng)前調(diào)用。硬盤初始未劃分任何空間也未安裝任何操作系統(tǒng),如圖4a所示。
實(shí)際操作步驟如下步驟S1,計(jì)算機(jī)上電,啟動(dòng)BIOS調(diào)用模塊,提示用戶劃分用戶可用區(qū)和保護(hù)分區(qū)。
例如用戶可用區(qū)位于LBA0扇區(qū)至用戶指定的M扇區(qū),保護(hù)分區(qū)位于M+1扇區(qū)至硬盤實(shí)際物理最大地址Native Max Address所在扇區(qū)。
步驟步驟S2,在BIOS中執(zhí)行Set Max Address命令,保護(hù)M扇區(qū)以上的保護(hù)分區(qū),實(shí)現(xiàn)物理隔離。此時(shí)保護(hù)分區(qū)無法被任何軟件所訪問。執(zhí)行完畢后,硬盤狀態(tài)如圖4b所示。
步驟S3,BIOS繼續(xù)引導(dǎo)硬盤,按正常方式在用戶可用區(qū)(LBA0-M扇區(qū))劃分分區(qū)包括主分區(qū)及邏輯分區(qū)等,并安裝操作系統(tǒng)A(例如Windows98);安裝后硬盤狀態(tài)如圖4c所示。
步驟S4,再次啟動(dòng)計(jì)算機(jī),BIOS調(diào)用此模塊,在用戶選擇下,執(zhí)行SetFEATURES Enable Address Offset Mode命令,重新指定硬盤LBA0扇區(qū)位置到保護(hù)分區(qū)起始位置(M+1)扇區(qū)。執(zhí)行完畢后,硬盤狀態(tài)如圖4d所示。
需要說明的是第一,重新指定LBA0到M+1扇區(qū)位置,是為了不破壞已安裝的操作系統(tǒng)A和最大利用硬盤資源,理論上可以指定到大于M+1扇區(qū)的任何位置。第二,執(zhí)行重新指定LBA0扇區(qū)指令不會(huì)破壞硬盤現(xiàn)有的任何數(shù)據(jù)信息。
步驟S5,在原保護(hù)分區(qū)(新的LBA0扇區(qū))起始位置劃分新的用戶可用區(qū)(LBA0-N扇區(qū))。執(zhí)行完畢后,硬盤狀態(tài)如圖4e所示。
新用戶可用區(qū)N小于原保護(hù)分區(qū)。
步驟S6,重新執(zhí)行Set Max Address命令,保護(hù)新地址N+1扇區(qū)以上的扇區(qū),保護(hù)新的保護(hù)分區(qū)(即原來的用戶可用區(qū)和原保護(hù)分區(qū)的一部分)。執(zhí)行完畢后,硬盤狀態(tài)如圖4f所示。
步驟S7,BIOS繼續(xù)引導(dǎo)硬盤,按正常方式在新的用戶可用區(qū)(新地址LBA0至N扇區(qū))劃分分區(qū)(主分區(qū)及邏輯分區(qū)等),并安裝操作系統(tǒng)B。執(zhí)行完畢后,硬盤狀態(tài)如圖4g所示。
步驟S8,重復(fù)步驟4至步驟7,可以繼續(xù)劃分原保護(hù)分區(qū),并安裝系統(tǒng)C,D,E...。硬盤狀態(tài)如圖4h所示。
每次啟動(dòng)時(shí),可在BIOS中選擇啟動(dòng)系統(tǒng)A或B或C,D.....
如果選擇啟動(dòng)系統(tǒng)A,則由BIOS中模塊保證LBA0設(shè)置在原硬盤LBA0起始位置,并保護(hù)相應(yīng)的保護(hù)分區(qū),從LBA0啟動(dòng)相應(yīng)操作系統(tǒng)A。
如果選擇啟動(dòng)系統(tǒng)B,則由BIOS中模塊保證LBA0設(shè)置在原硬盤(M+1)處,并保護(hù)相應(yīng)的保護(hù)分區(qū),從新的LBA0位置啟動(dòng)相應(yīng)操作系統(tǒng)B。依次類推,在保證設(shè)置LBA0到正確位置,并保護(hù)相應(yīng)的保護(hù)分區(qū)的情況下,可以啟動(dòng)任一系統(tǒng)。
以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種建立硬盤物理分區(qū)的方法,其特征在于包含下述步驟1)計(jì)算機(jī)啟動(dòng),接收物理分區(qū)的劃分信息,所述信息包括硬盤物理分區(qū)的硬盤首部所在的扇區(qū)及該硬盤物理分區(qū)的容量;2)根據(jù)上述接收的硬盤物理分區(qū)的硬盤首部所在的扇區(qū),指定硬盤首部到該扇區(qū);以及3)根據(jù)上述接收的硬盤物理分區(qū)的容量,設(shè)定所述的硬盤首部所在的扇區(qū)開始該容量的硬盤空間為用戶可用區(qū),相應(yīng)的,該硬盤的其它扇區(qū)為該硬盤物理分區(qū)的保護(hù)區(qū);所述該硬盤物理分區(qū)的容量小于該硬盤實(shí)際物理容量。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于所述步驟2)中硬盤首部所在的扇區(qū)是出廠時(shí)已確定的扇區(qū)。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于所述步驟2)的扇區(qū)的指定具體是執(zhí)行ATA指令Set FEATURES Enable Address Offset Mode命令。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于所述步驟3)的用戶可用區(qū)的設(shè)定具體是執(zhí)行ATA指令Set Max Assress。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于執(zhí)行Set Max Address命令后,還執(zhí)行SET MAX SET PASSWORD命令,設(shè)置密碼保護(hù),對(duì)Set MaxAddress命令加鎖;以后,執(zhí)行Set Max Address命令前,結(jié)合原來設(shè)置的密碼,執(zhí)行SET MAXUNLOCK命令,對(duì)Set Max Address命令解鎖。
6.根據(jù)權(quán)利要求3、4或5所述的方法,其特征在于所述的ATA指令在啟動(dòng)時(shí)進(jìn)入BIOS環(huán)境執(zhí)行。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于所述步驟1)之前,還包括選擇是否劃分新的硬盤物理分區(qū);如果是,則進(jìn)入步驟1);如果否,則選擇進(jìn)入某一硬盤物理分區(qū)。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于選擇進(jìn)入某一硬盤物理分區(qū)后,還包括在用戶可用區(qū)劃分邏輯分區(qū),進(jìn)而安裝操作系統(tǒng)。
9.根據(jù)權(quán)利要求7所述的方法,其特征在于所述新的硬盤物理分區(qū)的用戶可用區(qū)位于已建立的硬盤物理分區(qū)的保護(hù)分區(qū)。
10.根據(jù)權(quán)利要求7所述的方法,其特征在于所述新的硬盤物理分區(qū)的硬盤首部位于已建立的硬盤物理分區(qū)的保護(hù)區(qū)的起始扇區(qū)。
全文摘要
本發(fā)明提供一種建立硬盤物理分區(qū)的方法。首先選擇硬盤物理分區(qū)硬盤首部所在的扇區(qū),并從該扇區(qū)開始在硬盤物理容量的范圍內(nèi)建立硬盤的用戶使用區(qū),硬盤的其它部分成為硬盤的保護(hù)區(qū),最終構(gòu)成一個(gè)硬盤物理分區(qū)。進(jìn)入該硬盤物理分區(qū)后,只能訪問硬盤用戶使用區(qū),保護(hù)區(qū)對(duì)于用戶不可見??梢酝ㄟ^選擇硬盤首部所在扇區(qū),在硬盤的不同位置建立不同的硬盤物理分區(qū)。本發(fā)明方法可以在共享同一硬盤的前提下,實(shí)現(xiàn)不同用戶的數(shù)據(jù)在物理上相互隔離,并進(jìn)而建立物理層次上完全獨(dú)立的數(shù)據(jù)存儲(chǔ)空間,使用戶擁有獨(dú)享的運(yùn)行環(huán)境。
文檔編號(hào)G06F21/80GK1831787SQ200510053728
公開日2006年9月13日 申請(qǐng)日期2005年3月10日 優(yōu)先權(quán)日2005年3月10日
發(fā)明者景濤 申請(qǐng)人:聯(lián)想(北京)有限公司