亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

加快在不連續(xù)頁(yè)面寫入數(shù)據(jù)的計(jì)算機(jī)系統(tǒng)及其方法與流程

文檔序號(hào):12719459閱讀:263來(lái)源:國(guó)知局
加快在不連續(xù)頁(yè)面寫入數(shù)據(jù)的計(jì)算機(jī)系統(tǒng)及其方法與流程

本發(fā)明是關(guān)于一種寫入數(shù)據(jù)的計(jì)算機(jī)系統(tǒng)及其方法,特別是可應(yīng)用硬盤的加快在不連續(xù)頁(yè)面寫入數(shù)據(jù)的計(jì)算機(jī)系統(tǒng)及其方法。



背景技術(shù):

隨著科技進(jìn)步、電子產(chǎn)業(yè)的蓬勃發(fā)展,人們對(duì)資訊傳遞的需求量不斷增加,為符合人們的需求,當(dāng)前計(jì)算機(jī)設(shè)備的性能也隨的提升,而計(jì)算機(jī)設(shè)備需與相關(guān)軟件相互配合才能運(yùn)作,例如操作系統(tǒng)、游戲軟件及影音互動(dòng)軟件,而前述軟件在運(yùn)作時(shí)需將數(shù)據(jù)儲(chǔ)存在計(jì)算機(jī)設(shè)備的硬盤(hard disk drive)中,因此,硬盤在人們的生活中扮演的舉足輕重的角色。

習(xí)知的硬盤的物理結(jié)構(gòu)包含讀寫頭、碟片、主馬達(dá)、副馬達(dá)、主控芯片與排線等零件;讀寫頭在碟片表面上畫出與碟片同心的圓形磁軌,此磁軌可等分為數(shù)個(gè)弧段,此些弧段為硬盤的磁區(qū),而讀寫頭可存取磁區(qū)中的儲(chǔ)存數(shù)據(jù)。在讀取或?qū)懭霑r(shí),由主馬達(dá)帶動(dòng)碟片旋轉(zhuǎn),并由副馬達(dá)帶動(dòng)讀寫頭到相對(duì)應(yīng)的碟片位置,此時(shí)讀寫頭的磁感線圈感應(yīng)碟片表面上的磁性,從而得到磁區(qū)中的儲(chǔ)存數(shù)據(jù)或可將數(shù)據(jù)寫入磁區(qū)中。

然而,由于習(xí)知硬盤的讀寫頭在讀取相關(guān)磁區(qū)時(shí)必須往復(fù)移動(dòng),來(lái)往于碟片上不同的磁區(qū),所以讀寫頭的往復(fù)會(huì)有不必要的耗時(shí),特別是在寫入碟片上的不連續(xù)磁區(qū)位置時(shí),讀寫頭在相關(guān)磁區(qū)之間來(lái)回往復(fù)移動(dòng)造成過(guò)長(zhǎng)的寫入時(shí)間。



技術(shù)實(shí)現(xiàn)要素:

有鑒于此,本發(fā)明提出一種加快在不連續(xù)頁(yè)面寫入數(shù)據(jù)的計(jì)算機(jī)系統(tǒng)及其方法。

在一實(shí)施例中,一種加快在不連續(xù)頁(yè)面寫入數(shù)據(jù)的計(jì)算機(jī)系統(tǒng),包含硬盤、存儲(chǔ)器及處理器。硬盤包含讀寫頭及一磁軌,且磁軌包含至少一區(qū)塊,每一個(gè)區(qū)塊包含連續(xù)的多個(gè)第一頁(yè)面;存儲(chǔ)器包含多個(gè)第二頁(yè)面,此些第二頁(yè)面的寫入速度大于硬盤的第一頁(yè)面中的不連續(xù)頁(yè)面的寫入速度;處理器執(zhí)行多個(gè)寫入命令,每一寫入命令包含一寫入數(shù)據(jù)及一寫入地址,寫入地址對(duì)應(yīng)于第一頁(yè)面中的一寫入頁(yè)面,處理器根據(jù)各寫入地址判斷寫入頁(yè)面是否連續(xù),若寫入頁(yè)面不連續(xù),處理器根據(jù)寫入地址讀取對(duì)應(yīng)的區(qū)塊,以將第一頁(yè)面的每一儲(chǔ)存數(shù)據(jù)寫入第二頁(yè)面,且處理器根據(jù)寫入地址將每一寫入數(shù)據(jù)寫入第二頁(yè)面,于每一寫入數(shù)據(jù)寫入存儲(chǔ)器后,處理器將每一第二頁(yè)面的儲(chǔ)存數(shù)據(jù)寫入第一頁(yè)面。

