及向磁盤介質(zhì)7保存完畢的寫緩存區(qū)域。能夠保存于非易失性存儲器5的寫緩存區(qū)域以及向磁盤介質(zhì)7保存完畢的寫緩存區(qū)域,其大小、在易失性存儲器4內(nèi)的存儲位置因此時的寫緩存數(shù)據(jù)的存儲狀況以及保存狀況而變動,并不表示固定的區(qū)域。
[0039]非易失性存儲器5是針對易失性存儲器4中所存儲的寫緩存數(shù)據(jù)而成為電源切斷時的保存目的地的存儲器。
[0040]磁盤控制部6對磁盤介質(zhì)7進行數(shù)據(jù)的寫入處理、讀入處理。
[0041]磁盤介質(zhì)7是由能夠進行讀.寫的磁盤介質(zhì)構(gòu)成的存儲器,作為數(shù)據(jù)的存儲區(qū)域而具備:介質(zhì)保存區(qū)域71,其成為來自易失性存儲器4的寫緩存數(shù)據(jù)的保存目的地;以及用戶數(shù)據(jù)存儲區(qū)域72,其存儲通過通常指令處理所寫入的數(shù)據(jù)。
[0042]備用電源8在來自外部的電源被切斷時,代替來自外部的電源而供給電源。備用電源8能夠?qū)D1所示的虛線框內(nèi)的結(jié)構(gòu)(計數(shù)器部2、控制部3、易失性存儲器4和非易失性存儲器5)供給電源。
[0043]電源狀態(tài)檢測部9是對從外部供給到磁盤裝置10的電源的狀態(tài)進行檢測、并向控制部3通知檢測到的電源狀態(tài)的檢測部。
[0044]接下來,對在磁盤裝置10中、使存儲于易失性存儲器4的寫緩存數(shù)據(jù)保存的處理進行說明。在磁盤裝置10中,通過控制部3的控制,在用電源狀態(tài)檢測部9檢測到了電源切斷時,利用備用電源8并使位于易失性存儲器4上且未保存于磁盤介質(zhì)7的未保存寫緩存數(shù)據(jù)保存于非易失性存儲器5。在電源切斷時能夠保存于非易失性存儲器5的數(shù)據(jù)大小,能夠根據(jù)由備用電源8進行的備用供電時間、向非易失性存儲器5的寫入時間、非易失性存儲器5的使用次數(shù)、溫度環(huán)境等來確定。將在電源切斷時能夠保存于非易失性存儲器5的寫緩存數(shù)據(jù)量設(shè)為PLP (Power Loss Protect1n)備份量。
[0045]另外,在圖1中,對于易失性存儲器4的寫緩存區(qū)域(介質(zhì)保存完畢)的寫緩存數(shù)據(jù)直接將保存目的地指示為磁盤介質(zhì)7的介質(zhì)保存區(qū)域71,對于易失性存儲器4的寫緩存區(qū)域的寫緩存數(shù)據(jù)直接將保存目的地指示為非易失性存儲器5,但這是為了容易理解地表示寫緩存數(shù)據(jù)的移動目的地。實際上,由控制部3的控制進行寫緩存數(shù)據(jù)的保存。
[0046]首先,對寫緩存數(shù)據(jù)的存儲處理、寫緩存數(shù)據(jù)量的管理進行說明。
[0047]在磁盤裝置10中,計數(shù)器部2對易失性存儲器4上為保存于磁盤介質(zhì)7保存的未保存寫緩存數(shù)據(jù)的數(shù)據(jù)量(以下,稱為WC(Write Cache)尺寸)進行管理。在由指令信息表31從上位裝置接受寫指令的情況下,任務(wù)控制部32對WC尺寸與PLP備份量進行比較,在即使將新的寫指令的寫緩存數(shù)據(jù)存儲于易失性存儲器4、WC尺寸也不超過PLP備份備量時,開始寫緩存數(shù)據(jù)的向易失性存儲器4的存儲處理。在若將新的寫指令的寫緩存數(shù)據(jù)存儲于易失性存儲器4則WC尺寸會超過PLP備份量的情況下,在任務(wù)控制部32中不進行向易失性存儲器4存儲寫緩存數(shù)據(jù)的存儲處理,指令處理部33使易失性存儲器4的寫緩存數(shù)據(jù)向磁盤介質(zhì)7保存。
[0048]作為寫緩存數(shù)據(jù)的存儲處理,任務(wù)控制部32進行在易失性存儲器4上確保緩沖器高緩的區(qū)域并在易失性存儲器4存儲寫指令的數(shù)據(jù)(寫緩存數(shù)據(jù))的控制。此時,緩存控制部34在緩存表登記緩存控制信息。任務(wù)控制部32進行若在易失性存儲器4完成寫緩存數(shù)據(jù)的存儲則在寫緩存設(shè)定有效的情況下、經(jīng)由主機IF控制部I對上位裝置報告結(jié)束狀態(tài)的控制。
[0049]在在易失性存儲器4中無法完成寫緩存數(shù)據(jù)的存儲的情況下,任務(wù)控制部32定期參照指令信息表31,并對未存儲于易失性存儲器4的寫指令的寫緩存數(shù)據(jù)嘗試向易失性存儲器4存儲寫緩存數(shù)據(jù)。
[0050]通過上述處理,保證了 WC尺寸為PLP備份量以下,在磁盤裝置10中,在電源切斷時,能夠安全且可靠地將易失性存儲器4的數(shù)據(jù)保存于非易失性存儲器5。
[0051]基于流程圖對到此為止的磁盤裝置10的工作進行說明。圖5是表示指令接受以及寫緩存數(shù)據(jù)的存儲處理的流程圖。
[0052]在磁盤裝置10中,若主機IF控制部I從上位裝置接受指令(步驟SI),則在指令信息表31中登記所接受指令的指令信息(步驟S2)。任務(wù)控制部32在接受到的指令不是寫指令的情況下(步驟S3:否),將處理結(jié)束。
[0053]任務(wù)控制部32在接受到的指令為寫指令的情況下(步驟S3:是),確認是否能夠在易失性存儲器4中存儲寫指令的寫緩存數(shù)據(jù),即在緩沖器高緩以及緩存表中是否具有空余,在無法存儲寫緩存數(shù)據(jù)的情況下將處理結(jié)束(步驟S4:否)。
[0054]在能夠存儲寫緩存數(shù)據(jù)的情況下(步驟S4:是),任務(wù)控制部32確認新將寫緩存數(shù)據(jù)存儲于易失性存儲器4的情況下的WC尺寸是否在PLP備份量以上,在WC尺寸比PLP備份量小的情況下(步驟S5:否),確保易失性存儲器4的緩沖器高緩區(qū)域(步驟S6),開始在易失性存儲器4存儲寫指令的寫緩存數(shù)據(jù)(步驟S7)。任務(wù)控制部32持續(xù)進行處理直到寫緩存數(shù)據(jù)的存儲完成(步驟S8:否)。若寫緩存數(shù)據(jù)的存儲完成時(步驟S8:是),緩存控制部34更新緩存表(步驟S9),對于緩存控制信息中的磁盤介質(zhì)保存完畢標志的信息,進行表示為未保存的寫緩存數(shù)據(jù)的標志設(shè)定(步驟S10)。
[0055]返回到步驟S5,在WC尺寸為PLP備份量以上的情況下(步驟S5:是),指令處理部33進行將易失性存儲器4的寫緩存數(shù)據(jù)向磁盤介質(zhì)7保存的處理(步驟Sll)。
[0056]另外,任務(wù)控制部32定期參照指令信息表31 (步驟S12),在指令信息表31中沒有寫指令的信息的情況下將處理結(jié)束(步驟S13:否)。在指令信息表31中有寫指令的信息的情況下(步驟S13:是),任務(wù)控制部32在該寫指令的寫緩存數(shù)據(jù)已存儲于易失性存儲器4時將處理結(jié)束(步驟S14:否),在該寫指令的寫緩存數(shù)據(jù)未存儲于易失性存儲器4時(步驟S14:是),實施上述步驟S4的處理。以后的處理如前所述。
[0057]接下來,對于將易失性存儲器4的寫緩存數(shù)據(jù)向磁盤介質(zhì)7的介質(zhì)保存區(qū)域71保存的處理進行說明。
[0058]在上述圖5的流程圖中,在新存儲寫緩存數(shù)據(jù)時的WC尺寸為PLP備份量以上的情況下(步驟S5:是),指令處理部33進行將易失性存儲器4的寫緩存數(shù)據(jù)向磁盤介質(zhì)7保存的處理(步驟Sll)。具體地說,指令處理部33參照緩存控制部34的緩存表上的磁盤介質(zhì)保存完畢標志,使該標志已清除的未保存寫緩存數(shù)據(jù)保存于磁盤介質(zhì)7的介質(zhì)保存區(qū)域71。
[0059]另外,指令處理部33使所有未保存寫緩存數(shù)據(jù)保存于磁盤介質(zhì)7的介質(zhì)保存區(qū)域71,但并不限定于此,也可以將一部分未保存寫緩存數(shù)據(jù)作為對象,也可以將新存儲寫緩存數(shù)據(jù)時的WC尺寸變得比PLP備份量小的程度的未保存寫緩存數(shù)據(jù)作為對象。在該情況下,在指令處理部33,使未保存寫緩存數(shù)據(jù)向磁盤介質(zhì)7的介質(zhì)保存區(qū)域71保存的處理的次數(shù)增加,但因為減少了向磁盤介質(zhì)7的介質(zhì)保存區(qū)域71保存的未保存寫緩存數(shù)據(jù),所以能夠盡早地將新寫緩存數(shù)據(jù)存儲于易失性存儲器4。
[0060]若使易失性存儲器4的未保存寫緩存數(shù)據(jù)向磁盤介質(zhì)7保存的處理完成,則指令處理部33更新緩存表上的緩存控制信息中的、磁盤介質(zhì)保存完畢標志以及磁盤介質(zhì)保存目的地地址的信息。
[0061]計數(shù)器部2從WC尺寸中減去向磁盤介質(zhì)7保存的未保存寫緩存數(shù)據(jù)的數(shù)據(jù)量。
[0062]在磁盤裝置10中,通過使易失性存儲器4的寫緩存數(shù)據(jù)向磁盤介質(zhì)7保存、能夠減小WC尺寸,因為能夠使新存儲寫緩存數(shù)據(jù)時的WC尺寸比PLP備份量小,所以能夠向易失性存儲器4存儲新的寫緩存數(shù)據(jù)。在PLP備份量的容量比易失性存儲器4的緩存的大小小的情況下,指令處理部33通過使易失性存儲器4的寫緩存數(shù)據(jù)定期地向磁盤介質(zhì)7保存,能夠確保WC尺寸,能夠有效地使用寫緩存功能。
[0063]基于流程圖對到此為止的磁盤裝置10的工作進行說明。圖6是表示使易失性存儲器的寫緩存數(shù)據(jù)向磁盤介質(zhì)保存的處理的流程圖。
[0064]在磁盤裝置10中,指令處理部33參照緩存控制部34的緩存表,從WT緩存項目編號I開始作為對象(步驟S21)。在對象的WT緩存項目編號的寫緩存數(shù)據(jù)有效的情況下(步驟S22:是),指令處理部33根據(jù)緩存控制信息中的磁盤介質(zhì)保存完畢標志的信息來確認易失性存儲器4中的作為對象的寫緩存數(shù)據(jù)是否已