專(zhuān)利名稱(chēng):執(zhí)行格式化的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種執(zhí)行格式化的方法,特別是一種無(wú)須重新起動(dòng)計(jì)算機(jī)就能執(zhí)行格式化的方法。
在現(xiàn)有技術(shù)中,如果使用者想要對(duì)一硬盤(pán)分區(qū)并格式化,其通常的作法如圖1所示,首先執(zhí)行分區(qū)程序(Fdisk)(步驟101),此時(shí)的硬盤(pán)即記錄了分區(qū)信息;執(zhí)行完分區(qū)操作后,重新起動(dòng)計(jì)算機(jī)(Reboot)(步驟102);之后,系統(tǒng)把基本輸入輸出系統(tǒng)驅(qū)動(dòng)參數(shù)數(shù)據(jù)塊(BIOS Drive Parameter Block;BDPB)、DOS驅(qū)動(dòng)參數(shù)數(shù)據(jù)塊(Dos Drive Parameter Block;DDPB)、當(dāng)前目錄結(jié)構(gòu)(Current Directory Structure;CDS)表的新數(shù)據(jù)引入系統(tǒng)內(nèi)存(步驟103);然后執(zhí)行格式化程序(Format),對(duì)硬盤(pán)進(jìn)行格式化,其過(guò)程包含找到dos指針序列(步驟104);通過(guò)dos指針序列找到BDPB表在內(nèi)存的位置(步驟105);及通過(guò)dos指針序列找到DDPB表在內(nèi)存的位置(步驟106);與通過(guò)dos指針序列找到CDS表在內(nèi)存的位置(步驟107);最后執(zhí)行格式化程序(步驟108),從而完成了對(duì)一硬盤(pán)進(jìn)行分區(qū)與格式化的過(guò)程。然而此方法的缺點(diǎn)是不能夠即時(shí)地修改系統(tǒng)內(nèi)存中的相關(guān)信息,而必須通過(guò)重新啟動(dòng)計(jì)算機(jī)來(lái)實(shí)現(xiàn)更新有關(guān)信息的目的,因此工作效率低,且操作過(guò)程無(wú)連續(xù)性。
所以,本發(fā)明目的是提供一種快速、自動(dòng)地進(jìn)行硬盤(pán)分區(qū)、格式化的方法,其中,該方法提供一轉(zhuǎn)接模塊,該轉(zhuǎn)接模塊能夠依據(jù)分區(qū)后的信息,即時(shí)地自動(dòng)修改內(nèi)存中的相關(guān)內(nèi)容,使用者不須重新啟動(dòng)計(jì)算機(jī),即可自動(dòng)更新系統(tǒng)中關(guān)于使用者的新區(qū)的相關(guān)信息,從而直接進(jìn)行格式化硬盤(pán)的操作,提高了工作效率,減少了操作步驟,縮短了分區(qū)與格式化的時(shí)間,中間過(guò)程無(wú)須使用者重新啟動(dòng)計(jì)算機(jī),即可實(shí)現(xiàn)快速、自動(dòng)分區(qū)與格式化。
本發(fā)明的另一個(gè)目的是提供一種轉(zhuǎn)接功能,該功能能夠在執(zhí)行硬盤(pán)分區(qū)操作的同時(shí),即時(shí)且動(dòng)態(tài)地修改內(nèi)存中的有關(guān)記錄信息,使其自動(dòng)記錄分區(qū)與格式化的相關(guān)信息,從而完成快速格式化過(guò)程,并且無(wú)須重新啟動(dòng),保證了工作效率的提升與工作的連貫性。
為了實(shí)現(xiàn)上述目的,按照本發(fā)明的一個(gè)方面,提供一種執(zhí)行格式化的方法,包含下列步驟執(zhí)行分區(qū)操作,將系統(tǒng)硬盤(pán)分成多個(gè)分區(qū);執(zhí)行轉(zhuǎn)接操作,并通過(guò)執(zhí)行系統(tǒng)中斷以獲得DOS指針序列;依據(jù)所述DOS指針序列找到所述分區(qū)操作前的BDPB、DDPB、CDS在系統(tǒng)內(nèi)存的位置;在所述系統(tǒng)內(nèi)存中申請(qǐng)到足夠的地址空間;復(fù)制BDPB、DDPB、CDS表;修改系統(tǒng)內(nèi)存中有關(guān)所述分區(qū)操作的參數(shù);及,對(duì)所述多個(gè)分區(qū)逐一執(zhí)行格式化操作。
下面,參照
本發(fā)明的詳細(xì)內(nèi)容及技術(shù),在附圖中圖1為現(xiàn)有技術(shù)的格式化流程圖;圖2為本發(fā)明的功能模塊方塊圖;圖3為本發(fā)明的格式化流程圖;圖4為本發(fā)明的修改分區(qū)特征參數(shù)的細(xì)節(jié)流程圖;及圖5為本發(fā)明的內(nèi)存表地址分配示意圖。
在本發(fā)明的一個(gè)優(yōu)選實(shí)施例中,把一硬盤(pán)分為多個(gè)分區(qū)(即C區(qū)、D區(qū)、E區(qū)、F區(qū)…),首先執(zhí)行標(biāo)準(zhǔn)的分區(qū)程序,然后執(zhí)行自定義的轉(zhuǎn)接程序,再通過(guò)DOS指針序列找到存放分區(qū)特征信息的BPDB表、DDPB表與CDS表的地址,依據(jù)所得到的相關(guān)信息修改這三個(gè)表的內(nèi)容,然后再將這些表的起始地址重新寫(xiě)入內(nèi)存中的相應(yīng)地址中,替換存放原有分區(qū)信息的BPDB表、DDPB表與CDS表,如此就無(wú)須重新啟動(dòng)計(jì)算機(jī),而使得分區(qū)后的有關(guān)參數(shù)被系統(tǒng)硬盤(pán)保存,所以完成了無(wú)須使用者手動(dòng)重新啟動(dòng)計(jì)算機(jī)的自動(dòng)化分區(qū)過(guò)程,此時(shí),針對(duì)這些分區(qū),分別執(zhí)行多個(gè)格式化(Format)程序,對(duì)每個(gè)分區(qū)進(jìn)行格式化,即完成了整個(gè)格式化的過(guò)程。
現(xiàn)就整個(gè)格式化的過(guò)程詳細(xì)說(shuō)明如下依據(jù)本發(fā)明的功能模塊方塊圖如圖2所示首先對(duì)硬盤(pán)進(jìn)行分區(qū),執(zhí)行分區(qū)程序(步驟201);分區(qū)后,硬盤(pán)上的參數(shù)以及相關(guān)信息發(fā)生相應(yīng)變化,通過(guò)本發(fā)明所提的轉(zhuǎn)接模塊(步驟202),自動(dòng)地修改系統(tǒng)內(nèi)存中有關(guān)分區(qū)的參數(shù)(步驟203);保留這些有關(guān)分區(qū)的信息,以便使系統(tǒng)能夠確認(rèn)分區(qū)操作的結(jié)果,接著執(zhí)行格式化模塊(步驟204),實(shí)現(xiàn)對(duì)分區(qū)后的硬盤(pán)逐一地進(jìn)行格式化。
圖3為本發(fā)明的格式化流程圖,亦即顯示本發(fā)明的轉(zhuǎn)接程序流程,首先執(zhí)行分區(qū)程序(步驟301);對(duì)硬盤(pán)進(jìn)行分區(qū),執(zhí)行自定義轉(zhuǎn)接程序(步驟302);接著通過(guò)執(zhí)行系統(tǒng)中斷獲得DOS指針序列(步驟303);并判斷系統(tǒng)中斷是否執(zhí)行成功(步驟304);如果不成功,則重試(步驟305);如果重試仍然不成功,則失敗退出;如果重試成功,則根據(jù)DOS指針序列找到分區(qū)前的BDPB,DDPB,CDS在內(nèi)存的位置(步驟306);接著在系統(tǒng)內(nèi)存中申請(qǐng)到足夠的地址空間(步驟307),并判斷是否申請(qǐng)成功(步驟308);如果沒(méi)有申請(qǐng)成功,則重試(步驟309);如果重試仍然不成功,則失敗退出;如果重試成功(包括一次申請(qǐng)成功),則在申請(qǐng)到的系統(tǒng)內(nèi)存中復(fù)制BDPB,DDPB,CDS表(步驟310);接著讀取有關(guān)邏輯分區(qū)的相關(guān)特征信息(包括一些有關(guān)分區(qū)的參數(shù)等)(步驟311);根據(jù)以上信息分別對(duì)應(yīng)修改BDPB,DDPB,CDS表的相關(guān)內(nèi)容(步驟312);及修改DOS指針序列,使其指向新的BDPB,DDPB,CDS表的內(nèi)容(步驟313);執(zhí)行DOS指針序列,讀取分區(qū)后新的BDPB,DDPB,CDS表的內(nèi)容(步驟314);最后按照分區(qū)數(shù)逐次執(zhí)行格式化程序(步驟315),自動(dòng)實(shí)現(xiàn)對(duì)每個(gè)分區(qū)的格式化操作,此時(shí)即可完成對(duì)硬盤(pán)進(jìn)行分區(qū)及逐一格式化的自動(dòng)格式化過(guò)程。
其中有關(guān)修改分區(qū)特征參數(shù)的細(xì)節(jié)流程如圖4所示,首先讀取分區(qū)表(步驟401);得到分區(qū)的標(biāo)題(Head),柱面(Cylinder)和扇區(qū)(Sector)信息(步驟402);接著得到有關(guān)分區(qū)的大小以及介質(zhì)類(lèi)型的信息(步驟403);及讀取分區(qū)類(lèi)型相關(guān)的參數(shù)(步驟404);并根據(jù)分區(qū)類(lèi)型,修改引導(dǎo)(Boot)區(qū)相關(guān)參數(shù)(步驟405);最后依據(jù)分區(qū)類(lèi)型,修改文件分配表(File Allocation Table;FAT)區(qū)相關(guān)參數(shù)(步驟406)。
圖5為本發(fā)明的內(nèi)存表地址分配示意圖,以及原有分區(qū)狀態(tài)相關(guān)的BDPB表、DDPB表與CDS表,其起始地址分別存放在內(nèi)存中的三個(gè)不同位置(即地址1,地址2,地址3),通過(guò)指向這些地址的DOS指針序列,讀取到三個(gè)表的內(nèi)容,而分區(qū)后將內(nèi)存中的這三個(gè)表的位置更改為新表所對(duì)應(yīng)的起始地址,使DOS指針序列能夠通過(guò)讀取內(nèi)存中的這三個(gè)位置,獲得指向新的三個(gè)表的起始地址,以便獲得修改后的新的三個(gè)表所分別對(duì)應(yīng)的內(nèi)容。
雖然本發(fā)明以前述的優(yōu)選實(shí)施例進(jìn)行了如上公開(kāi),然其并非用以限定本發(fā)明,任何熟悉本領(lǐng)域技術(shù)的人員,在不脫離本發(fā)明的精神和范圍的情況下,可以進(jìn)行一些修改與潤(rùn)飾,因此本發(fā)明的保護(hù)范圍應(yīng)以后附的權(quán)利要求所限定的范圍為準(zhǔn)。
權(quán)利要求
1.一種執(zhí)行格式化的方法,包含下列步驟執(zhí)行分區(qū)操作,將系統(tǒng)硬盤(pán)分成多個(gè)分區(qū);執(zhí)行轉(zhuǎn)接操作,并通過(guò)執(zhí)行系統(tǒng)中斷以獲得DOS指針序列;依據(jù)所述DOS指針序列找到所述分區(qū)操作前的基本輸入輸出系統(tǒng)驅(qū)動(dòng)參數(shù)數(shù)據(jù)塊(BIOS Drive Parameter Block;BDPB)、DOS驅(qū)動(dòng)參數(shù)數(shù)據(jù)塊(Dos Drive Parameter Block;DDPB)、當(dāng)前目錄結(jié)構(gòu)(Current DirectoryStructure;CDS)在系統(tǒng)內(nèi)存的位置;在所述系統(tǒng)內(nèi)存中申請(qǐng)到足夠的地址空間;復(fù)制BDPB、DDPB、CDS表;修改系統(tǒng)內(nèi)存中有關(guān)所述分區(qū)操作的參數(shù);及對(duì)所述多個(gè)分區(qū)逐一執(zhí)行格式化操作。
2.如權(quán)利要求1所述的執(zhí)行格式化的方法,其中,所述修改系統(tǒng)內(nèi)存中分區(qū)參數(shù)的步驟包含下列步驟讀取一個(gè)所述分區(qū)的特征信息;依據(jù)所述特征信息分別修改對(duì)應(yīng)的BDPB、DDPB、CDS表的內(nèi)容;修改所述DOS指針序列,使其指向新的BDPB、DDPB、CDS表的內(nèi)容;及執(zhí)行所述DOS指針序列,讀取所述分區(qū)操作后的新BDPB、DDPB、CDS表的內(nèi)容。
3.如權(quán)利要求2所述的執(zhí)行格式化的方法,其中,所述依據(jù)特征信息分別修改對(duì)應(yīng)的BDPB、DDPB、CDS表內(nèi)容的步驟包含下列步驟讀取所述分區(qū)的分區(qū)表;得到所述分區(qū)的標(biāo)題(Head)、柱面(Cylinder)和扇區(qū)(Sector)信息;得到所述分區(qū)的大小以及介質(zhì)類(lèi)型的信息;讀取所述分區(qū)的類(lèi)型的參數(shù);依據(jù)所述分區(qū)的類(lèi)型,修改引導(dǎo)(Boot)區(qū)的參數(shù);及依據(jù)所述分區(qū)的類(lèi)型,修改文件分配表(File Allocation Table;FAT)區(qū)的參數(shù)。
全文摘要
一種執(zhí)行格式化的方法。首先把一硬盤(pán)分為多個(gè)分區(qū)(即C區(qū)、D區(qū)、E區(qū)、F區(qū)…)。然后執(zhí)行自定義的轉(zhuǎn)接程序,以根據(jù)使用者設(shè)置的分區(qū)信息來(lái)自動(dòng)修改存放分區(qū)特征信息的BPDB表、DDPB表和CDS表的內(nèi)容。再將這些表的起始地址重新寫(xiě)入系統(tǒng)內(nèi)存的相應(yīng)地址中,以替換存放原有分區(qū)信息的BPDB表、DDPB表和CDS表。這樣就可以在系統(tǒng)內(nèi)存中自動(dòng)地保存分區(qū)后的有關(guān)參數(shù),而無(wú)須重新啟動(dòng)計(jì)算機(jī)。
文檔編號(hào)G06F12/00GK1326140SQ0010871
公開(kāi)日2001年12月12日 申請(qǐng)日期2000年5月30日 優(yōu)先權(quán)日2000年5月30日
發(fā)明者李健, 陳玄同, 林光信 申請(qǐng)人:英業(yè)達(dá)股份有限公司