在一實(shí)施例中,一種加快在不連續(xù)頁(yè)面寫入數(shù)據(jù)的方法適于一硬盤,硬盤包含讀寫頭及磁區(qū),磁區(qū)包含至少一區(qū)塊,每一個(gè)區(qū)塊包含連續(xù)的多個(gè)第一頁(yè)面,此些第一頁(yè)面中的不連續(xù)頁(yè)面的寫入速度小于一存儲(chǔ)器的多個(gè)第二頁(yè)面的寫入速度,前述加快在不連續(xù)頁(yè)面寫入數(shù)據(jù)的方法包含執(zhí)行多個(gè)寫入命令,每一寫入命令包含一寫入數(shù)據(jù)及一寫入地址,寫入地址對(duì)應(yīng)于第一頁(yè)面中的一寫入頁(yè)面;根據(jù)寫入地址判斷寫入頁(yè)面是否連續(xù);若寫入頁(yè)面不連續(xù),根據(jù)寫入地址讀取區(qū)塊;將區(qū)塊中的第一頁(yè)面的儲(chǔ)存數(shù)據(jù)寫入存儲(chǔ)器的第二頁(yè)面;根據(jù)寫入地址將每一寫入數(shù)據(jù)寫入第二頁(yè)面;及將存儲(chǔ)器的第二頁(yè)面的儲(chǔ)存數(shù)據(jù)寫入硬盤的第一頁(yè)面。

綜上所述,根據(jù)本發(fā)明的加快在不連續(xù)頁(yè)面寫入數(shù)據(jù)的方法及計(jì)算機(jī)系統(tǒng)的一實(shí)施例,在將數(shù)據(jù)寫入硬盤中寫入頁(yè)面時(shí),處理器可將不連續(xù)的寫入頁(yè)面所在區(qū)塊中連續(xù)的儲(chǔ)存數(shù)據(jù)先寫入存儲(chǔ)器中的第二頁(yè)面,并將每一個(gè)欲寫入硬盤的數(shù)據(jù)寫入第二頁(yè)面中對(duì)應(yīng)的頁(yè)面,相較硬盤中的儲(chǔ)存數(shù)據(jù),第二頁(yè)面中包含已更新或未更新的儲(chǔ)存數(shù)據(jù),此時(shí)處理器再將第二頁(yè)面中全數(shù)或部分的儲(chǔ)存數(shù)據(jù)寫入硬盤的前述區(qū)塊中,使區(qū)塊中的頁(yè)面依其地址可被連續(xù)地寫入,如此便節(jié)省由寫入不連續(xù)頁(yè)面造成過(guò)長(zhǎng)的延遲時(shí)間,進(jìn)而提升硬盤的寫入速度。

附圖說(shuō)明

圖1為根據(jù)本發(fā)明的計(jì)算機(jī)系統(tǒng)的一實(shí)施例的功能方塊圖。

圖2為圖1的硬盤的一實(shí)施例的構(gòu)件示意圖。

圖3A為圖1的第一頁(yè)面及第二頁(yè)面的儲(chǔ)存數(shù)據(jù)示意圖(一)。

圖3B為圖1的第一頁(yè)面及第二頁(yè)面的儲(chǔ)存數(shù)據(jù)示意圖(二)。

圖3C為圖1的第一頁(yè)面及第二頁(yè)面的儲(chǔ)存數(shù)據(jù)示意圖(三)。

圖3D為圖1的第一頁(yè)面及第二頁(yè)面的儲(chǔ)存數(shù)據(jù)示意圖(四)。

圖4A為圖1的第一頁(yè)面包含不連續(xù)的寫入頁(yè)面的第一實(shí)施例的示意圖。

圖4B為圖1的第一頁(yè)面包含不連續(xù)的寫入頁(yè)面的第二實(shí)施例的示意圖。

圖4C為圖1的第一頁(yè)面包含不連續(xù)的寫入頁(yè)面的第三實(shí)施例的示意圖。

圖4D為圖1的第一頁(yè)面包含連續(xù)的寫入頁(yè)面的一實(shí)施例的示意圖。

圖5為根據(jù)本發(fā)明的加快在不連續(xù)頁(yè)面寫入數(shù)據(jù)的方法的一實(shí)施例的流程。

【符號(hào)說(shuō)明】

1 硬盤

11 讀寫頭

12 磁軌

121 區(qū)塊

121A~121J 第一頁(yè)面

2 處理器

3 存儲(chǔ)器

31A~31J 第二頁(yè)面

具體實(shí)施方式

圖1為根據(jù)本發(fā)明的計(jì)算機(jī)系統(tǒng)的一實(shí)施例的功能方塊圖,圖2為圖1的硬盤1的一實(shí)施例的構(gòu)件示意圖,請(qǐng)同時(shí)參照?qǐng)D1圖及圖2,計(jì)算機(jī)系統(tǒng) 包含硬盤1、處理器2及存儲(chǔ)器3,且處理器2耦接于硬盤1及存儲(chǔ)器3。如圖2所示,硬盤1包含讀寫頭11及具磁區(qū)的磁軌12,讀寫頭11用以在磁軌12上寫入或讀取數(shù)據(jù)。磁軌12的磁區(qū)包含至少一區(qū)塊,而每一個(gè)區(qū)塊包含連續(xù)的多個(gè)頁(yè)面,以儲(chǔ)存數(shù)據(jù)。如圖1所示,以硬盤1的磁區(qū)包含一個(gè)區(qū)塊121為例,區(qū)塊121包含連續(xù)的多個(gè)第一頁(yè)面121A~121J,也就是說(shuō),第一頁(yè)面121A~121J所對(duì)應(yīng)的地址為連續(xù),舉例來(lái)說(shuō),以8位元的地址為例,假設(shè)第一頁(yè)面121A對(duì)應(yīng)的地址為0x00,且地址增加量(increment)為0x02,第一頁(yè)面121A~121J分別對(duì)應(yīng)的地址的16進(jìn)制表示法為0x00、0x02、0x04、0x06、0x08、0x0a、0x0c、0xe、0x10及0x12。

存儲(chǔ)器3用以儲(chǔ)存數(shù)據(jù),如圖1的示例,存儲(chǔ)器3包含可儲(chǔ)存數(shù)據(jù)的多個(gè)第二頁(yè)面31A~31J,且第二頁(yè)面31A~31J的寫入速度大于第一頁(yè)面121A~121J中的不連續(xù)頁(yè)面的寫入速度,即,將欲儲(chǔ)存數(shù)據(jù)寫入第二頁(yè)面31A~31J的時(shí)間小于前述欲儲(chǔ)存數(shù)據(jù)寫入第一頁(yè)面121A~121J中的不連續(xù)頁(yè)面的時(shí)間,因硬盤1的讀寫頭11需來(lái)回往復(fù)于第一頁(yè)面121A~121J中的不連續(xù)頁(yè)面之間。在實(shí)作上,存儲(chǔ)器3可為靜態(tài)隨機(jī)存取存儲(chǔ)器(static random-access memory;SRAM)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(dynamic random-access memory;DRAM)、或快閃存儲(chǔ)器(flash memory)的任何寫入速度大于在硬盤1的不連續(xù)頁(yè)面寫入數(shù)據(jù)的儲(chǔ)存裝置。

處理器2用以執(zhí)行多個(gè)寫入命令,此些寫入命令可由電性連接于處理器2的前級(jí)電路產(chǎn)生,或由處理器2自身產(chǎn)生。每一個(gè)寫入命令包含寫入地址及對(duì)應(yīng)于寫入地址的寫入數(shù)據(jù),而寫入地址對(duì)應(yīng)于硬盤1的一區(qū)塊的頁(yè)面;基此,以第1圖為例,若硬盤1接收來(lái)自處理器2的寫入地址及寫入數(shù)據(jù),且寫入地址對(duì)應(yīng)于區(qū)塊121的第一頁(yè)面121A~121J,寫入數(shù)據(jù)即可被寫入第一頁(yè)面121A~121J中的一寫入頁(yè)面。在實(shí)作上,處理器2可藉由軟件或固件結(jié)合應(yīng)用程序接口(Application Programming Interface;API)來(lái)存取硬盤1,并以主線連接于處理器2與硬盤1之間,使處理器2與硬盤1得以溝通,以進(jìn)行主線處理(bus transaction);而處理器2可為中央處理器(CPU)、微控制器(MCU)或以特殊應(yīng)用IC(Application-Specific IC;ASIC)實(shí)現(xiàn)的控制電路。

在處理器2執(zhí)行多個(gè)寫入命令時(shí),由于硬盤1的讀寫頭11將數(shù)據(jù)寫入磁軌12的不連續(xù)頁(yè)面所需的時(shí)間大于寫入連續(xù)頁(yè)面所需的時(shí)間,處理器2先根據(jù)寫入地址判斷寫入頁(yè)面為連續(xù)或不連續(xù),若寫入頁(yè)面為連續(xù),處理器2將寫入數(shù)據(jù)直接寫入硬盤1中以執(zhí)行寫入命令;反之,若寫入頁(yè)面為不連續(xù),處理器2可選擇以加速模式執(zhí)行寫入命令,以節(jié)省因?qū)懭胗脖P的不連續(xù)頁(yè)面造成的延遲時(shí)間。

在加速模式中,處理器2根據(jù)寫入地址讀取寫入頁(yè)面所在的區(qū)塊中的頁(yè)面,以區(qū)塊121為例,處理器2將區(qū)塊121的全部第一頁(yè)面121A~121J的儲(chǔ)存數(shù)據(jù)讀出并寫入存儲(chǔ)器3的第二頁(yè)面31A~31J中;并且,處理器2根據(jù)寫入地址一一將寫入數(shù)據(jù)寫入存儲(chǔ)器3的第二頁(yè)面31A~31J中的對(duì)應(yīng)頁(yè)面。例如,將欲寫入第一頁(yè)面121A的寫入數(shù)據(jù),寫入第二頁(yè)面31A中;將欲寫入第一頁(yè)面121E的寫入數(shù)據(jù),寫入第二頁(yè)面31E中。于全部寫入數(shù)據(jù)均被寫入存儲(chǔ)器3之后,處理器2再將第二頁(yè)面31A~31J的儲(chǔ)存數(shù)據(jù)寫入硬盤1的第一頁(yè)面121A~121J中。于是,硬盤1的第一頁(yè)面121A~121J中,便存在已更新寫入的所有寫入數(shù)據(jù)。然而,因第一頁(yè)面121A~121J是連續(xù)的,因此在最后將第二頁(yè)面31A~31J的儲(chǔ)存數(shù)據(jù)一次寫入硬盤1的第一頁(yè)面121A~121J時(shí),讀寫頭11無(wú)需來(lái)回往復(fù)移動(dòng),因此相對(duì)于先前技術(shù)可減少寫入時(shí)間。

在本實(shí)施例中,第一頁(yè)面121A~121J與第二頁(yè)面31A~31J之間具有一對(duì)一映射關(guān)系,處理器2根據(jù)前述一對(duì)一映射關(guān)系將第一頁(yè)面121A~121J的儲(chǔ)存數(shù)據(jù)讀出,并寫入第二頁(yè)面31A~31J。并且,于寫入數(shù)據(jù)寫入存儲(chǔ)器3之后,處理器2再根據(jù)前述一對(duì)一映射關(guān)系將第二頁(yè)面31A~31J的儲(chǔ)存數(shù)據(jù)寫回第一頁(yè)面121A~121J。在此,圖1是以第二頁(yè)面31A~31J連續(xù)為例,但本發(fā)明不以此為限。

在一實(shí)施例中,第二頁(yè)面31A~31J可為不連續(xù),也就是說(shuō),對(duì)應(yīng)于第二頁(yè)面31A~31J的地址可為不連續(xù)。在此情形下,處理器2根據(jù)前述一對(duì)一映射關(guān)系將連續(xù)的第一頁(yè)面121A~121J的儲(chǔ)存數(shù)據(jù)讀出并寫入不連續(xù)的第二頁(yè)面31A~31J,并且,于寫入數(shù)據(jù)均寫入存儲(chǔ)器3之后,處理器2再根據(jù)前述一對(duì)一映射關(guān)系將不連續(xù)的第二頁(yè)面31A~31J的儲(chǔ)存數(shù)據(jù)讀出并寫入連續(xù)的第一頁(yè)面121A~121J。換言之,只要處理器2可以取得第一頁(yè)面121A~121J 與第二頁(yè)面31A~31J之間的一對(duì)一映射關(guān)系(如通過(guò)查表方式),第二頁(yè)面31A~31J也可以分散在存儲(chǔ)器3的多個(gè)區(qū)域而其地址不為連續(xù)。

圖3A至圖3D為圖1的第一頁(yè)面121A~121J及第二頁(yè)面31A~31J的儲(chǔ)存數(shù)據(jù)在處理器2以加速模式執(zhí)行寫入命令時(shí)的數(shù)據(jù)更新過(guò)程的示意圖,將以六筆寫入數(shù)據(jù)為例說(shuō)明。如圖3A所示,在未執(zhí)行任何動(dòng)作的前,第一頁(yè)面121A~121J包含儲(chǔ)存數(shù)據(jù),而第二頁(yè)面31A~31J不具有如第一頁(yè)面121A~121J的儲(chǔ)存數(shù)據(jù)。如圖3B所示,在加速模式中,處理器2將第一頁(yè)面121A~121J的儲(chǔ)存數(shù)據(jù)一對(duì)一對(duì)應(yīng)寫入第二頁(yè)面31A~31J中,使第二頁(yè)面31A~31J的儲(chǔ)存數(shù)據(jù)與第一頁(yè)面121A~121J的儲(chǔ)存數(shù)據(jù)相同。接著,如圖3C所示,處理器2將六筆寫入數(shù)據(jù)“4”、“1”、“3”、“13”、“4”及“2”分別寫入對(duì)應(yīng)于六個(gè)寫入地址的第二頁(yè)面31A、31C、31D、31H、31I及31J而覆蓋原數(shù)據(jù)。最后,如圖3D所示,處理器2將第二頁(yè)面31A~31J的儲(chǔ)存數(shù)據(jù)一對(duì)一對(duì)應(yīng)寫入第一頁(yè)面121A~121J,第一頁(yè)面121A、121C、121D、121H、121I及121J中的儲(chǔ)存數(shù)據(jù)分別被更新為“4”、“1”、“3”、“13”、“4”及“2”,而其他第一頁(yè)面121B、121E、121F、121G則維持存有原本的儲(chǔ)存數(shù)據(jù)。

在本實(shí)施例中,處理器2在判斷寫入頁(yè)面是否連續(xù)時(shí),處理器2判斷寫入地址對(duì)應(yīng)的寫入頁(yè)面的任二者之間是否包含任一其他第一頁(yè)面。若判斷結(jié)果為是,處理器2則判斷寫入頁(yè)面為不連續(xù)。圖4A至圖4D為圖1的第一頁(yè)面121A~121J包含不連續(xù)的寫入頁(yè)面及連續(xù)的寫入頁(yè)面的四個(gè)實(shí)施例的示意圖。以寫入頁(yè)面對(duì)應(yīng)至區(qū)塊121為例,其中灰色的第一頁(yè)面表示寫入頁(yè)面,如圖4A所示,兩寫入頁(yè)面之間包含其他非欲寫入數(shù)據(jù)的第一頁(yè)面121B、121D、121F、121H。如圖4B所示,兩寫入頁(yè)面(對(duì)應(yīng)第一頁(yè)面121D、121F;對(duì)應(yīng)第一頁(yè)面121H、121J)之間包含其他非欲寫入數(shù)據(jù)的第一頁(yè)面121E、121I。如圖4C所示,兩寫入頁(yè)面(對(duì)應(yīng)第一頁(yè)面121D、121F)之間包含第一頁(yè)面121E。如圖4D所示,對(duì)應(yīng)至第一頁(yè)面121C的寫入頁(yè)面與對(duì)應(yīng)至第一頁(yè)面121G的寫入頁(yè)面之間未包含任何頁(yè)面?;?,由圖4A至圖4D的示例可以得知,只要兩個(gè)寫入頁(yè)面之間包含任一其他第一頁(yè)面即表示寫入頁(yè)面為不連續(xù)。

再者,在處理器2判斷寫入頁(yè)面是否連續(xù)之前,處理器2先根據(jù)寫入地 址來(lái)判斷寫入頁(yè)面的數(shù)量是否大于或等于欲寫入?yún)^(qū)塊中的頁(yè)面的數(shù)量的二分之一。以圖1為例,假設(shè)寫入頁(yè)面位于區(qū)塊121,則處理器2判斷位于區(qū)塊121中的寫入頁(yè)面的數(shù)量是否大于或等于第一頁(yè)面121A~121J的數(shù)量的二分之一(即五),若位于區(qū)塊121中的寫入頁(yè)面的數(shù)量大于或等于五,處理器2始判斷寫入地址之間是否連續(xù)。反之,若位于區(qū)塊121中的寫入頁(yè)面的數(shù)量小于五,不論寫入頁(yè)面為連續(xù)或不連續(xù),處理器2將寫入數(shù)據(jù)直接寫入第一頁(yè)面121A~121J中的寫入頁(yè)面。以處理器2欲執(zhí)行五個(gè)寫入命令為例,假設(shè)其中的三個(gè)寫入命令的寫入頁(yè)面位于區(qū)塊121,因?qū)懭腠?yè)面的數(shù)量小于五,此時(shí)處理器2會(huì)直接逐個(gè)將欲寫入數(shù)據(jù)寫入前述的三個(gè)寫入頁(yè)面,而不判斷三個(gè)寫入頁(yè)面是否連續(xù)。再者,假設(shè)前述的五個(gè)寫入命令的寫入頁(yè)面均位于區(qū)塊121,因?qū)懭腠?yè)面的數(shù)量等于五,此時(shí)處理器2再進(jìn)一步判斷五個(gè)寫入頁(yè)面是否連續(xù)。

在一實(shí)施例中,寫入頁(yè)面位于第一頁(yè)面121A~121J中的兩第一頁(yè)面的范圍間,以寫入頁(yè)面位于區(qū)塊121為例,當(dāng)處理器2判斷寫入頁(yè)面的數(shù)量大于或等于五且寫入頁(yè)面不連續(xù)時(shí),處理器2讀取兩第一頁(yè)面的范圍間的儲(chǔ)存數(shù)據(jù),并根據(jù)前述一對(duì)一映射關(guān)系將兩第一頁(yè)面的范圍間的儲(chǔ)存數(shù)據(jù)寫入第二頁(yè)面中的多個(gè)對(duì)應(yīng)頁(yè)面,也就是說(shuō),處理器2可根據(jù)寫入地址動(dòng)態(tài)地將區(qū)塊121中部分的第一頁(yè)面中的儲(chǔ)存數(shù)據(jù)寫入存儲(chǔ)器3。

舉例來(lái)說(shuō),以寫入地址對(duì)應(yīng)于第一頁(yè)面121B、121D、121E、121G、121I為例,在此情形下,寫入頁(yè)面位于第一頁(yè)面121B與第一頁(yè)面121I的范圍間,處理器2將第一頁(yè)面121B~121I的儲(chǔ)存數(shù)據(jù)讀出,并根據(jù)前述一對(duì)一映射關(guān)系將第一頁(yè)面121B~121I的儲(chǔ)存數(shù)據(jù)寫入第二頁(yè)面31A~31J中對(duì)應(yīng)的頁(yè)面,例如第二頁(yè)面31B~31I,或是分散在存儲(chǔ)器3的多個(gè)區(qū)域而其地址不為連續(xù)。

接著,處理器2根據(jù)寫入地址一一將寫入數(shù)據(jù)寫入存儲(chǔ)器3的第二頁(yè)面31B~31I中的對(duì)應(yīng)頁(yè)面,例如,將欲寫入第一頁(yè)面121B的寫入數(shù)據(jù)寫入第二頁(yè)面31B中,將欲寫入第一頁(yè)面121D的寫入數(shù)據(jù)寫入第二頁(yè)面31D中。于全部寫入數(shù)據(jù)均被寫入存儲(chǔ)器3之后,處理器2再根據(jù)前述一對(duì)一映射關(guān)系將第二頁(yè)面31A~31J中對(duì)應(yīng)于兩第一頁(yè)面121B、121I的范圍間的儲(chǔ)存數(shù)據(jù)寫回第一頁(yè)面121A~121J中兩第一頁(yè)面121B、121I的范圍間,即處理器2 將第二頁(yè)面31B~31I的儲(chǔ)存數(shù)據(jù)寫回第一頁(yè)面121B~121I,例如將第二頁(yè)面31B的儲(chǔ)存數(shù)據(jù)寫入第一頁(yè)面121B。于是,硬盤1的第一頁(yè)面121B~121I中便存在已更新寫入的所有寫入數(shù)據(jù)。然而,因第一頁(yè)面121B~121I是連續(xù)的,因此在最后將第二頁(yè)面31B~31I的儲(chǔ)存數(shù)據(jù)一次寫入硬盤1的第一頁(yè)面121B~121I時(shí),讀寫頭11無(wú)需來(lái)回往復(fù)移動(dòng),因此相對(duì)于先前技術(shù)可減少寫入時(shí)間。

圖5為根據(jù)本發(fā)明的加快在不連續(xù)頁(yè)面寫入數(shù)據(jù)的方法的一實(shí)施例的流程圖,請(qǐng)同時(shí)參照?qǐng)D1及圖5,以寫入命令包含的寫入頁(yè)面對(duì)應(yīng)至區(qū)塊121為例,處理器2執(zhí)行多個(gè)寫入命令,處理器2計(jì)數(shù)寫入頁(yè)面的數(shù)量(步驟S11),且處理器2判斷寫入頁(yè)面的數(shù)量是否大于或等于第一頁(yè)面121A~121J的數(shù)量的二分之一(步驟S12)以決定是否執(zhí)行步驟S14,若判斷結(jié)果為否,處理器2根據(jù)寫入地址將寫入數(shù)據(jù)寫入第一頁(yè)面121A~121J中的寫入頁(yè)面(步驟S13),即處理器2不執(zhí)行加速模式,若判斷結(jié)果為是,處理器2根據(jù)寫入命令的寫入地址判斷寫入頁(yè)面是否連續(xù)(步驟S14)。在執(zhí)行步驟S14之后,若寫入頁(yè)面連續(xù)(即,判斷結(jié)果為是),處理器2執(zhí)行步驟S13,即處理器2不執(zhí)行加速模式,若寫入頁(yè)面不連續(xù)(即,判斷結(jié)果為否),處理器2根據(jù)寫入地址讀取區(qū)塊121的第一頁(yè)面121A~121J(步驟S15),以將第一頁(yè)面121A~121J的儲(chǔ)存數(shù)據(jù)寫入存儲(chǔ)器3的第二頁(yè)面31A~31J(步驟S16),于執(zhí)行步驟S16之后,處理器2根據(jù)寫入地址將每一寫入數(shù)據(jù)寫入第二頁(yè)面31A~31J中(步驟S17),最后,處理器2再將第二頁(yè)面31A~31J的儲(chǔ)存數(shù)據(jù)寫入第一頁(yè)面121A~121J中(步驟S18)。

在步驟S14中,處理器2判斷寫入地址對(duì)應(yīng)的寫入頁(yè)面的任二者之間是否包含任一其他第一頁(yè)面,若判斷結(jié)果為是,則處理器2判斷寫入頁(yè)面不連續(xù),并執(zhí)行步驟S15。

在一些實(shí)施態(tài)樣中,存儲(chǔ)器3的第二頁(yè)面31A~31J與第二頁(yè)面31A~31J之間具有一對(duì)一映射關(guān)系,且第二頁(yè)面31A~31J為不連續(xù),基此,在步驟S16中,處理器2根據(jù)前述一對(duì)一映射關(guān)系將第一頁(yè)面121A~121J的儲(chǔ)存數(shù)據(jù)寫入不連續(xù)的第二頁(yè)面31A~31J;在步驟S18中,處理器2亦根據(jù)相同的一對(duì)一映射關(guān)系將不連續(xù)的第二頁(yè)面31A~31J寫入第一頁(yè)面121A~121J。

在一實(shí)施例中,若寫入頁(yè)面的數(shù)量大于或等于五,且寫入頁(yè)面位于第一頁(yè)面121A~121J中的兩第一頁(yè)面121B、121I的范圍間,于步驟S15中,處理器2讀取兩第一頁(yè)面121B、121I的范圍間(即,第一頁(yè)面121B~121I)的儲(chǔ)存數(shù)據(jù);于步驟S16中,處理器2根據(jù)前述一對(duì)一映射關(guān)系將兩第一頁(yè)面121B、121I的范圍間的儲(chǔ)存數(shù)據(jù)寫入第二頁(yè)面31A~31J中的連續(xù)或不連續(xù)的頁(yè)面中,例如第二頁(yè)面31B~31I;于步驟S18中,處理器2根據(jù)前述一對(duì)一映射關(guān)系將第二頁(yè)面31A~31J中對(duì)應(yīng)于兩第一頁(yè)面121B、121I的范圍間的儲(chǔ)存數(shù)據(jù)寫入兩第一頁(yè)面121B~121I的范圍間而覆蓋原數(shù)據(jù)。

綜上所述,根據(jù)本發(fā)明的加快在不連續(xù)頁(yè)面寫入數(shù)據(jù)的方法及計(jì)算機(jī)系統(tǒng)的一實(shí)施例,在將數(shù)據(jù)寫入硬盤中寫入頁(yè)面時(shí),處理器可將不連續(xù)的寫入頁(yè)面所在區(qū)塊中連續(xù)的儲(chǔ)存數(shù)據(jù)先寫入存儲(chǔ)器中的第二頁(yè)面,并將每一個(gè)欲寫入硬盤的數(shù)據(jù)寫入第二頁(yè)面中對(duì)應(yīng)的頁(yè)面,相較硬盤中的儲(chǔ)存數(shù)據(jù),第二頁(yè)面中包含已更新或未更新的儲(chǔ)存數(shù)據(jù),此時(shí)處理器再將第二頁(yè)面中全數(shù)或部分的儲(chǔ)存數(shù)據(jù)寫入硬盤的前述區(qū)塊中,使區(qū)塊中的頁(yè)面依其地址可被連續(xù)地寫入,如此便節(jié)省由寫入不連續(xù)頁(yè)面造成過(guò)長(zhǎng)的延遲時(shí)間,進(jìn)而提升硬盤的寫入速度。

雖然本發(fā)明已以實(shí)施例揭露如上然其并非用以限定本發(fā)明,任何所屬技術(shù)領(lǐng)域中的技術(shù)人員,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可作些許的更動(dòng)與潤(rùn)飾,故本發(fā)明的保護(hù)范圍當(dāng)視后附的權(quán)利要求書所界定者為準(zhǔn)。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1